RMVL  2.1.0-dev
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到
rm::NonlinearSolver类 参考

非线性方程求解器 更多...

#include <rmvl/algorithm/numcal.hpp>

rm::NonlinearSolver 的协作图:

Public 成员函数

 NonlinearSolver ()=default
 
 NonlinearSolver (const std::function< double(double)> &f)
 创建非线性方程求解器对象
 
double operator() (double x0, double eps=1e-5, std::size_t max_iter=50) const
 使用离散 Newton 迭代法求解非线性方程 \(f(x)=0\)
 

Public 属性

std::function< double(double)> func
 非线性方程函数对象
 

详细描述

非线性方程求解器

构造及析构函数说明

◆ NonlinearSolver() [1/2]

rm::NonlinearSolver::NonlinearSolver ( )
default
Python:
rm.NonlinearSolver() -> <NonlinearSolver object>
rm.NonlinearSolver(f) -> <NonlinearSolver object>

◆ NonlinearSolver() [2/2]

rm::NonlinearSolver::NonlinearSolver ( const std::function< double(double)> & f)
inline
Python:
rm.NonlinearSolver() -> <NonlinearSolver object>
rm.NonlinearSolver(f) -> <NonlinearSolver object>

创建非线性方程求解器对象

参数
[in]f非线性方程 \(f(x)=0\) 的函数对象 \(f(x)\)
注解
  • 可以是 double (*)(double) 函数指针,和其他可隐式转换为该函数指针的可调用对象等

成员函数说明

◆ operator()()

double rm::NonlinearSolver::operator() ( double x0,
double eps = 1e-5,
std::size_t max_iter = 50 ) const
Python:
rm.NonlinearSolver.__call__(x0[, eps[, max_iter]]) -> fval

使用离散 Newton 迭代法求解非线性方程 \(f(x)=0\)

参数
[in]x0迭代初始值
[in]eps精度要求
[in]max_iter最大迭代次数
返回
迭代结果

类成员变量说明

◆ func

std::function<double(double)> rm::NonlinearSolver::func

非线性方程函数对象


该类的文档由以下文件生成: