ЗАДАЧА 4. Найти общее решение линейного дифференциального уравнения 2-го порядка с постоянными коэффициентами.

> restart:

> diff(y(x),x$2)+100*y(x)=sin(2*x);

diff(y(x),`$`(x,2))+100*y(x) = sin(2*x)

Составим и решим характерестическое уравнение:

> lambda^2+100=0;'lambda'={solve(%)};

lambda^2+100 = 0

lambda = {10*I, -10*I}

Составим ФСР и Yo.o.:

> ФСР:={sin(10*x),cos(10*x)};
y[`o.o.`]:=C[1]*op(1,ФСР)+C[2]*op(2,ФСР);

`ФСР` := {sin(10*x), cos(10*x)}

y[`o.o.`] := C[1]*sin(10*x)+C[2]*cos(10*x)

Для нахождения Yч.н. воспользуемся методом вариации постоянных:

Короче, составим систему относительно diff(C[1](x),x), diff(C[2](x),x) :

> with(linalg):

Warning, the protected names norm and trace have been redefined and unprotected

> WrConst:=multiply(wronskian(vector([op(1,ФСР),op(2,ФСР)]),x),
matrix[row](2,1,[diff(C[1](x),x),diff(C[2](x),x)])):
row(WrConst,1)[1]=0;row(WrConst,2)[1]=sin(2*x);

sin(10*x)*diff(C[1](x),x)+cos(10*x)*diff(C[2](x),x)...

10*cos(10*x)*diff(C[1](x),x)-10*sin(10*x)*diff(C[2]...

Решая это, получим:

> solve({row(WrConst,1)[1]=0,row(WrConst,2)[1]=sin(2*x)},{diff(C[1](x),x),diff(C[2](x),x)}):
dsolve({row(WrConst,1)[1]=0,row(WrConst,2)[1]=sin(2*x)},{C[1](x),C[2](x)}):
diff(C[1](x),x) = 1/10*(1+16*sin(2*x)^4-12*sin(2*x)^2)*cos(2*x)*sin(2*x);
diff(C[2](x),x) = 2*sin(2*x)^4-1/2*sin(2*x)^2-8/5*sin(2*x)^6;

diff(C[1](x),x) = 1/10*(1-12*sin(2*x)^2+16*sin(2*x)...

diff(C[2](x),x) = -1/2*sin(2*x)^2+2*sin(2*x)^4-8/5*...

Откуда нетрудно найти `С`[1] и `С`[2] :

> С[1]:=1/160*cos(8*x)-1/240*cos(12*x);С[2]:=1/240*sin(12*x)-1/160*sin(8*x);

`С`[1] := 1/160*cos(8*x)-1/240*cos(12*x)

`С`[2] := 1/240*sin(12*x)-1/160*sin(8*x)

Тогда запишем частное и общее решение неоднородного уравнения:

> y[`ч.н.`]:=op(1,ФСР)*С[1]+op(2,ФСР)*С[2];
y[`ч.н.`]:=simplify(%);
y[`о.н.`]:='y[`o.o.`]+y[`ч.н.`]';
y[`о.н.`]:=y[`o.o.`]+y[`ч.н.`];

y[`ч.н.`] := sin(10*x)*(1/160*cos(8*x)-1/240*cos(12...

y[`ч.н.`] := 1/96*sin(2*x)

y[`о.н.`] := y[`o.o.`]+y[`ч.н.`]

y[`о.н.`] := C[1]*sin(10*x)+C[2]*cos(10*x)+1/96*sin...

>