Вы находитесь на странице: 1из 4

1)Нахождение общего решения:

> dsolve(diff(diff(y(x),x),x)=a*diff(y(x),x)+y(x),y(x));

y(x) = _C1 exp(1/2 (a + (a + 4) ) x) + _C2 exp(1/2 (a - (a + 4) ) x)

2)Решение с определённым значением параметра:


> dsolve(diff(diff(y(x),x),x)=4*diff(y(x),x)+y(x),y(x));

y(x) = _C1 exp((2 + 5) x) + _C2 exp(-(-2 + 5 ) x)

3)Выведение самой фундаментальной системы решений:


> dsolve(x^2*diff(y(x),x$2)+3*x*diff(y(x),x)+4*y(x)=0, y(x),output=basis);

sin(3 ln(x)) cos(3 ln(x))


[---------------, ---------------]
x x

4)Выведение частного решения:


> dsolve(x^2*diff(y(x),x$2)+3*x*diff(y(x),x)+4*y(x)=x, y(x),output=basis);

sin(3 ln(x)) cos(3 ln(x))


[[---------------, ---------------], 1/7 x]
x x
> dsolve(diff(y(x),x)/y(x)-ln(y(x))/(1+x^2)=0,y(x));

ln(ln(y(x))) - arctan(x) = _C1

> dsolve(diff(y(x),x)/y(x)-ln(y(x))/(1+x^2)=0,y(x),explicit=true);

y(x) = exp(exp(arctan(x) + _C1))

6)Решение задачи Кошидля ОДУ:


> dsolve({diff(diff(y(x),x),x)-2*diff(y(x),x)+y(x)=sin(x),y(0)=1,D(y)(0)=0},y(x));

y(x) = 1/2 cos(x) + 1/2 exp(x) - 1/2 exp(x) x

> plot(subs(",y(x)),x=0..1);

> t:=dsolve({diff(diff(y(x),x),x)-2*diff(y(x),x)+y(x)=sin(x),y(0)=1,D(y)(0)=0},y(x));

t := y(x) = 1/2 cos(x) + 1/2 exp(x) - 1/2 exp(x) x

7)График решения дифференциального уравнения:


> plot(subs(t,y(x)),x=0..1);
8)Решение дифференциального уравнение, не ограниченное построением графика:
> dsolve({diff(diff(y(x),x),x)-2*diff(y(x),x)+y(x)=sin(x),y(0)=1,D(y)(0)=0},y(x));

y(x) = 1/2 cos(x) + 1/2 exp(x) - 1/2 exp(x) x

> u:=unapply(subs(t,y(x)),x);

u := x -> 1/2 cos(x) + 1/2 exp(x) - 1/2 exp(x) x

> u(2.2); -5.709258659

> plot(u(x),x=0..2);

9)Табулирование функции u(x) на отрезке [0,2] с шагом 0.2:


> for x from 0 by 0.2 to 2 do printf(`x=%g z=%g\n`,x,u(x)); od;
x=0 z=1
x=.2 z=.978594
x=.4 z=.908077
x=.6 z=.777091
x=.8 z=.570907
x=1 z=.270151
x=1.2 z=-.150832
x=1.4 z=-.726056
x=1.6 z=-1.500509
x=1.8 z=-2.533460
x=2 z=-3.902601

10)Разложение в степенной ряд по степеням х.:


> dsolve({diff(diff(y(x),x),x)-2*diff(y(x),x)+y(x)=sin(x),y(0)=1,D(y) (0)=0},y(x),series);

y(x) = 1 - 1/2 x - 1/6 x -1/60х + O(x )

> Order:=4;

Пример:
> dsolve({diff(y(t),t$2)+5*diff(y(t),t)+6*y(t)=10*sin(t),y(0)=0,D(y)(0)=1},y(t),method=laplace);

y(t) = -2 exp(-3 t) + 3 exp(-2 t) - cos(t) + sin(t)

Решение краевой задачи для ОДУ:


> dsolve({diff(diff(y(x),x),x)-2*diff(y(x),x)+y(x)=sin(x),y(0)=1,y(1)=2},y(x));

(cos(1) + exp(1) - 4) exp(x) x


