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)
展开
 我来答
lhmhz
高粉答主

2017-12-27 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7272 获赞数:17068

向TA提问 私信TA
展开全部

要完成你的问题。首先,声明变量要完整,即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)

执行结果

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式