matlab教程--matlab快速入门-文字版, matlab电子书, 和matlab 有关的电子书:

4.3.2 微分方程

4.3.2 微分方程

 

在MATLAB系统中提供了常微分方程(组)符号解(Symbolic solution of ordinary differential equations)的函数dsolve.在调用此函数前,必须首先将给定的常微分方程(组)中的一阶导数用D表示,例如,写成Dy.阶导数用Dn表示,例如,表示为D6y.由此,常微分方程写成DD.下面具体介绍函数dsolve解常微分方程(组)的方法.

 

(一) 求常微分方程(组)的通解

 

用MATLAB函数dsolve求常微分方程

                                      (4.1)

的通解的主要调用格式如下:

 

调用格式一: S=dsolve ('eqn','var')

输入的量:eqn是常微分方程(4.1)改用符号方程表示的常微分方程DDD.Var表示自变量,默认的自变量为t.

输出的量:S是常微分方程(4.1)的通解.

求常微分方程组

                                 (4.2)

的通解的主要调用格式如下:

 

调用格式二: S=dsolve ('eqn1','eqn2', ... ,'eqnm','var')

输入的量:eqn1, eqn2 , ... , eqnm 分别是常微分方程组(4.2)中用符号方程表示的个常微分方程.默认的自变量为t,也可以将自变量t变为其他的符号变量var.

输出的量:S是常微分方程组(4.2)的通解.

 

[例5]  求下列常微分方程的通解:

(1);(2);(3)

(4); (5).

解 输入程序:

>> x1=dsolve('Dx=-a*x')

y2=dsolve('D2y+a*Dy=b*(sin(x)+cos(x))', 'x')

y3= dsolve('Dy = y^2*(1-y)'),

x4=dsolve('D2x+a*Dx/m+b*x/m = F(t)/m'),

y5= dsolve('D2y = sin(y)'), pretty(y5)

运行后屏幕显示常微分方程(1)、(2)、(3)、(4)和(5)的通解x1、y2、y3、x4和y5依次如下:

x1 =

C1*exp(-a*t)

y2 =

-b*(a*cos(x)-a*sin(x)+sin(x)+cos(x))/(a^2+1)+C1+C2*exp(-a*x)

Warning: Explicit solution could not be found; implicit solution returned.

> In C:\MATLAB6p5\toolbox\symbolic\dsolve.m at line 292

y3 =

t+1/y-log(y)+log(-1+y)+C1=0

x4 =

(-int(F(t)*exp(1/2*(a+(a^2-4*m*b)^(1/2))*t/m),t)*exp(1/2*(a-(a^2-4*m*b)^(1/2))*t/m)+int(F(t)*exp(1/2*(a-(a^2-4*m*b)^(1/2))*t/m),t)*exp(1/2*(a+(a^2-4*m*b)^(1/2))*t/m))*exp(-a*t/m)/(a^2-4*m*b)^(1/2)+C1*exp(-1/2*(a+(a^2-4*m*b)^(1/2))*t/m)+C2*exp(-1/2*(a-(a^2-4*m*b)^(1/2))*t/m)

Warning: Explicit solution could not be found; implicit solution returned.

> In C:\MATLAB6p5\toolbox\symbolic\dsolve.m at line 292

y5 =

[Int(1/(-2*cos(a)+C1)^(1/2),a=``..y)-t-C2=0, -Int(1/(-2*cos(a)+C1)^(1/2),a=``..y)-t-C2=0]

其中C1和C2是任意常数.因为常微分方程(3)和(5)的显式解没有被找到,所以返回隐式解.

 

[例6]  求下列常微分方程组的通解:

(1)   (2)

解  输入程序:

>> S1=dsolve('Df = a*f + b*g','Dg = -a*f +b*g'),

f=S1.f,g=S1.g,de1='Dy + 4*z=sin(x)';

de2='Dy + 3*Dz=cos(x)';

S2=dsolve(de1, de2, 'x'), Y=S2.y,z=S2.z 

运行后屏幕显示微分方程组(1)和(2)的通解如下:

S1 =

    f: [1x1 sym]

    g: [1x1 sym]

f =

C1*exp(1/2*a*t+1/2*t*b-1/2*t*(a^2-6*a*b+b^2)^(1/2))+C2*exp(1/2*a*t+1/2*t*b+1/2*t*(a^2-6*a*b+b^2)^(1/2))

g =

-1/2*(C1*a*exp(1/2*a*t+1/2*t*b-1/2*t*(a^2-6*a*b+b^2)^(1/2))-C1*exp(1/2*a*t+1/2*t*b-1/2*t*(a^2-6*a*b+b^2)^(1/2))*b+C1*(a^2-6*a*b+b^2)^(1/2)*exp(1/2*a*t+1/2*t*b-1/2*t*(a^2-6*a*b+b^2)^(1/2))+C2*a*exp(1/2*a*t+1/2*t*b+1/2*t*(a^2-6*a*b+b^2)^(1/2))-C2*exp(1/2*a*t+1/2*t*b+1/2*t*(a^2-6*a*b+b^2)^(1/2))*b-C2*(a^2-6*a*b+b^2)^(1/2)*exp(1/2*a*t+1/2*t*b+1/2*t*(a^2-6*a*b+b^2)^(1/2)))/b

S2 =

    y: [1x1 sym]

    z: [1x1 sym]

Y =

C1-3*exp(4/3*x)*C2+3*C2+4/25*sin(x)+3/25*cos(x)

z =

exp(4/3*x)*C2-1/25*cos(x)+7/25*sin(x)

 

(二)  求常微分方程(组)的特解

 

如果给定常微分方程(4.1)的初始条件

            (4.3)

