考虑以下等式: enter image description here
x_1(k+1) = 2x_1(k) + 0.2x_2(k)
x_2(k+1) = 2x_2(k) - 0.4λ_2(k)
λ_1(k) = 0.1x_1(k) + 2λ_1(k+1)
λ_2(k) = 0.2λ_1(k+1) + 2λ_2 k+1)
k=0, 1, 2… 10
x_1(0)=2 x_2(0)=0
x_1(10)=0 x_2(10)=0
如何在Matlab(m-file)中确定k = 0,...,10的x_1(k),x_2(k),λ_1(k),λ_2(k)?
答案 0 :(得分:0)
当您尝试解决方程式系统时,您可以采用多种方式。
因为这看起来像一种微分方程,其近似步数为k = 10。您可以尝试使用类似ode45的内容。
为此,您必须重新定义您的问题,就像在高阶微分方程部分下的ode45的Matlab文档中所示。您可以在此处找到文档和许多示例: https://de.mathworks.com/help/matlab/ref/ode45.html
您还可以使用矩阵向量表示法重写问题,并使用matlab mldivide命令轻松解决问题。有关详细信息,请查看此处: https://de.mathworks.com/help/matlab/ref/mldivide.html