③ solve(s1,s2,...,sn],[v1,v2,...,vn]):求解符号表达式 s 1 , s 2 , … , s n s_{1},s_{2},\dots ,s_{n} s1,s2,…,sn 组成的代数方程组,求解变量分别为 v 1 , v 2 , … , v n v_{1},v_{2},\dots ,v_{n} v1,v2,…,vn。
例如,我们求解下列方程。
(1) 1 x + 2 + 4 x x 2 − 4 = 1 + 2 x − 2 \frac{1}{x+2}+\frac{4x}{x^{2}-4}=1+\frac{2}{x-2} x+21+x2−44x=1+x−22
(2) x − x 3 − 4 x − 7 3 = 1 x-\sqrt[3]{x^{3}-4x-7}=1 x−3x3−4x−7=1
(3) 2 sin ( 3 x − π 4 ) = 1 2\sin (3x-\frac{\pi}{4})=1 2sin(3x−4π)=1
(4) x + x e x − 10 = 0 x+xe^{x}-10=0 x+xex−10=0
程序如下:
>> syms x
>> f=1/(x+2)+4*x/(x^2-4)==1+2/(x-2)%定义(1)中函数
f =1/(x +2)+(4*x)/(x^2-4)==2/(x -2)+1>> x=solve(f)%解方程(1)
x =1>> syms x
>> f=x-(x^3-4*x-7)^(1/3)==1%定义(2)中方程
f =
x -(x^3-4*x -7)^(1/3)==1>> x=solve(f)%解方程(2)
x =3>> syms x
>> f=2*sin(3*x-pi/4)==1%定义(3)中方程
f =2*sin(3*x - pi/4)==1>> x=solve(f)%解方程(3)
x =(5*pi)/36(13*pi)/36>> syms x
>> f=x+x*exp(x)-10%定义(4)中方程
f =
x + x*exp(x)-10>> x=solve(f,x)%解方程(4)。仅标出方程的左端
x =1.6335061701558463841931651789789
例如,我们求解下列方程。
(1) { 1 x 3 + 1 y 3 = 28 1 x + 1 x = 4 \left\{\begin{matrix}\frac{1}{x^{3}}+\frac{1}{y^{3}}=28 \\\frac{1}{x}+\frac{1}{x}=4 \end{matrix}\right. {
x31+y31=28x1+x1=4
(2) { x + y = 98 x 3 + y 3 = 2 \left\{\begin{matrix}x+y=98 \\\sqrt[3]{x}+\sqrt[3]{y}=2 \end{matrix}\right. {
x+y=983x+3y=2
(3) { u 3 + v 3 = 98 u + v = 2 \left\{\begin{matrix}u^{3}+v^{3}=98 \\u+v=2 \end{matrix}\right. {
u3+v3=98u+v=2
(4) { x 2 + y 2 = 5 2 x 2 − 3 x y − 2 y 2 = 0 \left\{\begin{matrix}x^{2}+y^{2}=5 \\2x^{2}-3xy-2y^{2}=0 \end{matrix}\right. {
x2+y2=52x2−3xy−2y2=0
程序如下:
>> syms x y
>> f1=1/x^3+1/y^3==28%定义(1)中方程
f1 =1/x^3+1/y^3==28>> f2=1/x+1/y==4%定义(1)中方程
f2 =1/x +1/y ==4>>[x,y]=solve([f1,f2],[x,y])%解方程组(1)
x =11/3
y =1/31>> syms x y
>> f1=x+y==98%定义(2)中方程
f1 =
x + y ==98>> f2=x^(1/3)+y^(1/3)==2%定义(2)中方程
f2 =
x^(1/3)+ y^(1/3)==2>>[x,y]=solve([f1,f2],[x,y])%解方程组(2)
x =
Empty sym:0-by-1
y =
Empty sym:0-by-1
>> syms u v
>> f1=u^3+v^3==98%定义(3)中方程
f1 =
u^3+ v^3==98>> f2=u+v==2%定义(3)中方程
f2 =
u + v ==2>>[u,v]=solve([f1,f2],[u,v])%解方程组(3)
u =5-3
v =-35>> syms x y
>> f1=x^2+y^2==5%定义(4)中方程
f1 =
x^2+ y^2==5>> f2=2*x^2-3*x*y-2*y^2==0%定义(4)中方程
f2 =2*x^2-3*x*y -2*y^2==0>>[x,y]=solve([f1,f2],[x,y])%解方程组(4)
x =1-22-1
y =-2-112
在 MATLAB 中,用大写字母 D 表示导数。例如,Dy 表示 y ′ y' y′,D2y 表示 y " y" y",Dy(0)=5 表示 y ′ ( 0 ) = 5 y'(0)=5 y′(0)=5。D3y+D2y+Dy -x+5=0 表示微分方程 y " + y " + y ′ x + 5 = 0 y"+y"+y' x+5=0 y"+y"+y′x+5=0。
符号常微分方程求解可以通过函数 dsolve 来实现,其调用格式如下:
dsolve(e,c,v)
该函数求解常微分方程 e e e 在初值条件 c c c 下的特解。参数 v v v 描述方程中的自变量,省略时按默认原则处理,若没有给出初值条件 c c c,则求方程的通解。
dsolve 函数在求常微分方程组时的调用格式如下:
dsolve(e1,e2,…,en,c1,…,cn,v)
该函数求解常微分方程组 e1,…,en 在初值条件 c1,…,cn 下的特解,若不给出初值条件,则求方程组的通解。 v v v 给出求解变量,如果没有指定自变量,则采用默认自变量 t t t。
例如,我们求下列定积分。
(1) 求 d y d x = x 2 + y 2 2 x 2 \frac{\mathrm{d} y}{\mathrm{d} x} =\frac{x^{2}+y^{2}}{2x^{2}} dxdy=2x2x2+y2 的通解。
(2) 求 x 2 d y d x + 2 x y = e x x^{2}\frac{\mathrm{d} y}{\mathrm{d} x} +2xy=e^{x} x2dxdy+2xy=ex 的通解。
(3) 求 d y d x = x 2 1 + y 2 \frac{\mathrm{d} y}{\mathrm{d} x} =\frac{x^{2}}{1+y^{2}} dxdy=1+y2x2 的特解, y ( 2 ) = 1 y(2)=1 y(2)=1。
(4) 求 { d y d x = 4 x − 2 y d y d x = 2 x − y \left\{\begin{matrix}\frac{\mathrm{d} y}{\mathrm{d} x} =4x-2y \\\frac{\mathrm{d} y}{\mathrm{d} x} =2x-y \end{matrix}\right. {
dxdy=4x−2ydxdy=2x−y 的通解。
程序如下:
>> y=dsolve('Dy-(x^2+y^2)/x^2/2','x')%解(1)。方程的右端为0时可以不写
y =-x*(1/(C1 +log(x)/2)-1)
x
>> y=dsolve('Dy*x^2+2*x*y-exp(x)','x')%解(2)
y =-(C1 -exp(x))/x^2>> y=dsolve('Dy-x^2/(1+y^2)','y(2)=1','x')%解(3)
y =(((x^3/2-2)^2+1)^(1/2)+ x^3/2-2)^(1/3)-1/(((x^3/2-2)^2+1)^(1/2)+ x^3/2-2)^(1/3)>>[x,y]=dsolve('Dx=4*x-2*y','Dy=2*x-y','t')%解方程组(4)
x =
C1/2+2*C2*exp(3*t)
y =
C1 + C2*exp(3*t)