LMCAS
Lamina Computer Algebra System
载入中...
搜索中...
未找到
LMCAS::anonymous_namespace{solver_assumptions.cpp} 命名空间参考

函数

static bool is_integer_value (double v)
static bool try_get_numeric_value (const std::shared_ptr< SymbolicExpr > &expr, double &out_value)
 从解表达式提取 double 数值。

函数说明

◆ is_integer_value()

bool LMCAS::anonymous_namespace{solver_assumptions.cpp}::is_integer_value ( double v)
static

在文件 solver_assumptions.cpp 第 42 行定义.

42 {
43 if (!std::isfinite(v)) {
44 return false;
45 }
46 int eq;
47 lmmc_double_nearly_equal_tol(v, std::round(v), 1e-12, 1e-12, &eq);
48 return eq != 0;
49}
ExprResult eq(const ExprPtr &lhs, const ExprPtr &rhs, ComputationContext &context)
ExprResult e()
__attribute__((visibility("default"))) VectorCalculusExprResult surface_integral_scalar_checked(const std __attribute__((visibility("default"))) VectorCalculusExprResult surface_integral_scalar_checked(const std __attribute__((visibility("default"))) std const VectorField const std::string const std::string & v

引用了 LMCAS::e(), LMCAS::eq(), is_integer_value() , 以及 LMCAS::v.

被这些函数引用 is_integer_value().

函数调用图:
这是这个函数的调用关系图:

◆ try_get_numeric_value()

bool LMCAS::anonymous_namespace{solver_assumptions.cpp}::try_get_numeric_value ( const std::shared_ptr< SymbolicExpr > & expr,
double & out_value )
static

从解表达式提取 double 数值。

返回
纯数值表达式提取成功时写入 out_value 并返回 true。

在文件 solver_assumptions.cpp 第 31 行定义.

31 {
32 if (!expr || !LMCAS::detail::node(expr)) {
33 return false;
34 }
35 auto num = std::dynamic_pointer_cast<const NumberNode>(LMCAS::detail::node(expr));
36 if (!num) {
37 return false;
38 }
39
40 return solver_detail::solver_number_value(*num, out_value);
41}
const SymbolicNodePtr & node(const ::LMCAS::SymbolicExpr &expression) noexcept
std::shared_ptr< SymbolicExpr > num(int value)
bool solver_number_value(const NumberNode &number, double &value)

引用了 LMCAS::detail::node(), LMCAS::polynomial_solver_detail::num(), LMCAS::solver_detail::solver_number_value() , 以及 try_get_numeric_value().

被这些函数引用 try_get_numeric_value().

函数调用图:
这是这个函数的调用关系图: