|
发表于 2014-7-14 00:28:29
|
显示全部楼层
matlab 二阶微分方程
4 k# ^+ c: p, H7 J. `# m$ E# m/ d/ H/ Z
>> clear
- |3 X) c9 ^8 X) C% t* Z>> syms a b c d e;1 E! B0 b% A3 |
>> y=dsolve('a*D2y+b*Dy+c*y=0','y(0)=d','Dy(0)=e'). `- m4 T( G8 n( W3 q* ]# [2 ]$ B* r
6 M& C* y: d+ u8 v: O t
y =4 s5 `: `7 K: p8 v9 r: W) E
. B, L1 m; G/ g2 Y) O(2*a*e + b*d + d*(b^2 - 4*a*c)^(1/2))/(2*exp((t*(b - (b^2 - 4*a*c)^(1/2)))/(2*a))*(b^2 - 4*a*c)^(1/2)) - (2*a*e + b*d - d*(b^2 - 4*a*c)^(1/2))/(2*exp((t*(b + (b^2 - 4*a*c)^(1/2)))/(2*a))*(b^2 - 4*a*c)^(1/2))
& J: k0 S' |% ? X( I6 b/ L& H 2 \9 E9 t' }. n
>> a=1;b=1;c=1;d=1;e=1;%若常数已知
- Y: v3 \8 R7 z( \+ O8 F/ [! R' C# q$ y3 \
>> t=1;%desolve中没指定自变量x,这里默认为t,带入任意一个x值
% z* J3 X4 I" N% U>> y=eval(y) - N" A$ r0 j5 K) p' I# E/ C
: E4 p( H- \7 v) G( B4 }y =
% S( G( B: d9 \9 p: }( f/ E7 {* L/ k& p
1.1932 + 0.0000i8 d3 h5 G7 M1 u7 j
这是解方程的方法,画图也差不多,我在命令窗写的改麻烦,下面是我在editor写的。$ X- ^( w/ ^& @1 x$ S
syms a b c d e;3 p1 t( b. s9 q. ]: B2 C. h
y=dsolve('a*D2y+b*Dy+c*y=0','y(0)=d','Dy(0)=e','x');
$ @5 L) }. n& X, ~( Q3 s: m+ }x=200:0.1:400;%取值范围,步长* [; P% e8 ^4 N8 p
a=1;b=1;c=1;d=1;e=1;%带入参数" w7 _1 P% Q. l* @0 F2 G S
y=eval(y);: e8 r3 { g n1 j; @0 J0 k
plot(x,y) |
|