如何在Matlab中替换变量?

时间:2013-10-06 20:41:51

标签: matlab

我遇到了方程组的问题。 我有:

x' = f(t, x, u) - it's a set of equations - dimension n
x1' = ..
x2' = ..
x3' = ..

我有一个你 - 它是一个矢量(u1,u2,u3 ..)

我如何在我的方程组中替换你? 例如:

x1' = sin(t) * u1 + sin(u2)
x2' = u2*x2

u1 = sin(1000t)
u2 = cos(1000t)

我需要

x1' = sin(t) * sin(1000t) + sin(cos(1000t))
           x2' = cos(1000t) * x2

感谢的。

1 个答案:

答案 0 :(得分:1)

好吧,假设您使用的是符号工具箱:

syms t u1 u2 x2;
x1prime = sin(t) * u1 + sin(u2);
x2prime = u2 * x2;

然后你可以使用方法A或B.方法A:

x1prime = subs(x1prime, [u1 u2], [sin(1000*t) cos(1000*t)])
x2prime = subs(x2prime, u2, cos(1000*t))

方法B:

u1 = sin(1000*t);
u2 = cos(1000*t);
x1prime = subs(x1prime)
x2prime = subs(x2prime)

我在Matlab R2011A上测试了这两种方法。用最适合你的东西。