
2. Порядок выполнения лабораторной работы.
Работа рассчитана на два-три занятия и состоит из нескольких этапов.
2.1. На первом этапе преподаватель вкратце рассказывает о методе Эйлера решения задачи Коши для обыкновенного дифференциального уравнения первого порядка и раздает задания. Примерный перечень вариантов заданий представлен в приложении 1.
Замечание. Задание может быть представлено в виде
практической задачи. В этом случае вначале для нахождения искомого решения следует составить дифференциальное уравнение и задать начальные условия. В дальнейшем уже решать составленную задачу Коши.
Пример составления дифференциального уравнения в задании с практической задачей. В результате химической реакции меду веществами А и В массам а и b образуется третье вещество С массы с. Причем для образования массы m ( 0 ≤ m ≤ c ) вещества С требуется по m количества единиц массы веществ А и В. Установить зависимость массы вещества С от времени, если скорость реакции пропорциональна произведению вступающих в реакцию веществ.
•
Пусть x
= x
( t
) – количества
вещества С,
которое
образовалось за время t
после начала реакции.
Тогда
– скорость
образования вещества С (скорость
реакции).
По условию
= k
(a
– x)
( b
– x),
x(0)
= 0,
где k – коэффициент пропорциональности.
Начальное условие x(0) = 0 означает, что в начале реакции
( t = 0) вещества С еще нет.
2.2. На втором этапе студенты знакомятся с методическими указаниями по выполнению лабораторной работы и начинают аналитически решать задачу Коши в рабочей тетради.
Для нахождения аналитического решения задачи Коши (1) – (2) (нахождения частного решения уравнения (1) с начальными условиями (2)) вначале находим общее решение или общий интеграл дифференциального уравнения (1), содержащее параметр С. Подставив в полученное решение начальное условие, найдем С.
Основные типы обыкновенных дифференциальных уравнений 1-го порядка
Уравнения с разделяющимися переменными.
Пусть в уравнении
y = f ( x, y )
функция f ( x, y ) может быть разложена на множители, каждый из которых зависит только от одной переменной х или у :
f (x, y) = f 1(x) f 2(у)
или в уравнении
M ( x, y ) dx + N ( x, y ) dy = 0
коэффициенты при dx и dy представляются в виде M(x, y) = M1(x) M2(у), N (x, y) = N1(x) N2(у). Путем деления соответственно на f 2(у) и на
N1(x) M2(у) эти уравнения приводятся соответственно к виду
f
1(x)
dx
=
dy,
dx =
–
dy
.
Интегрируя левые части этих уравнений по х, а правые по у, приходим в каждом из них к общему интегралу исходного дифференциального уравнения.
Пример 1. Решить задачу Коши = k (a – x) ( b – x), x(0) = 0,
полученную в примере составления дифференциального уравнения в задании с практической задачей.
• Исходное уравнение - это уравнение с разделяющимися переменными:
= k
dt.
Преобразуем полученное уравнение к виду
= k
dt.
Интегрируем правую и левую части и получаем:
ln | x
– a
| – ln | x
– b
| = k
(a
– b)
t
+ ln | C
| =>
= C
e k
(a
– b)
t
.
Из начальных
условий
(x(0)
= 0 ) имеем:
С
=
,
поэтому
= e k (a – b) t ,
откуда
x
( t
) = a
b
.
Пример
2. Решить
уравнение
=
.
• Разделяем переменные (3y2 + 1) dy = 2x dx. Интегрируем:
=
и получаем общий интеграл уравнения у3 + у – х2 = С .
Однородные уравнения
Дифференциальное уравнение 1-го порядка называется однородным,
если его можно привести к виду
y
= f
(5)
или к виду
M ( x, y ) dx + N ( x, y ) dy = 0, (6)
где M ( x, y ) и N ( x, y ) – однородные функции одного порядка, т.е. существует такое k Z, что M ( t x, t y ) = t k M ( x, y ) и N ( t x, t y ) = t k N ( x, y ).
С помощью подстановки
=
u(x)
(y
= xu
=> y
= u
+ x
u)
однородные уравнения (5) и (6) преобразуются
в уравнения с разделяющимися переменными.
Пример 3. Решить
уравнение y
=
+
cos
.
• Положим = u или y = xu. Тогда y = u + x u, что после подстановки в исходное уравнение дает уравнение с разделяющимися переменными
u +
x
u
= u
+
cos
u или
x
=
cos
u.
Разделяем переменные
=
и интегрируем
tg
=
Cx.
Получаем общее решение
u =
2
arctg
Cx –
+
2πn,
n
Z.
Возвращаясь к функции у, находим:
у
= х
,
n
Z.
При делении на
cos
u
были потеряны решения у
= х
,
k
Z.
Добавляя их к полученному семейству решений, окончательно находим
у
= х
,
n
Z;
у
= х
,
k
Z.
Линейные уравнения
Линейным дифференциальным уравнением 1-го порядка называется
уравнение вида
y + p(x) y = q(x), (7)
где p(x) и q(x) – заданные и непрерывные на некотором промежутке функции.
Существует несколько методов интегрирования уравнения (7). Рассмотрим самый распространенный из них – метод Бернулли, называемый «методом u на v». Суть метода в том, что решение этого уравнения ищется в виде произведения
у = u v, (8)
где u = u(x), v = v (x) – неизвестные функции х, причем одна из этих функций произвольна (но не равна тождественно нулю).
Подставляя решение у = u v и его производную у = u v + u v в уравнение (7), получим
u v + u v + p(x) u v = q(x) или u v + u (v + p(x) v) = q(x). (9)
Пользуясь произвольностью в выборе функции v (x), выберем ее так, чтобы выражение в скобках стало равным нулю
v + p(x) v = 0. (10)
Это уравнение с разделяющимися переменными. Решив его и подставив выражение для v в (9), получим следующее уравнение относительно u
u v = q(x). (11)
Решаем это уравнение, находим u = u(x,C). Таким образом, общее решение линейного уравнения (7) у = u(x,C) v.
Пример 4. Найти частное решение дифференциального
уравнения
(решить задачу Коши)
у
=
–
с
начальными условиями у
(1) = 1.
• Это
линейное уравнение вида
у
+ p(x)
y
= q
(x),
в котором
p(x)
= –
,
q
(x)
= –
.
Общее
решение ищем в виде
y
= uv.
Тогда
y
= uv
+ uv
. Имеем:
uv
+ uv
–
= –
=> uv
+ u
= –
.
Подберем функцию
v
так, чтобы
v
–
= 0; тогда
uv
= –
.
Интегрируя
первое из этих
уравнений,
получим:
v
–
= 0 =>
=
=>
=
=> ln
| v
| = ln
| x
| => v
= х.
Подставив полученное выражение для v во второе уравнение, получим:
uх
= –
=> du
= –
dx
.
Интегрируем обе
части данного уравнения:
= –
dx.
Второй интеграл берем по частям:
–
dx
=
=
–
=
+
+ C.
Таким образом, u = + + C, а общее решение исходного уравнения
y
= uv
= x
= ln
x
+ 1 + Cx
.
Подставим в это общее решение начальное условие:
1 = ln 1 + 1 + C ∙ 1 = 0 + 1 + C = 1 + C.
Отсюда получаем, что С = 0.
Таким образом, искомое частное решение имеет вид y = ln x + 1.
Уравнение Бернулли
Уравнением Бернулли называется дифференциальное уравнение 1-го порядка вида
y + p(x) y = q(x) yn, (12)
где n ≠ 0, n ≠ 1 (при n = 0 уравнение (12) является линейным, а при n = 1 – уравнением с разделяющимися переменными). Проинтегрировать уравнение Бернулли можно так же, как и линейное уравнение с помощью подстановки у = u v.
Пример 5.
Решить
дифференциальное уравнение у
=
+
.
• Это уравнение
Бернулли.
Полагая
у = u
v,
приведем
исходное уравнение к виду uv
+ u
=
.
Решаем
первое уравнение
v
–
= 0:
v – = 0 => = => = => ln | v | = ln | x | => v = х.
Второе
уравнение примет вид
uх
=
или
u
=
.
Решаем его:
u
=
=> u
du
= dx
=> u2
= 2x
+ C
=> u
=
.
Перемножая
u
и v,
получим
общее решение исходного уравнения
у = х .
Уравнения в полных дифференциалах
Дифференциальное уравнение 1-го порядка вида
P ( x, y ) dx + Q ( x, y ) dy = 0 (13)
называется уравнением в полных дифференциалах, если его левая часть является полным дифференциалом некоторой функции U ( x, y ), т.е.
P
( x,
y
) =
,
Q
( x,
y
) =
.
Для того, чтобы уравнение (13) было уравнением в полных
=
.
(14)
Если уравнение (13) есть уравнение в полных дифференциалах, то оно может быть записано в виде
d U ( x, y ) = 0.
Общий интеграл этого уравнения:
U ( x, y ) = С,
где С – произвольная постоянная.
Один из способов
нахождения функции U
(x,
y)
состоит в следующем: интегрируя равенство
= P
(x,
y)
по х
при фиксированном у
и замечая, что произвольная постоянная
в этом случае может зависеть от у,
имеем
U
( x,
y
) =
+ φ
(у),
(15)
Затем из равенства
=
=
+ φ´
(у)
= Q
( x,
y
)
находим функцию φ (у), подставив которую в (15), получим функцию
U (x, y).
Пример 6. Решить дифференциальное уравнение
dx + (y3 + ln x)dy = 0.
• Проверим, является ли это уравнение уравнением в полных дифференциалах. Для этого проверим условие (14):
=
=
;
=
(y3
+ ln
x)
=
.
Условие (14) выполнено, следовательно, исходное уравнение есть уравнение в полных дифференциалах.
Найдем функцию U (x, y). Интегрируя по х при постоянном у равенство
=
P
(x,
y)
=
,
получим
U
(x,
y)
=
+ φ
(у)
= y
ln
x
+ φ
(у).
(16)
При вычислении первообразной здесь пишем ln x, а не ln |x|, так как исходное уравнение содержит ln x и, следовательно, имеет смысл лишь при x > 0.
Подставляя (16) в равенство
=
Q
(x,
y)
= y3
+ ln
x,
имеем ln x + φ´ (у) = y3 + ln x,
откуда
φ
(у)
=
=
у4
+ С1.
(17)
Из (16) и (17 ) находим U (x, y) = y ln x + у4 + С1.
Общий интеграл уравнения в полных дифференциалах
U (x, y) = С2. В нашем случае y ln x + у4 + С1 = С2 или, положив С2 – С1 = С, окончательно получим
y ln x + у4 = С.
Рекомендация. Если аналитические вычисления вызывают затруднение, можно перейти к третьему этапу, оставив аналитические вычисления на дом.
2.3. Третий этап работы состоит в написании и отладке программы на знакомом (и доступном для рабочей ПЭВМ) языке программирования. Примеры программ на PASCALе и в Mathcad’е представлены ниже. Эти программы можно использовать в качестве тестовых при выполнении собственных заданий, т.к. отличия в программах будут незначительными.
Программа на PASCALе
program ivanov_koshi_1; {y = y/x – ln(x)/x, y(1)=1}
var
x0,xn,y0,h,x,y,yt:real;
n,i :integer;
function prch(x,y:real):real; {правая часть}
begin
prch:= y/x – ln(x)/x
end;
function anresh(x:real):real; {аналитическое решение}
begin
anresh:= ln(x)+1
end;
begin
writeln (‘введите начальные условия х0, xn, y0’);
read(x0,xn,y0); {ввод x0,xn,y0 }
writeln (‘введите число точек разбиения отрезка [х0, xn]’);
read(n); {ввод n }
h:=(xn–x0)/n;
writeln (“:20,‘Р Е З У Л Ь Т А Т Ы’);{впереди 20 пробелов}
writeln;
writeln (‘ n = ’, n:0, ‘ h = ’, h:0:4);
writeln;
writeln (‘ x точн.реш. числ.реш. абс.ош. отн.ош’);{2,11,6,6,8 пробелов}
writeln;
x:=x0;
y:=y0;
yt:= anresh(x);
for i:=1 to n+1 do
begin
writeln (x:7:3, yt:15:6, y:15:6, abs(yt–y):15:6, abs((yt–y)/yt):15:6);
y:=y+h*prch(x,y);
x:=x+h;
yt:= anresh(x);
end;
readln;
readln;
end.
Окно вывода отлаженной программы должно иметь вид:
введите начальные условия x0, xn, у0
1
3
1
введите число точек разбиения отрезка [х0, xn]
5
Р Е З У Л Ь Т А Т Ы
n = 5 h = 0.4000