Для своего варианта функционала выведите дифференциальное уравнение Эйлера-Остроградского и решите его c помощью PDE Toolbox MATLAB. Примечание: Если на рисунке указано “r = ” – то это часть окружности, если символа “r ” нет – то часть эллипса. Вариант 27. Начало координат − в левом нижнем углу. Граничные условия: на верхней дуге u = 10−3(y−0.15), на остальных сторонах u = 0. Приложить файл для программы PDE Toolbox MATLAB. Ниже указан пример готового решения задачи Применение MATLAB для решения уравнений в частных производных Рассмотрим графические возможности МАТЛАБ на примере вывода решения дифференциального уравнения в частных производных Эйлера-Остроградского. Пример 1. Найти экстремаль функционала: в прямоугольной области x[0,a]; y [0,b], показанной на рис.3. 19 Рис.3. Область решения примера 1 Граничные условия: на правой стороне x = a: на остальных сторонах z = 0. Выведем вначале уравнение Эйлера-Остроградского вида: Fz Получим: Fz Fp x Fq y y 2 x sin b 2 Fp x Fq y 0 y z z 2z 2z 2 2 2 2 0, 2 2 x sin x x y y b x y или, после сокращения на 2: y 2z 2z 2 x sin . 2 b x y (8) Граничные условия по переменной y однородные, поэтому будем искать решение в виде ряда Фурье по собственным функциям Yn(y), которые равны: Yn y sin Ищем решение в виде ряда: u ( x, y ) X n ( x) sin n 1 n y . b n y . b (9) Это решение удовлетворяет граничным условиям на нижней и верхней сторонах: при y=0 и y=b. Для нахождения функций Xn(x) подставим решение (9) в уравнение (8): n y n2 2 n y 2 X n ( x) sin b b b n 1 2 2 n y y X n" ( x) n 2 X n ( x) sin x sin . b b b X n" ( x) sin n 1 n 1 20 Левая часть данного уравнения является разложением в ряд Фурье по Yn(y). Разложим в такой же ряд правую часть этого уравнения. Собственно, она уже разложена: в этом ряду присутствует только первый член (n=1), а коэффициенты при остальных гармониках равны нулю. Известно, что два ряда Фурье тождественны друг другу тогда и только тогда, когда равны все их коэффициенты. Поэтому из полученного уравнения можно получить бесконечную систему дифференциальных уравнений для функций Xn(x): " 2 X ( x ) X 1 ( x) x ; 1 b2 2 2 X n" ( x) n X n ( x) 0, n 1 . b2 (10) Граничные условия для данного уравнения можно получить, раскладывая граничные условия на левой и правой сторонах в ряд Фурье по Yn(y). На левой стороне x=0 имеем z=0, и, следовательно, коэффициенты разложения данной функции нулевые: (11) X n (0) 0 n . На правой стороне x=a имеем граничное условие: Подставим в него решение (9): X n 1 n (a ) sin n y y sin b b Это возможно тогда и только тогда, когда: X 1 (a) 1; X n (a) 0; n 1. (12) Решаем систему дифференциальных уравнений (10) при граничных условиях (11) и (12). При n>1 имеем: n 2 2 X n ( x) 0 ; b2 n x n x X n ( x) C1 ch C 2 ch . b b X n" ( x) (13) Подставляем граничные условия: X n (0) C1 0 ; X (a) C sh n a 0 . 2 n b Во втором уравнении второй множитель (гиперболический синус) не равен нулю, поэтому C2=0. Следовательно, n 1 : X n ( x) 0 . 21 Далее найдем X1(x). Дифференциальное уравнение для него – это 1-е уравнение системы (10). Для решения такого уравнения следует взять сумму общего решения соответствующего однородного уравнения вида (13) и частного решения неоднородного уравнения. В результате получим: X 1 ( x) C1 ch x b C 2 ch x b b2 x 2 Значения произвольных постоянных С1 и С2 найдем из граничных условий (11) и (12): X 1 (0) C1 0 ; a b2 a X ( a ) C sh 2 1. 2 1 b Отсюда находим: 1 b2 a 2 b a . C2 a a sh 2 sh 2 b 2 b Решением рассматриваемой задачи является первая гармоника ряда: u ( x, y ) X n ( x) sin n 1 n y b Таким образом: График (рис.4) этой функции при a = 1 и b = 2 выглядит следующим образом: clear all % очистили память a=1; % задали размеры b=2; x=linspace(0,a,40); y=linspace(0,b,80); [X,Y]=meshgrid(x,y); % сетка U=((pi^2+b^2*a)/(pi^2*sinh(pi*a/b))*sinh(pi*X/b)-... b^2*X/pi^2).*sin(pi*Y/b); % вычисляем функцию surf(X,Y,U) % рисуем поверхность 22 set(get(gcf,'CurrentAxes'),... 'FontName','Times New Roman Cyr','FontSize',12) da=daspect; % текущие масштабы осей da(1:2)=min(da(1:2)); % одинаковые масштабы daspect(da); % установили одинаковые масштабы title('\bf Пример 1') xlabel('\itx') % ось OX ylabel('\ity') % ось OY zlabel('\itu\rm(\itx\rm,\ity\rm)') % ось OZ Пример 1 Пример 1 Рис.4. Решение примера 1 23