huagong410 发表于 2006-5-29 10:16

求各位朋友看一下这个问题.

请大家帮忙求解一下这个微分方程。
d2y/d2x^2+1/x*dy/dx+1*(1-c2*x^2)^2-c3^2-c4^2/x^2]*y=0
直接利用dsolve解这个方程,得到的是非解析的解,有没有其它的方法求解此方程。

>> syms c1 c2 c3 c4 x y
>> Sy=dsolve('D2y+Dy/x+(c1*(1-c2*x^2)^2-c3^2-c4^2/x^2)*y=0','x')
Warning: Compact, analytic solution could not be found.
It is recommended that you apply PRETTY to the output.
Try mhelp dsolve, mhelp RootOf, mhelp DESol, or mhelp allvalues
for more information.
> In F:\MATLAB6p1\toolbox\symbolic\dsolve.m at line 299

Sy =
DESol({x^2*diff(Y(x),`$`(x,2))+x*diff(Y(x),x)+(c1*x^2-2*c1*x^4*c2+c1*x^6*c2^2-c3^2*x^2-c4^2)*Y(x)},{Y(x)})

>> pretty(Sy)

/ 2 \
2 |d | /d \
DESol({x |--- Y(x)| + x |-- Y(x)|
| 2 | \dx /
\dx /
2 4 6 2 2 2 2
+ (c1 x - 2 c1 x c2 + c1 x c2 - c3 x - c4 ) Y(x)}, {Y(x)})
>>

[ 本帖最后由 ChaChing 于 2010-6-14 00:30 编辑 ]

ericlin 发表于 2006-5-29 10:35

<P>晕,没见过这种啊!不懂这个,不过我机子上是这样的:<br>&gt;&gt; syms c1 c2 c3 c4 x y <br><br>&gt;&gt; Sy=dsolve('D2y+Dy/x+(c1*(1-c2*x^2)^2-c3^2-c4^2/x^2)*y=0','x')<br><br>Sy =<br><br>DESol({diff(_Y(x),$(x,2))+1/x*diff(_Y(x),x)+(c1*(1-c2*x^2)^2-c3^2-c4^2/x^2)*_Y(x)},{_Y(x)})<br>&gt;&gt; pretty(Sy)<br> <br>                     d<br>         / 2       \   -- _Y(x)   /                        2\<br>         |d      |   dx         |            2 2   2   c4 |<br>DESol({|--- _Y(x)| + -------- + |c1 (1 - c2 x )- c3- ---| _Y(x)},<br>         |2      |      x       |                         2 |<br>         \dx       /            \                        x/</P>
<P>      {_Y(x)})</P>
[此贴子已经被作者于2006-5-29 10:42:35编辑过]

cdwxg 发表于 2006-5-29 11:06

这个可能是你matlab 版本问题,如果是matlab 7不会出现LZ的问题。<BR>正如2楼所言。
页: [1]
查看完整版本: 求各位朋友看一下这个问题.