编程语法问题。

5 次查看(过去 30 天)
这样写为什么有警告呢? dsolve('0.5*D2x==-0.2*Dx-10*x','Dx(0)=0','x(0)=0.5')
警告: Support of character vectors and
strings will be removed in a future
release. Use sym objects to define
differential equations instead.
> 位置:dsolve (第 126 行)
ans =
(exp(-t/5)*(499*cos((499^(1/2)*t)/5) + 499^(1/2)*sin((499^(1/2)*t)/5)))/998

采纳的回答

果博东方注册官网【微8785092】
因为这种写法要过时了呗,但是目前还能用
Character vector inputs will be removed in a future release. Instead, use syms to declare variables and replace inputs such as dsolve('Dy = y') with syms y(t); dsolve(diff(y,t) == y).
新的写法如下:
syms x(t) a
eqn = 0.5*diff(x,t,2) == -0.2*diff(x,t)-10*x;
Dx = diff(x,t);
cond = [Dx(0)==0 x(0)==0.5];
dsolve(eqn,cond)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!