Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
«Комсомольский-на-Амуре государственный технический университет»
Факультет Компьютерных технологий
Кафедра математического обеспечения и применения ЭВМ
Расчетно-графическое задание
по курсу «Уравнения математической физики»
Выполнил: Домбровский Г.В.
Проверил: Могильников Е. В.
Комсомольск-на-Амуре
2007
Задание 1.
Решить дифференциальное уравнение, приведя его к каноническому виду.
Решение
Решим задачу в системе Matlab. Сначала определим необходимые переменные:
syms dx dy x y teta eta teta_x teta_y eta_x eta_y u_tt u_t u_te u_e u_ee u_x u_y u_xx u_xy u_yy;
Зададим коэффициенты.
a11=1; a12=-1; a22=1; b1=2; b2=-2
Определим тип уравнения
a12^2-a11*a22
ans =
0
Таким образом, уравнение является параболическим.
Запишем уравнения характеристик
q=solve(a11*dy^2-2*a12*dx*dy+a22*dx^2,dy)
q =
[ -dx]
[ -dx]
Определим из уравнения характеристик функции θ, ή
teta=y-subs(q(1), x, dx)
teta =
y+x
В качестве функции ή выберем функцию
eta=y
eta =
y
Проверим линейную зависимость функций θ и ή, для чего вычислим якобиан этих функций
det(jacobian([teta,eta]))
ans =
1
Определитель матрицы Якоби не равен нулю, значит подобранные функции являются линейно независимыми, то есть подобраны корректно.
Вычислим первые производные функций θ и ή по каждому из аргументов.
teta_x=diff(teta,x)
teta_x =
1
teta_y=diff(teta,y)
teta_y =
1
eta_x=diff(eta,x)
eta_x =
0
eta_y=diff(eta,y)
eta_y =
1
Вычислим производные функции u
u_x=u_t*teta_x+u_e*eta_x
u_x =
u_t
u_y=u_t*teta_y+u_e*eta_y
u_y =
u_t+u_e
u_xx=u_tt*teta_x^2+u_ee*eta_x^2+2*u_te*teta_x*eta_x
u_xx =
u_tt
u_xy=u_tt*teta_x*teta_y+u_ee*eta_x*eta_y+u_te*(teta_x*eta_y+teta_y*eta_x)
u_xy =
u_tt+u_te
u_yy=u_tt*teta_y^2+u_ee*eta_y^2+2*u_te*teta_y*eta_y
u_yy =
u_tt+u_ee+2*u_te
Подставим полученные производные в исходное уравнение
syms f c;
f=0; c=0;
a11*u_xx+2*a12*u_xy+a22*u_yy+b1*u_x+b2*u_y+f
ans =
u_ee-2*u_e
В итоге был получен канонический вид уравнения парболического вида:
(1)
Применив метод разделения переменных, представим искомую функцию u в виде:
(2)
Из равенства (2) вычислим производные функции u:
Подставим полученные выражения в уравнение (1):
Поскольку , то . Решим это уравнение:
d=dsolve('D2b-2*Db=0', 'eta')
d =
C1+C2*exp(2*eta)
где , .
Таким образом, решение имеет вид
(3)
А(θ) – дважды непрерывно дифференцируемая функция. Произведем замену в уравнении (3):
Таким образом уравнение (3) примет вид:
Подставим вместо θ и ή выбранные нами функции
θ= y+x
ή =y
Получим общее решение уравнения (1):
где , – дважды непрерывно-дифференцируемые функции.
Проверим полученное решение.
teta=y+x
teta =
y+x
eta=y
eta =
y
C3=teta
C3 =
y+x
C4=teta
C4 =
y+x
u=C3+C4*exp(2*eta)
u =
y+x+(y+x)*exp(2*y)
Подставим в исходное уравнение.
a11*diff(diff(u, x), x)+2*a12*diff(diff(u, x), y)+a22*diff(diff(u, y), y)+b1*diff(u, x)+b2*diff(u, y)+c*u+f
ans =
0
В результате получили выражение туждественно равное нулю, значит уравнение решено верно.
Задание 2.
Решить дифференциальное уравнение, приведя его к каноническому виду.
.
Решение
Решим задачу в системе Matlab. Сначала определим необходимые переменные:
syms dx dy x y teta eta teta_x teta_y eta_x eta_y u_tt u_t u_te u_e u_ee u_x u_y u_xx u_xy u_yy;
Зададим коэффициенты.
a11=3; a12=2; a22=1; b1=0; b2=0; c=0; f=0;
Опредлим тип уравнения.
a12^2-a11*a22
ans =
1
a12^2-a11*a22>0, значит уравнение гиперболического типа.
Запишем уравнение характеристик
q=solve(a11*dy^2-2*a12*dx*dy+a22*dx^2,dy)
q =
[ 1/3*dx]
[ dx]
Определим из уравнения характеристик функции θ, ή
teta=y-subs(q(1),x,dx)
teta =
y-1/3*x
eta=y-subs(q(2),x,dx)
eta =
y-x
Проверим полученные функции на линейную зависимость.
det(jacobian([teta,eta]))
ans =
2/3
Якобиан не равен нулю, значит полученые функции линенйно независимы.
Вычислим первые производные функций θ и ή по каждому из аргументов.
teta_x=diff(teta, x)
teta_y=diff(teta, y)
eta_x=diff(eta, x)
eta_y=diff(eta, y)
teta_x =
-1/3
teta_y =
1
eta_x =
-1
eta_y =
1
Вычислим производные функции u
u_x=u_t*teta_x+u_e*eta_x
u_x =
-1/3*u_t-u_e
u_y=u_t*teta_y+u_e*eta_y
u_y =
u_t+u_e
u_xx=u_tt*teta_x^2+u_ee*eta_x^2+2*u_te*teta_x*eta_x
u_xx =
1/9*u_tt+u_ee+2/3*u_te
u_xy=u_tt*teta_x*teta_y+u_ee*eta_x*eta_y+u_te*(teta_x*eta_y+teta_y*eta_x)
u_xy =
-1/3*u_tt-u_ee-4/3*u_te
u_yy=u_tt*teta_y^2+u_ee*eta_y^2+2*u_te*teta_y*eta_y
u_yy =
u_tt+u_ee+2*u_te
Подставим полученные производные в исходное уравнение.
a11*u_xx+2*a12*u_xy+a22*u_yy+b1*u_x+b2*u_y+f
ans =
-4/3*u_te
Получаем канонический вид уравнения гиперболического типа:
.
Решением этого уравнения является решение:
, где , .
Выполним обратную подстановку
.
где , – дважды непрерывно-дифференцируемые функции.
Проверим полученное решение.
Выберем и следующим образом
C1=5*teta-3
C1 =
5*y-5/3*x-3
C2=9*eta^2
C2 =
9*(y-x)^2
u=C1+C2
u =
5*y-5/3*x-3+9*(y-x)^2
Подставим в исходное уравнение.
a11*diff(diff(u, x), x)+2*a12*diff(diff(u, x), y)+a22*diff(diff(u, y), y)+b1*diff(u, x)+b2*diff(u, y)+c*u+f
ans =
0
Полученное равенство тождетвенно равно нулю, значит решение найдено верно.
Список использованной литературы.
1. Владимиров В.С., Жаринов В.В. Уравнения математической физики: Учебник для вузов. – 2-е изд., стереотип. – М.: ФИЗМАТЛИТ, 2003. – 400 с.
2. Бицадзе А.В. Уравнения математической физики. М.: Наука. – 1976. – 296 с.
3. Дьяконов В.П., Абраменкова И.В. MATLAB 5.0/5.3. Сиситема символьной математики. М.: Нолидж. – 1999. – 640с.
4. Егорова Ю.Г. Некоторые задачи математической физики: Учебное пособие. – Комсомольск-на-Амуре гос. тех. ун-т, 2001. – 87 с.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.