RMVL  1.3.0
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到
numcal.hpp 文件参考

Numerical Calculation Module 数值计算模块 更多...

#include <array>
#include <bitset>
#include <vector>
#include <cstdint>
#include <functional>
numcal.hpp 的引用(Include)关系图:
此图展示该文件被哪些文件直接或间接地引用了:

class  rm::Polynomial
 N 次多项式 更多...
 
class  rm::Interpolator
 函数插值器 更多...
 
class  rm::CurveFitter
 曲线拟合器 更多...
 
class  rm::NonlinearSolver
 非线性方程求解器 更多...
 
class  rm::RungeKutta
 Butcher 表形式的常微分方程(组)数值求解器 更多...
 
class  rm::RungeKutta2
 2 阶 2 级 Runge-Kutta 求解器 更多...
 
class  rm::RungeKutta3
 3 阶 3 级 Runge-Kutta 求解器 更多...
 
class  rm::RungeKutta4
 4 阶 4 级 Runge-Kutta 求解器 更多...
 
struct  rm::OptimalOptions
 优化选项 更多...
 

命名空间

namespace  rm
 

类型定义

using rm::Ode = std::function<double(double, const std::vector<double> &)>
 常微分方程
 
using rm::Odes = std::vector<Ode>
 常微分方程组
 
using rm::Func1d = std::function<double(double)>
 一维函数
 
using rm::FuncNd = std::function<double(const std::vector<double> &)>
 多维函数
 

枚举

enum  rm::DiffMode : uint8_t { rm::Diff_Central , rm::Diff_Ridders }
 梯度/导数计算模式 更多...
 
enum  rm::OptimizeMode : uint8_t { rm::Optm_ConjGrad , rm::Optm_Simplex }
 多维函数最优化模式 更多...
 

函数

double rm::derivative (Func1d func, double x, DiffMode mode=Diff_Central, double dx=1e-3)
 计算一元函数的导数
 
std::vector< double > rm::grad (FuncNd func, const std::vector< double > &x, DiffMode mode=Diff_Central, double dx=1e-3)
 计算多元函数的梯度
 
std::pair< double, double > rm::region (Func1d func, double x0, double delta=1)
 采用进退法确定搜索区间
 
std::pair< double, double > rm::fminbnd (Func1d func, double x1, double x2, const OptimalOptions &options={})
 一维函数最小值搜索
 
std::pair< std::vector< double >, double > rm::fminunc (FuncNd func, const std::vector< double > &x0, const OptimalOptions &options={})
 无约束多维函数最小值搜索 [4] [8]
 

详细描述

Numerical Calculation Module 数值计算模块

作者
zhaoxi (53539.nosp@m.4140.nosp@m.@qq.c.nosp@m.om)
版本
1.0
日期
2024-01-06