
MATLAB解微分方程,为什么将上一步计算出的值带入到下一步计算?
symst;y=2+3*sin(4*t+pi/4);x=dsolve('Dx+l*x-y==0','x(0)==0','t')xf=dsolve('k*Dxf+xf-x=...
syms t;
y = 2 + 3 * sin(4 * t + pi / 4);
x = dsolve('Dx + l * x - y == 0', 'x(0) == 0', 't')
xf = dsolve('k * Dxf + xf - x == 0', 'xf(0) == 0', 't')
>>x =
(y - y*exp(-l*t))/l
xf =
x - x*exp(-t/k) 展开
y = 2 + 3 * sin(4 * t + pi / 4);
x = dsolve('Dx + l * x - y == 0', 'x(0) == 0', 't')
xf = dsolve('k * Dxf + xf - x == 0', 'xf(0) == 0', 't')
>>x =
(y - y*exp(-l*t))/l
xf =
x - x*exp(-t/k) 展开
1个回答
展开全部
要完成你的问题。首先,声明变量要完整,即syms t k;其二,已知x的表达式,计算xf,应用eval()函数命令来计算,即xf=eval(xf)。完整的代码如下:
syms t k
y = 2 + 3 * sin(4 * t + pi / 4);
x = dsolve('Dx + l * x - y = 0', 'x(0) = 0', 't')
xf = dsolve('k * Dxf + xf - x = 0', 'xf(0) = 0', 't')
xf=eval(xf)
执行结果
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询