利用实验数据求摩擦系数

信息处理 估计者
2022-02-02 23:04:42

我有一些未知参数(摩擦系数)的微分系统方程我也有实验数据。我想要的是确定最适合实验数据的摩擦系数。如何使用 Mathematica,我知道有 NDSolve 和 FindFit 函数,但它们不能在这里使用?这个问题的一般方法是什么?

编辑1:这是模型:

k1(x3[t]x1[t])+a1(x3[t]x1[t])+M1x1[t]=0
k2(x3[t]x2[t])+a2(x3[t]x2[t])+M2x2[t]=0

k3x3[t]k1(x3[t]x1[t])k2(x3[t]x2[t])+a3x3[t]a1(x3[t]x1[t])a2(x3[t]x2[t])+C1x3[t]=0

1个回答

我只能根据我所做的一项较为温和的工作提出一个粗略的起点。我的目标是确定荧光团在随时间变化的光照强度下的漂白系数。我有漂白随时间变化的理论定律,它是强度(取决于未知参数)、荧光团随时间变化的量以及实验结束时的起始强度和强度的函数。目标是检索漂白定律的参数和随着时间的推移的整体强度。

反正。我所做的是构造(使用 MATLAB)一个函数来最小化。在您的情况下,鉴于您通过实验知道,我建议构建一个函数使得:x(t)O(x,y)

O(x,y)=t|x(t)y(t)|2

是您的实验数据,是您的微分系统对于某些参数解。将此函数作为目标放在一个单纯形优化器中,该优化器将找到它的最小值,允许变化。x(t)y(t)k,M,ak,M,a

这是通过数值解来完成的。所以你有一个函数来最小化,比如,它返回的当前数值分辨率 (顺便说一句是标量)的值。F(k,a,M)O(x,y)k,a,M

在每一步,整个系统都将再次求解,并且将解决方案与实验数据进行匹配,直到它们适合为止。

我发现这在我的情况下工作得很好,只要你确定你有正确的模型来描述实验数据。否则,期待一些严重不相关的结果。