Eigen 利用特征库计算雅可比矩阵 我希望能够使用 EGEN < /C> C++库计算雅可比矩阵,但是我找不到任何关于如何做到这一点的文档。

Eigen 利用特征库计算雅可比矩阵 我希望能够使用 EGEN < /C> C++库计算雅可比矩阵,但是我找不到任何关于如何做到这一点的文档。,eigen,Eigen,之前,我使用Python中的numdifftools包实现了这一点。功能是: numdifftools.Jacobian(ForwardsFunction)([input 1, input 2, input 3, ....]) 这里,ForwardsFunction是一个用户定义的函数,它计算给定输入状态的输出状态([输入1,输入2,输入3,…])。然后,numdifftools.Jacobian()方法自动计算这些输入值的雅可比矩阵,可以使用一些自动微分 Eigen库中是否有等效函数?Eig

之前,我使用Python中的
numdifftools
包实现了这一点。功能是:

numdifftools.Jacobian(ForwardsFunction)([input 1, input 2, input 3, ....])
这里,
ForwardsFunction
是一个用户定义的函数,它计算给定输入状态的输出状态(
[输入1,输入2,输入3,…]
)。然后,
numdifftools.Jacobian()
方法自动计算这些输入值的雅可比矩阵,可以使用一些自动微分


Eigen
库中是否有等效函数?

Eigen库中有一些执行数值微分的工具。 看看:

您可能会注意到,这些模块“不受支持”(不是官方Eigen库的一部分)。推理如下:本征是线性代数的一个库,因此使用稀疏和稠密矩阵进行操作,而数值微分则在其范围的边缘因此,将它们包含在库中的优先级较低。据我所知,这些模块在其解算器中的使用非常具体。我没有在我的项目中使用这些Eigen::Numerical differention类的经验,尽管您可能会尝试一下