符号计算的比较

问题描述 投票:2回答:1

我试图在matlab上计算雅可比矩阵。我用两种方式计算矩阵:

1-手动计算函数的导数然后实现它; 2-我使用符号在Matlab中编写函数,我使用嵌入函数计算导数,然后计算结果。

以下是使用两种方法的矩阵元素的结果:

0.812800813334022

0.812779921070141(符号计算)

我看到这两个号码只同意第三个数字。我的问题是:

我应该相信哪些结果? (可能很明显它是使用符号计算的那个,如果是这样的话?)

如果第一种方法不准确,我该如何纠正(避免取消...)?

先感谢您。

matlab calculation
1个回答
0
投票

符号计算应该提供更精确的结果(通常)。数值计算精度损失的一个原因是函数df的导数f(x)基本上是通过使用有限差分计算的:

df = (f(x+dx)-f(x))/dx

通过减少dx,您可以更接近真实值,但会增加舍入误差和浮点计算精度有限的影响。

© www.soinside.com 2019 - 2024. All rights reserved.