mma推导函数微分矩阵

randolf2022年6月6日
大约 2 分钟

mma推导函数微分矩阵

Mma 推导函数微分矩阵

定义

对于一些数学推导问题,如果手推可能会比较麻烦,这时使用 mma 进行符号推导可以加快计算速度,并且验算手算结果

比如下面的这个例子:

为了求解 H 和 f,可以考虑使用 mma 进行计算。

计算代码如下:

M = 10;
Lseq = Table[L[k], {k, 1, M}];
LseqShift = Table[L[k], {k, 0, M - 1}];
QpProb = ( Ls - L[M])*( Ls - L[M]) + 
   mu*Total[Map[Function[x, x^2], Lseq - LseqShift]];
QpInfo = CoefficientArrays[D[QpProb, {Lseq}], Lseq];
fSeq = Normal[QpInfo[1](.//)] // MatrixForm
Hseq = Normal[QpInfo[2](.//)] // MatrixForm

注意这里首先对 F 进行了微分然后求解的结果。

最终问题结果为:

理论计算:

mma 计算:

这里的 L(0) 就是 ,可以注意到,和理论计算相符合

参考

  • None
Loading...