y(x) = 1/2 cos(x) + 1/2 exp(x) - 1/2 ------------------------------
exp(1)
Пример:
> eqns:={diff(diff(y(x),x),x)+y(x)=1/(1+cos(x)),D(y) (0)=1,D(y) (Pi/2)=1}:
> dsolve(eqns,y(x));

y(x) = sin(x)
ln(1 + cos(x)) cos(x) - 1 + 2 arctan(---------------) sin(x) + sin(x)
1 + cos(x)
11)Получение общего решения,содержащее две произвольные постоянные:
> eqns:=diff(diff(y(x),x),x)+y(x)=sin(x):
> bound:={D(y)(0)+2*y(0)=-1,D(y)(Pi/2)-y(Pi/2)=0};

bound := {D(y)(0) + 2 y(0) = -1, D(y)(1/2 Pi) - y(1/2 Pi) = 0}


> t:=dsolve(eqns,y(x));

t := y(x) = - 1/2 cos(x) x + 1/2 sin(x) + _C1 cos(x) + _C2 sin(x)

> y:=unapply(subs(t,y(x)),x);

y := x -> - 1/2 cos(x) x + 1/2 sin(x) + _C1 cos(x) + _C2 sin(x)

> r:=solve(bound,{_C1,_C2});

r := {_C1 = - 1/4 Pi - 1/2, _C2 = 1/2 Pi}

> subs(r,y(x));

- 1/2 cos(x) x + 1/2 sin(x) + (- 1/4 Pi - 1/2) cos(x) + 1/2 Pi sin(x)

12)решение системы двух линейных уравнений:


> dsolve({diff(x(t),t)=x(t)-y(t)+exp(t),diff(y(t),t)=x(t)+y(t)},{x(t),y(t)});

{y(t) = exp(t) sin(t) _C1 + exp(t) cos(t) _C2 + exp(t),

x(t) = exp(t) cos(t) _C1 - exp(t) sin(t) _C2}

> r:=dsolve({diff(x(t),t)=x(t)-y(t)+exp(t),diff(y(t),t)=x(t)+y(t),x(0)=-1,y(0)=0},{x(t),y(t)});

r := {y(t) = -exp(t) sin(t) + exp(t) - exp(t) cos(t),

x(t) = -exp(t) cos(t) + exp(t) sin(t)}

13)Построение графика этих функций:


> plot(subs(r,{x(t),y(t)}),t=0..2);

> dsolve({diff(x(t),t)=x(t)-y(t)+exp(t),diff(y(t),t)=x(t)+y(t),x(0)=-1,y(0)=0},{x(t),y(t)},series);

{x(t) = - 1 + t + 2/3 t + 1/6 t + O(t ), y(t) = - t - 1/2 t + 1/6 t + 5/24 t + 3/40 t + O(t )}

14)Частное решение дифференциальных уравнений:


> p:=dsolve({D(y) (x)+y(x)=sin(x*y(x)),y(0)=0.5},y(x),type=numeric);

p := proc(rkf45_x) ... end

> plots[odeplot] (p,0..4);


15)Вычисление значения функции в любой заданной точке:
> for t from 0 by 0.4 to 4 do print(p(t)); od;

[x = 0, y(x) = .5]

[x = .4, y(x) = .3630175371313632]

[x = .8, y(x) = .3088281734956087]

[x = 1.2, y(x) = .3068676162444395]

[x = 1.6, y(x) = .3529834095109316]

[x = 2.0, y(x) = .4563662858614901]

[x = 2.4, y(x) = .6081709238629232]

[x = 2.8, y(x) = .7259440388520516]

[x = 3.2, y(x) = .7439952023889225]

[x = 3.6, y(x) = .7031445466361927]

[x = 4.0, y(x) = .6494931036427070]

16)Вывод значений функции:


> sys:=diff(y(x),x)=z(x),diff(z(x),x)=0.1*z(x)-sin(y(x));

d d
sys := -- y(x) = z(x), -- z(x) = .1 z(x) - sin(y(x))
dx dx

> fcns:={y(x),z(x)};

fcns := {y(x), z(x)}

> F:=dsolve({sys,y(0)=0,z(0)=1},fcns,numeric);

F := proc(rkf45_x) ... end

> plots[odeplot](F,[[x,y(x)],[x,z(x)]],0..2.2,color=green);

Вам также может понравиться