则求方程(4.1)的特解的主要调用格式如下:

 

调用格式三:S=dsolve ('eqn','condition1',…,'conditionn','var')

输入的量:eqn是常微分方程(4.1)改用符号方程表示的常微分方程DDD;condition1,…,conditionn是初始条件(4.3);Var表示自变量,默认的自变量为t.

输出的量:S是常微分方程(4.1)的特解.

同理,如果给定常微分方程组(4.2)的初始条件,则求方程(4.2)的特解的主要调用格式如下:

 

调用格式四:S=dsolve('eqn1','eqn2', ... ,'eqnm','condition1','condition2',…,'var')

输入的量:eqn1, eqn2, ... ,eqnm 分别是常微分方程组(4.2)中用符号方程表示的个常微分方程;condition1,condition2,…是常微分方程组(4.2)的初始条件;默认的自变量为t,也可以将自变量t变为其他的符号变量var.

输出的量:S是常微分方程组(4.2)的特解.

 

[例7]  求下列常微分方程在给定初始条件下的特解:

(1);(2)

(3).

解 输入程序:

>>  y = dsolve('(Dy)^2 + y^2 = 1','y(0) = 0')

        w = dsolve('D3w = -w','w(0)=1, Dw(0)=0, D2w(0)=0')

f=dsolve('D2f = -a^2*Df', 'f(0) = 1, Df(pi/a) = 0')

运行后屏幕显示常微分方程(1)、(2)和(3)在给定初始条件下的特解y,w,f依次如下:

y =

[  sin(t)]

[ -sin(t)]

w =

1/3*exp(-t)+2/3*exp(1/2*t)*cos(1/2*3^(1/2)*t)

f =

1

 

 [例8]  求下列微分方程组满足所给初始条件的特解:

(1) ;  

(2).

解 输入程序:

>> S1=dsolve('Df=a*f+b*g','Dg=-a*f +b*g','f(0)= 1','g(0) = 2')

f=S1.f; fs=simple(f), g=S1.g;

gs=simple(g), de1='D2y+2*Dy+y+Dz+z=0';

de2='Dy+y+D2z+2*Dz+z=exp(x)';

S2=dsolve(de1,de2,'y(0)=0, Dy(3)=2, z(5)=1, Dz(0)=0')

y=S2.y; ys=simple(y), z=S2.z; zs=simple(z),

运行后屏幕显示常微分方程组(1)和(2)在给定初始条件下的特解f,g,y和z依次如下:

S1 =

    f: [1x1 sym]

    g: [1x1 sym]

fs =

-1/2*(a+3*b-(a^2-6*a*b+b^2)^(1/2))/(a^2-6*a*b+b^2)^(1/2)*exp(1/2*a*t+1/2*t*b-1/2*t*(a^2-6*a*b+b^2)^(1/2))+1/2*(a+3*b+(a^2-6*a*b+b^2)^(1/2))/(a^2-6*a*b+b^2)^(1/2)*exp(1/2*a*t+1/2*t*b+1/2*t*(a^2-6*a*b+b^2)^(1/2))

gs =

(2*exp(1/2*(a+b-(a^2-6*a*b+b^2)^(1/2))*t)*a-exp(1/2*(a+b-(a^2-6*a*b+b^2)^(1/2))*t)*b+exp(1/2*(a+b-(a^2-6*a*b+b^2)^(1/2))*t)*(a^2-6*a*b+b^2)^(1/2)-2*exp(1/2*(a+b+(a^2-6*a*b+b^2)^(1/2))*t)*a+exp(1/2*(a+b+(a^2-6*a*b+b^2)^(1/2))*t)*b+exp(1/2*(a+b+(a^2-6*a*b+b^2)^(1/2))*t)*(a^2-6*a*b+b^2)^(1/2))/(a^2-6*a*b+b^2)^(1/2)

S2 =

    y: [1x1 sym]

    z: [1x1 sym]

ys =

-1/2*exp(-3)*(-2*exp(x-2)-exp(-1-t+x)+exp(1+x)-4*exp(-1-t)+exp(-1+x)+4*exp(-1)+2*exp(4-t+x)-2*exp(x+4)+8*exp(4-t)-8*exp(4)+2*exp(-2*t+6)+4*exp(-2*t+9)+2*exp(1+x)*t+2*exp(x+3)*t-exp(-4+x)*t-12*exp(x+3)-2*exp(6)-6*exp(x-2*t+6)+2*exp(-2-t+x)-exp(x-t+9)+12*exp(x-t+3)+4*exp(3)+6*exp(x+6)-exp(x-2*t+1)-exp(x+6)*t-4*exp(3-t)-4*exp(9-t)+exp(x-2*t+9))/(2*exp(-2)+2-exp(-7)-exp(3))

zs =

-1/2*(4+3*exp(x-2)+4*exp(-4)-2*exp(1+x)-8*exp(1)-exp(x-7)+8*exp(6-t)-4*exp(-2*t+6)+2*exp(x-t+6)+exp(-4+x)+exp(x-2*t-2)-exp(x-7)*t+5*exp(x+3)+2*exp(x-2)*t-exp(x-t-7)-10*exp(x)-exp(x-2*t+6)-13*exp(x-t+3)-exp(x+3)*t-2*exp(3)+2*exp(x-t)+6*exp(x-2*t+3)-2*exp(x-5)+2*exp(x)*t-2*exp(-2*t+3)+4*exp(3-t))/(-2*exp(-2)-2+exp(-7)+exp(3))

欢迎转载,转载请注明来自一手册:http://yishouce.com/book/2/2040302.html
友情链接It题库(ittiku.com)| 版权归yishouce.com所有| 友链等可联系 admin#yishouce.com|粤ICP备16001685号-1