Решение неоднородной задачи Дирихле для уравнения Лапласа методом R-функций


Отчёт

о выполнении вычислительной практики

на тему:

«Решение неоднородной задачи Дирихле для равнения Лапласа методом R- функций»


Цель работы: изучение численно- аналитического метода решения краевых задач математической физики на примере неоднородной задачи Дирихле для уравнения Лапласа. Численная реализация вычислительного метода и вычислительного эксперимента. Оформление пояснительной записки.

Постановка задачи: требуется найти функцию , удовлетворяющую в области ?2 уравнению Лапласа



Вариант задания:



Вариант 6: =5


1. Теоретическая часть

дирихле краевой математический вычислительный

Для решения краевой задачи предлагается использовать метод R- функций, согласно которому решение ищется в виде структуры решения u=В(?,?)+?0. Здесь ?- неопределенная функциональная компонента такая, что при любом ее выборе структура решения представляет собой пучок функций. Таким образом, структура решения осуществляет продолжение граничных условий внутрь рассматриваемой области.

При этом заметим, что выражение ?=0 задает в неявном виде уравнение границы области ?, а построение функции ? осуществляется следующим образом. Область ? подлежит декомпозиции на так называемые элементарные (опорные) области (i=1, 2, …, m). Задается булева функция F(X1, X2, …, Xm) и предикат, определяющий область ?, сконструированную из опорных областей (i=1, 2, …, m) по логическим правилам, определяемым булевой функцией F, с помощью следующих логических операций над множествами: «»- пересечения, «»- объединения и «»- дополнения. Формально это можно записать в виде



Затем осуществляется переход от предикатного способа задания области ? к аналитическому виду ?=(?(x,y)?0) с помощью следующей системы R- функций:



Здесь - R- конъюнкция, - R- дизъюнкция, , В частности, используют -1.

При этом происходит формальная замена ? на ?(x,y), на (i=1, 2, …, m), а символы заменяются на символы R-операций {}, соответственно. Поясним суть данного метода на примере. Пусть требуется построить уравнение границы области ?, представленной на рисунке 1.

Область ? может быть сформирована с помощью следующих опорных областей:


, .


Логическую формулу области ? зададим в виде ?=Тогда область ? может быть записана с помощью неравенства



Значит, уравнение области ? имеет вид



Отметим, что функция удовлетворяет условиям: в ?, на ? и во всех регулярных точках границы выполнено .

Рассмотрим вопрос о построении функции ?0. Для этого, например, можно воспользоваться формулой



Рассмотрим вопрос о выборе неопределенной компоненты ?. Обычно для ее аппроксимации используется выражение



где (j=1,2,…, p) - неизвестные коэффициенты, {}- некоторая полная система функций, например, тригонометрические или степенные полиномы, финитные сплайны и т.д.

Для решения задачи (1) и (2) перейдем к однородным краевым условиям, для чего сделаем замену где ?(- новая неизвестная функция, такая, что



где

С однородной краевой задачей (3), (4) свяжем оператор А, действующий по правилу область определения которого


Как известно, в этом случае оператор А будет положительно определенным. пополнив область определения в метрике, порожденной скалярным произведением получим соответствующее энергетическое пространство HA=W21. Такая краевая задача (3), (4) эквивалентна задаче нахождения в HA минимума функционала

В соответствии с методом R- функций приближенное решение задачи (3), (4) представим в виде (5)

Считаем, что система удовлетворяет условиям:

)Все элементы (j=1,2,…, p);

)Последовательность {} полна в ;

)При любом p функции линейно независимы.

Для определения неизвестных (j=1,2,…, p) воспользуемся методом Ритца, в результате получим следующую СЛАУ (система Ритца)



Определитель такой системы есть определитель Грама линейно независимых элементов и потому отличен от нуля. Отсюда следует, что система Ритца всегда разрешима единственным образом. Найдя коэффициенты и подставив и в выражение (5) для функции получим, таким образом, элемент , который является приближенным решением задачи (1), (2) по Ритцу.

Замечание: При численной реализации вычислительного метода в качестве систем функций удобно использовать финитные кубические сплайны Шенберга.


2. Листинг программы


> alpha:= 0;

> rcon:= proc (x, y) options operator, arrow;

(x+y-sqrt(x^2+y^2-2*alpha(x, y)*x*y))/(1+alpha(x, y)) end proc;

> rdez:= proc (x, y) options operator, arrow;

(x+y+sqrt(x^2+y^2-2*alpha(x, y)*x*y))/(1+alpha(x, y)) end proc;

> t1:= rdez(y-(1/2)*x-(1/4), -y);

> t2:= rdez(t1, x);

