LMCAS
Lamina Computer Algebra System
载入中...
搜索中...
未找到
ode_support.hpp
浏览该文件的文档.
1#pragma once
2
4
5namespace LMCAS {
6
7double try_eval_double(const std::shared_ptr<SymbolicExpr>& expression);
8
10 const std::shared_ptr<SymbolicExpr>& expr,
11 const std::string& x,
12 const std::string& y,
14 const std::string& operation);
15
17 const std::shared_ptr<SymbolicExpr>& first,
18 const std::shared_ptr<SymbolicExpr>& second,
19 const std::string& x,
20 const std::string& y,
22 const std::string& operation);
23
25 ODESolution solution,
26 ODEType expected_method,
27 const std::string& operation);
28
30 const std::string& x,
31 const std::string& y,
33 const std::string& operation);
34
36 const std::vector<double>& coefficients,
37 std::size_t minimum_size,
38 std::size_t maximum_size,
39 const std::string& operation);
40
42 const std::shared_ptr<SymbolicExpr>& first,
43 const std::shared_ptr<SymbolicExpr>& second,
44 const std::shared_ptr<SymbolicExpr>& third,
45 const std::string& x,
47 const std::string& operation);
48
50 const std::shared_ptr<SymbolicExpr>& p,
51 const std::shared_ptr<SymbolicExpr>& q,
52 const std::shared_ptr<SymbolicExpr>& x0,
53 const std::string& x,
55 const std::string& operation);
56
57} // namespace LMCAS
Result< void > validate_ode_expr_var_pair(const std::shared_ptr< SymbolicExpr > &expr, const std::string &x, const std::string &y, ComputationContext &context, const std::string &operation)
ODESolutionResult wrap_ode_solution(ODESolution solution, ODEType expected_method, const std::string &operation)
const std::vector< Polynomial< BigInt > > const BigInt ComputationContext & context
ODEType
ODE 类型枚举,标识方程所属的求解类别.
double try_eval_double(const std::shared_ptr< SymbolicExpr > &expression)
尝试将表达式求值为 double。
Result< void > validate_ode_three_expr_one_var(const std::shared_ptr< SymbolicExpr > &first, const std::shared_ptr< SymbolicExpr > &second, const std::shared_ptr< SymbolicExpr > &third, const std::string &x, ComputationContext &context, const std::string &operation)
Result< void > validate_numeric_ode_coefficients(const std::vector< double > &coefficients, std::size_t minimum_size, std::size_t maximum_size, const std::string &operation)
Result< void > validate_ode_variables(const std::string &x, const std::string &y, ComputationContext &context, const std::string &operation)
Result< void > validate_ode_two_expr_point(const std::shared_ptr< SymbolicExpr > &p, const std::shared_ptr< SymbolicExpr > &q, const std::shared_ptr< SymbolicExpr > &x0, const std::string &x, ComputationContext &context, const std::string &operation)
Result< void > validate_ode_pair_var_pair(const std::shared_ptr< SymbolicExpr > &first, const std::shared_ptr< SymbolicExpr > &second, const std::string &x, const std::string &y, ComputationContext &context, const std::string &operation)
Result< ODESolution > ODESolutionResult
统一 ODE 求解引擎:分类,分派,多种求解方法.