海
我有一个名为 theRas 的列向量。它代表了最优控制问题中的约简伴随系统。它是一个 [10 * 1] 列向量。它的形式theRas(z1, z2, z3, z4, z5, lam1, lam2, lam3, lam4, lam5) =......
它基本上是 10 SYMBOLIC 微分方程的形式
z1dot = ...
z2dot = ...
.
.
lam5dot = ...
它真的很大,这就是为什么我试图解释它而不是仅仅发布它。
所以现在我不是所有 10 个变量的初始值,我想使用 ode45 来解决它。这是我试图做到这一点的功能:
function [errorP] = p(lamda1,lamda2,lamda3,lamda4,lamda5)
initValues = [0 0 0 0 0 lamda1 lamda2 lamda3 lamda4 lamda5]
theRas = ras()
[t,xa] = ode45(theRas,[0 3.14],initValues) %this does not work
m = size(t)
z1final = z1(t)
z2final = z2(t)
z3final = z3(t)
z4final = z4(t)
z5final = z5(t)
errorP = (3.14-z1final).^2 + (0-z2final).^2 + (0-z3final).^2 + (0-z4final).^2 + (0-z5final).^2
它给了我错误:
Error in MuPAD command: The operand is invalid. [_mult]
我感觉我在 ode45 中定义我的函数的方式是错误的,但我不知道如何修复它。任何帮助,将不胜感激。