编程语法问题。

5 views (last 30 days)
这样写为什么有警告呢? 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

果博东方注册官网【微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)

More Answers (0)

Categories

Find more on Symbolic Math Toolbox 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!