> t3:= rcon(t2, 1-x*x-y*y);

> with(plots):(t3,x=-1..1,y=-1..1,numpoints=10000);, the name changecoords has been redefined



> implicitplot3d(z-t3, x=-1..1, y=-1..1, z=0..10, numpoints=10000, shading= ZHUE);



> phi0:= (6*t2 +5*(1-x*x-y*y))/(t2+1-x*x-y*y);

> n:= u->piecewise(u<0,0,0<=u,1);

> B:= t->(1/4)*(t+2)^3*n(t+2)-4*(t+1)^3*n(t+1)+6*t^3*n(t)-4*(t-1)^3*n(t-1)+(t-2)^3*n(t-2);

a:= -1; b:= 1; c:= -1; d:= 1;i from 1 to p doj from 1 to p do[i, j]:= evalf(int(int(((diff(omega, x))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)+(diff(omega, y))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i))*((diff(omega, x))*B(N*(x-a)/(b-a)-j)*B(N*(y-c)/(d-c)-j)+(diff(omega, y))*B(N*(x-a)/(b-a)-j)*B(N*(y-c)/(d-c)-j)), y = (1/2)*x+1/4..sqrt(1-x*x), x = -1.. 0))+evalf(int(int(((diff(omega, x))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)+(diff(omega, y))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i))*((diff(omega, x))*B(N*(x-a)/(b-a)-j)*B(N*(y-c)/(d-c)-j)+(diff(omega, y))*B(N*(x-a)/(b-a)-j)*B(N*(y-c)/(d-c)-j)), y = 0.. sqrt(1-x^2)), x = 0.. 1))+evalf(int(int(((diff(omega, x))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)+(diff(omega, y))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i))*((diff(omega, x))*B(N*(x-a)/(b-a)-j)*B(N*(y-c)/(d-c)-j)+(diff(omega, y))*B(N*(x-a)/(b-a)-j)*B(N*(y-c)/(d-c)-j)), y = -sqrt(1-x^2))..0, x = -1.. 0));[i]:= evalf(int(int((diff(phi0, x)+diff(phi0, y))*((diff(omega, x))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)+(diff(omega, y))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)), y =(1/2)*x+1/4.. sqrt(1-x*x), x = -1.. 0))+evalf(int(int((diff(phi0, x)+diff(phi0, y))*((diff(omega, x))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)+(diff(omega, y))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)), y = 0.. sqrt(1-x^2)), x = 0.. 1))+evalf(int(int((diff(phi0, x)+diff(phi0, y))*((diff(omega, x))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)+(diff(omega, y))*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i)), y = -sqrt(1-x^2)..0, x = -1.. 0);od;(linalg)::= coldim(A);i from 1 to p-1 do[i+1]:= A[i+1, i];[i]:= A[i, i + 1]; od;i from 1 to p do[i]:=A[i,i]; od;[2]:= -c[1]/b[1];[2]:= d[1]/b[1];i from 2 to p-1 do [i+1]:= -c[i]/(b[i]+a[i]*alpha[i]);[i+1]:= (-a[i]*beta[i] + d[i]) / (b[i] + a[i]*alpha[i]); od;[p]:= (-a[p]*beta[p]+d[p])/(b[p]+a[p]*alpha[p]);i from p-1 to 1 by -1 do [i]:= alpha[i+1]* x[i+1] + beta[i+1]; od;:= -1; b:= 1; c:= -1; d:= 1;:= phi0+omega*(sum(x[i]*B(N*(x-a)/(b-a)-i)*B(N*(y-c)/(d-c)-i), i = 1.. ));


Вывод


В ходе выполнения данной работы был изучен численно-аналитический метод решения краевых задач математической физики на примере неоднородной задачи Дирихле для уравнения Лапласа. Была проведена численная реализация вычислительного метода и проведен вычислительный эксперимент.

Вычислили приближенное решение задачи. Для проведения вычисления системы воспользовались методом Ритца, также в ходе вычислений в качестве системы функций {?j(x,y)} использовались финитные кубические сплайны Шенберга.


Список использованной литературы


1. Михлин С.Г. Вариационные методы в математической физике. - М.: Наука, 1970.

. Рвачев В.Л. Теория R-функций и некоторые ее приложения. - М: Наука, 1982.

3. Maple 9.5. Advanced Programming Guide (в электронном виде).


Теги: Решение неоднородной задачи Дирихле для уравнения Лапласа методом R-функций  Практическое задание  Математика
Просмотров: 35962
Найти в Wikkipedia статьи с фразой: Решение неоднородной задачи Дирихле для уравнения Лапласа методом R-функций
Назад