这样写为什么有警告呢? 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

 Accepted Answer

0 votes

因为这种写法要过时了呗,但是目前还能用
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)

More Answers (0)

Categories

Find more on 编程 in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!