РГР_ВчМ_1_-2_kurs_33__33 / РГР вчм -2 курс / ргр но 1 / В-11 / РГР-ДУ высших порядков В-11
.docxЗадание №1. Найти решение дифференциальных уравнений , построить соответствующие кривые:
>> y=dsolve('Dy=2*x*y/(x^2+y^2)','x')
y =
[ 1/2*exp(C1)+1/2*(exp(C1)^2+4*x^2)^(1/2)]
[ 1/2*exp(C1)-1/2*(exp(C1)^2+4*x^2)^(1/2)]
>> % строим симейство интегральных кривых :
>> for C1=2:3:9
y1=1/2*exp(C1)+1/2*(exp(C1)^2+4*x^2)^(1/2);
y2=1/2*exp(C1)-1/2*(exp(C1)^2+4*x^2)^(1/2);
ezplot(y1), hold on, grid on, ezplot(y2)
end
>> % подставляем начальные условия и строим интегральную кривую:
end
>> y=dsolve('Dy=2*x*y/(x^2+y^2)','y(-3)=8','x')
y =
55/16+1/2*(3025/64+4*x^2)^(1/2)
>> ezplot(y)
>> grid on
-
, если y(1)=1;
>> y=dsolve('Dy=3^x+y','x')
y =
1/(-1+log(3))*exp(x*log(3))+exp(x)*C1
>> % строим симейство интегральных кривых :
>> for C1=2:3:9
y=1/(-1+log(3))*exp(x*log(3))+exp(x)*C1;
ezplot(y), hold on, grid on
end
>> % подставляем начальные условия и строим интегральную кривую:
>> y=dsolve('Dy=3^x+y','y(1)=1','x')
y =
1/(-1+log(3))*exp(x*log(3))+exp(x)*(-4+log(3))/exp(1)/(-1+log(3))
>> ezplot(y), grid on
*************************************************************************
Задание №2. Найти символьное и численное решения (на интервале [-1;1]) дифференциального уравнения .
.
>> % Аналитическое решение уравнения:
>> y=dsolve('D3y+5*D2y+7*Dy+3*y=(16*x+20)*exp(x)','x')
y =
exp(x)*x+C1*exp(-x)+C2*exp(-3*x)+C3*exp(-x)*x
>> % строим симейство интегральных кривых :
>> for C1=2:3:9
for C2=2:3:9
for C3=2:3:9
y=exp(x)*x+C1*exp(-x)+C2*exp(-3*x)+C3*exp(-x)*x;
ezplot(y), hold on, grid on
end
end
end
>> % подставляем начальные условия и строим интегральную кривую:
>>y=dsolve('D3y+5*D2y+7*Dy+3*y=(16*x+20)*exp(x)','D2y(1)=-1,Dy(1)=3, y(1)=5','x')
y =
exp(x)*x+(8*exp(1)^2-21/2*exp(1))*exp(-x)+(-2*exp(1)^4+5/2*exp(1)^3)*exp(-3*x)+(-7*exp(1)^2+13*exp(1))*exp(-x)*x
>> ezplot(y), grid on
>> % Численное решение:
>> % создаем файл-функцию:
function d=fun(x,y)
d=[y(3); y(2); (16*x+20)*exp(x)-5*y(3)-7*y(2)-3*y(1)];
>> [X Y]=ode113(@fun,[1 1.6], [-1 3 5]);
>> plot(X,Y,'r')
>> grid on
.
>> % Аналитическое решение уравнения:
>> y=dsolve('D2y+2*Dy=3*exp(x)*(sin(x)+cos(x))','x')
y =
9/10*exp(x)*sin(x)-3/10*exp(x)*cos(x)+C1+C2*exp(-2*x)
>> for C1=2:3:9
for C2=2:3:9
y=9/10*exp(x)*sin(x)-3/10*exp(x)*cos(x)+C1+C2*exp(-2*x);
ezplot(y), hold on, grid on
end
end
>> % подставляем начальные условия и строим интегральную кривую:
>> y=dsolve('D2y+2*Dy=3*exp(x)*(sin(x)+cos(x))','Dy(0)=pi, y(0)=pi','x')
y =
9/10*exp(x)*sin(x)-3/10*exp(x)*cos(x)+3/2*pi+(3/10-1/2*pi)*exp(-2*x)
>> ezplot(y), grid on
>> % Численное решение:
>> % создаем файл-функцию:
function d1=fun1(x,y)
d1=[y(2); 3*exp(x)*(sin(x)+cos(x))-2*y(2)];
>> [X Y]=ode45(@fun1,[0 5], [pi pi]);
>> plot(X,Y,'r')
>> grid on
*************************************************************************
Задание №3. Найти численное и символьное решение (на интервале [0;3]) системы дифференциальных уравнений, построить графики решений.
>> % Символьное решение:
>> % создаем файл-программу:
function sistem1
syms C1 C2
clc
[x y]=dsolve('Dx=-x+8*y','Dy=x+y');
disp('x=')
pretty(x)
disp('y=')
pretty(y)
subplot(2,1,1)
hold on
grid on
for c1=0:3
for c2=0:3
subplot(2,1,1)
ezplot(subs(x,[C1 C2],[c1 c2]));
subplot(2,1,2)
ezplot(subs(y,[C1 C2],[c1 c2]));
end
end
x=
2/3 C1 exp(-3 t) + 1/3 C1 exp(3 t) + 4/3 C2 exp(3 t) - 4/3 C2 exp(-3 t)
y=
1/6 C1 exp(3 t) - 1/6 C1 exp(-3 t) + 1/3 C2 exp(-3 t) + 2/3 C2 exp(3 t)
>> % Численное решение:
>> % создаем файл-программу:
function st
syms C1 C2
clc
[x y]=dsolve('Dx=-x+8*y','Dy=x+y','x(0)=1, y(0)=-1');
disp('x=')
pretty(x)
disp('y=')
pretty(y)
% [T M] - матрицa, T - вектор-столбец со значениями независимой переменной,
% M - матрица, столбцы которой содержат значения m(1), m(2);
[T M]=ode113(@ff,[0 3],[1,-1]);
% Значения переменной X находятся в 1 столбце матрицы М.
X=M(:,1);
% Значения переменной Y находятся в 2 столбце матрицы М.
Y=M(:,2);
% Создаем графическое окно и делим его на две части.
% В первом строим функцию х
subplot(2,1,1)
hold on
grid on
plot(T,X,'r*')
ezplot(x,[0,3])
% - функцию у
subplot(2,1,2)
hold on
grid on
plot(T,Y,'m')
ezplot(y,[0 3])
% функция для вычисления правых частей уравнений системы
% x=m1, y=m2, m1'=-m(1)+8m(2); m2'=m(1)+m(2);
function f=ff(t,m)
f=[-m(1)+8*m(2); m(1)+m(2)];
x=
-exp(3 t) + 2 exp(-3 t)
y=
- 1/2 exp(3 t) - 1/2 exp(-3 t)