GeoSELECT.ru



Математика / Реферат: Решение задачи Дирихле для уравнения Лапласа методом сеток (Математика)

Космонавтика
Уфология
Авиация
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Аудит
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника
Бухгалтерский учет
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Инвестиции
Иностранные языки
Информатика
Искусство и культура
Исторические личности
История
Кибернетика
Коммуникации и связь
Компьютеры
Косметология
Криминалистика
Криминология
Криптология
Кулинария
Культурология
Литература
Литература : зарубежная
Литература : русская
Логика
Логистика
Маркетинг
Масс-медиа и реклама
Математика
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Мифология
Москвоведение
Музыка
Муниципальное право
Налоги
Начертательная геометрия
Оккультизм
Педагогика
Полиграфия
Политология
Право
Предпринимательство
Программирование
Психология
Радиоэлектроника
Религия
Риторика
Сельское хозяйство
Социология
Спорт
Статистика
Страхование
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Физика
Физкультура
Философия
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
   

Реферат: Решение задачи Дирихле для уравнения Лапласа методом сеток (Математика)



1. ПОСТАНОВКА ЗАДАЧИ

Решить численно задачу Дирихле для уравнения Лапласа :
[pic]

(x,y) ?D ; u|Г=xy2=f(x,y) ;

область D ограничена линиями: x=2 , x=4 , y=x , y=x+4 ;

(x0, y0 ) = (3, 5) .

Следует решить задачу сначала с шагом по x и по y : h=0.2, потом с
шагом h=0.1 . Точность решения СЛАУ ?=0.01 .


2. ОПИСАНИЕ МЕТОДА РЕШЕНИЯ ПОСТАВЛЕННОЙ ЗАДАЧИ

Поставленная задача решается численно с помощью программы,
реализующей метод сеток , разработанный для численного решения задачи
Дирихле для уравнений эллептического типа.
Программа написана на языке C++ , в среде Borland C++ версии 3.1. Ниже
описан алгоритм работы этой программы.


1. На первом шаге область D дискретизируется. Она заменяется на
область Dh путем разбиения области D параллельными прямыми по следующему
правилу: yi=y0 ± ih, xj=x0 ± ih , i,j=0,1,2…. РР
Разбиение производится до тех пор, пока текущая прямая не будет лежать
целиком вне области D. Получается множество точек (xi,yj).
2. За область Dh принимают те точки множества (xi,yj) , которые
попали внутрь области D, а также дополняют это множество граничными
точками.
3.Во всех точках области Dh вычисляются значения функции f(xi,yj)
.
4. За область Dh* принимаются все внутренние точки области Dh, т.е.
удовлетворяющие требованию:
(xi,yj) ? Dh* , если (xi+1,yj) ? Dh , (xi-1,yj) ? Dh ,
(xi,yj+1) ? Dh , (xi,yj-1) ? Dh .
5. Во всех точках области Dh* вычисляется функция F(N)*[i,j] (
индекс N обозначает номер итерации, на которой производится вычисление):


F(N)*[i,j]=(f(xi+1,yj) + f(xi-1,yj) + f(xi,yj+1)
+ f(xi,yj-1))/4
6. Теперь если max | F(N+1)*[i,j] - F(N)*[i,j]|< ? ,взятый по всем
точкам области Dh* ,то задача решена;
если нет , то выполнять шаг 5 ( пересчитывать функцию
F(N)*[i,j] через значения F(N-1)*[i,j]) до тех пор, пока не выполнится
указанное условие.



3.ТЕКСТ ПРОГРАММЫ

#include
#include
#include
#include
#include

int i,j,k; // Variables
float h,x,y,tmp,E1;
struct point {
float xx;
float yy;
int BelongsToDh_;
int BelongsToDh;
float F;
float F_;
} p0,arrayP[13][33];
float arrayX[13];
float arrayY[33];
float diff[500];

void CreateNet(void); // Procedure Prototypes
int IsLineFit(float Param);
void CrMtrD(void);
void RegArrayX();
void RegArrayY();
void CreateDh_();
int IsFit(point Par);
void FillF();
void CreateDh();
int IsInner(int i,int j);
void FillF_();
void CountDif();
void MakeFile();

void main(void) //MAIN
{
clrscr();
p0.xx = 3;
p0.yy = 5;
h = 0.2;
p0.BelongsToDh_=1;
p0.BelongsToDh=1;
CreateNet();
RegArrayX();
RegArrayY();
CrMtrD();
CreateDh_();
FillF();
CreateDh();
FillF_();
CountDif();
while (E1>=0.005) {
for(i=0;i

Новинки рефератов ::

Реферат: Культура (Культурология)


Реферат: Совершенствование программы развития туризма Псковской областии (Менеджмент)


Реферат: Выбор оптимальных сетевых решений на базе многозадачных операционных систем для построения компьютерной сети вуза (Программирование)


Реферат: Орден Иисуса и Игнатий Лойол (Религия)


Реферат: Проблемы готовности детей к обучению в школе (Педагогика)


Реферат: Сталь и чугун (Химия)


Реферат: Мотивация и стимулирование работников на примере ТОО Фудмастер (Менеджмент)


Реферат: Формирование действия контроля в процессе работы над вычислительными приемами и навыками у младших школьников (Педагогика)


Реферат: Курс лекций в Московском Государственно-Индустриальном Университете (Менеджмент)


Реферат: Основные направления развития творческих способностей первоклассников на материале декоративно-прикладного искусства (Педагогика)


Реферат: Идол 90-х Курт Кобейн (Исторические личности)


Реферат: Социальный конфликт (Социология)


Реферат: Бухгалтерский учет (Бухгалтерский учет)


Реферат: Деление живой природы на царства (Биология)


Реферат: Правопреемство в международном праве (Международное публичное право)


Реферат: Общие начала назначения наказания (Уголовное право и процесс)


Реферат: Анализ эксплуатационного обслуживания ВЦ средней производительности (Программирование)


Реферат: Риски коммерческих банков (Банковское дело)


Реферат: Комплексная механизация и автоматизация (Транспорт)


Реферат: Гражданская Война (История)



Copyright © GeoRUS, Геологические сайты альтруист