> restart:
>
diff(y(x),x$2)+100*y(x)=sin(2*x);
Составим и решим характерестическое уравнение:
> lambda^2+100=0;'lambda'={solve(%)};
Составим ФСР и Yo.o.:
>
ФСР:={sin(10*x),cos(10*x)};
y[`o.o.`]:=C[1]*op(1,ФСР)+C[2]*op(2,ФСР);
Для нахождения Yч.н. воспользуемся методом вариации постоянных:
Короче, составим систему относительно :
> 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);
Решая это, получим:
>
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;
Откуда нетрудно найти и :
> С[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[`ч.н.`];
>