Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Реферат: Численное решение модельного уравнения

Название: Численное решение модельного уравнения
Раздел: Рефераты по математике
Тип: реферат Добавлен 12:41:01 27 марта 2008 Похожие работы
Просмотров: 55 Комментариев: 23 Оценило: 2 человек Средний балл: 5 Оценка: неизвестно     Скачать

диссипации, конвекции и кинетики

СОДЕРЖАНИЕ

1. Общая постановка задачи

2. Постановка тестовых задач

3. Методика решения тестовых задач

4. Результаты вычислений

Список литературы

Приложения

Приложение 1: Описание программы

Приложение 2: Текст программы

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

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

( 1 )

где температура (или концентрация). Пусть являются некоторыми константами и . Уравнение (1) при указанных выше предположениях называется модельным уравнением диссипации, конвекции и кинетики. Слагаемые правой части имеют следующий физический смысл:

- соответствует переносу тепла теплопроводностью (или вещества диффузией);

- соответствует конвективному переносу;-

- "кинетический член", соответствует источнику, пропорционально-

му температуре или концентрации;

- интенсивность внешних источников или стоков.

В дальнейшем будем рассматривать только тепловую интерпретацию уравнения (1).

Численное решение уравнения (1) будем искать в области :

( 2 )

при заданных начальных значениях температуры: ( 3 )

и граничных условиях.

Граничные условия описывают режимы теплообмена с внешней средой:

при ;

при .

2. ПОСТАНОВКА ТЕСТОВЫХ ЗАДАЧ

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

( 9 )

( 10 )

( 11 )

( 12 )

( 13 )

Для функции (9) имеем:

Для функции (10):

Для функции (11):

Для функции (12):

Для функции (13):

Данные функции тестировались на отрезке по X: [0, 1] , по времени: [0, 1], с количеством разбиений по этим отрезкам - 30 .

3. МЕТОДИКА РЕШЕНИЯ ТЕСТОВЫХ ЗАДАЧ

Данная задача решается с помощью двухслойной неявно конечно-разностной схемы.

Схема реализуется в три этапа.

1 этап: находятся предварительные значения с помощью 4-х точечной неявной схемы:

( 5 )

2 этап: используется за два шага. Сначала находятся на полученном слое () с шагом , а затем через . В этом случае используется 4-х точечная неявная разностная схема:

( 6 )

( 7 )

3 этап: окончательные значения находятся в виде линейной комбинации двух предварительных значений:

( 8 )

Для решения (1) воспользуемся формулами (5) - (8). Данные уравнения представляют трех диагональные матрицы, решаемые методом скалярной прогонки.

В начале нужно преобразовать (5) – (7) к виду:

( 14 )

Тогда (5) примет вид:

Т.е. ;

;

;

.

Формула (6) преобразуется в:

Т.е. ;

;

;

.

Формула (7) преобразуется в:

Т.е. ;

;

;

.

Далее решаем по формулам скалярной прогонки:

( 15 )

( 16 )

Для определения , и воспользуемся данными граничными условиями, т.е. формулой (4) и функцией . Так если мы берём из формулы (9), то имеем:

Приведём это выражение к виду: .

Т.е. теперь мы имеем и :

Далее найдем конечное :

( 18 )

Проведя аналогичные расчёты для заданных формулами (10) – (13), мы получим соответствующие , и . Далее мы можем решить системы методом прогонки и получить требуемый результат.

4. РЕЗУЛЬТАТЫ ВЫЧИСЛЕНИЙ

В результате проведённых испытаний программа показала свою высокую надёжность. Были получены следующие данные.

При расчёте с использованием функции и входных данных ; ; ; ; ; ; на отрезке по X и по времени [0,1] с шагом 0,033 был получен результат с ошибкой равной 0,0675 .

Для функции при ; ; ; ; ; ; , на том же промежутке, ошибка составляет 0,055 .

С функцией и ; ; ; ; ; ; ошибка примет значение 0,0435 .

При и условиях ; ; ; ; ; ; в результате возникает ошибка равная 0,0055 .

И, наконец, если выбрана функция и ; ; ; ; ; ; , то ошибка составит 0,00255 .

Т.е. можно сказать, что мы имеем результат с первым порядком точности. Столь малую точность можно объяснить тем, что производная, найденная при граничных условиях, так же имеет первый порядок точности.

СПИСОК ЛИТЕРАТУРЫ

1. А. Епанешников, В. Епанешников Программирование в среде Turbo-Pascal 7.0. - М.: Диалог - Мифи, 1996. - 288 с.

2. Петухова Т. П., Сибирцев В. В. Пакет прикладных программ для численного моделирования процессов тепло- и массопереноса. – Караганда: Изд-во КарГУ. 1993

3. Фигурнов В. Э. IBMPC для пользователя. - М.: Инфра - М, 1995. - 432 с.

Приложение 1

ОПИСАНИЕ ПРОГРАММЫ

Поставленная задача была программно реализована на языке программирования Turbo-Pascal 7.0.

В состав программы входят следующие файлы:

basis.pas - PAS-файл основной части программы

(решение системы уравнений методом скалярной прогонки);

basis.v&v - EXE-файл основной части программы (вызывается из START.PAS);

fun.bmp - BMP-фаил с изображением функций;

inform.v&v - TXT-фаил с информацией о программе (вызывается из START.PAS);

music.v&v - музыкальный EXE-фаил (вызывается из START.PAS);

my_menu.pas - UNIT для создания меню;

sea.exe - программа для просмотра графических файлов;

start.pas - файл для запуска всей программы;

u - файл с результатами работы;

zastavka.v&v - EXE-фаил с заставкой к основной программе

(вызывается из START.PAS).

Файл START является, как бы оболочкой программы, из которой вызываются другие файлы. Сам процесс решения содержится в файле BASIS.

BASIS содержит следующие процедуры и функции:

Function Fun_U (Xm,t:real):real;

Вход: значение по X и значение по времени t, а также глобальная переменная выбранной

функции SelectFunction.

Действие: вычисляет точное значение функции U при заданных X и t.

Выход: Fun_U – значение функции.

Function Fun_F (Xm,t,a,b,v:real):real;

Вход: значение по X, по времени t, коэффициенты , , и номер выбранной функции

SelectFunction.

Действие: вычисляет значение функции F при заданных X, t, , , .

Выход: Fun_F – значение функции F.

Function Betta_Zero (time:real): real;

Вход: значение времени t и глобальные коэффициенты , , , номер выбранной

функции SelectFunction.

Действие: вычисляет , используемое в методе скалярной прогонки.

Выход: Betta_Zero – значение .

Function U_End (time,Alf,Bet:real): real;

Вход: значение времени t, , и глобальные коэффициенты , , , номер выбран-

нойфункции SelectFunction.

Действие: вычисляет используемое в методе скалярной прогонки.

Выход: U_End – значение .

Procedure PrintArray;

Вход: использует глобальный массив данных U_m.

Действие: выдает содержимое U_m на экран и в файл.

Выход: вывод U_m.

Приложение 2

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

Основная часть программы выглядит так:

Program Basis;

Uses Crt; { Подключениебиблиотек }

Label Metka1,Metka2; { Метки }

Var

a, b, v : real; { Коэффициенты, задаются пользователем }

h, tau : real; { Шаг по X и по времени соответственно }

X,x0 : real; { Конечное и начальное значение X }

m,n,k : word; { Переменные используемые в циклах для расчета }

T,t0 : real; { Конечное и начальное значение времени }

Kol_voX, Kol_voT : word; { Количество разбиений по X и по времени }

U_m,U_,_U_1_2,_U_1 : array [0..200] of real; { Массивы результатов }

z : array [0..200] of real; { Массив точных решений }

Xm : real; { Промежуточный X }

Alfa,Betta : array [0..200] of real; { Массив коэффициентов используемых при скалярной прогонке }

a_progonka, b_progonka, c_progonka, d_progonka : real; { Коэффициенты для скалярной прогонки }

Error : real; { Значение ошибки }

time : real; { Переменная времени }

ch : char; { Код нажатой клавиши }

SelectFunction:word; { Номер выбранной функции }

U : text; { Переменная для вывода результата в файл }

Alfa_1,Alfa_2,Betta_1,Betta_2 : real; { Коэффициенты граничных условий }

Data : word; { Переменная режима ввода начальных данных }

Function Fun_U (Xm,t:real):real; { Функция U (точное решение) }

begin

If SelectFunction=1 then Fun_U:=SQR(Xm)*Xm+SQR(t);

If SelectFunction=2 then Fun_U:=SQR(Xm)*SQR(t)*t+10*Xm*t+SQR(SQR(t))*Xm;

If SelectFunction=3 then Fun_U:=Xm*SIN(Xm*t)-4*SQR(Xm)*COS(t);

If SelectFunction=4 then Fun_U:=t*EXP(Xm);

If SelectFunction=5 then Fun_U:=SIN(Xm)+EXP(t);

end;

Function Fun_F (Xm,t,a,b,v:real):real; { Функция F }

begin

if SelectFunction=1 then Fun_F:=2*t-v*6*Xm+a*3*SQR(Xm)-b*(SQR(Xm)*Xm+SQR(t));

if SelectFunction=2 then Fun_F:=3*SQR(Xm)*SQR(t)+10*Xm+4*SQR(t)*t*Xm-v*2*SQR(t)*t+

a*(2*Xm*SQR(t)*t+10*t+SQR(SQR(t)))-b*(SQR(Xm)*SQR(t)*t+10*Xm*t+Xm*SQR(SQR(t)));

if SelectFunction=3 then Fun_F:=SQR(Xm)*COS(Xm*t)+4*SQR(Xm)*SIN(t)-v*(2*COS(Xm*t)*t-

Xm*SIN(Xm*t)*SQR(t)-8*COS(t))+a*(SIN(Xm*t)+Xm*t*COS(Xm*t)-8*COS(t)*Xm)-

b*(Xm*SIN(Xm*t)-4*SQR(Xm)*COS(t));

if SelectFunction=4 then Fun_F:=EXP(Xm)-v*(t*EXP(Xm))+a*(t*EXP(Xm))-b*(t*EXP(Xm));

if SelectFunction=5 then Fun_F:=EXP(t)-v*(-SIN(Xm))+a*(COS(Xm))-b*(SIN(Xm)+EXP(t));

end;

Function Betta_Zero (time:real): real; { Функция Betta[0] дляпрогонки }

begin

If SelectFunction=1 then Betta_Zero:=(h/(Betta_1*h-Alfa_1))*(Alfa_1*3*SQR(x0)+

Betta_1*(SQR(x0)*x0+SQR(time)));

If SelectFunction=2 then Betta_Zero:=(h/(Betta_1*h-Alfa_1))*(Alfa_1*(2*x0*SQR(time)*time+

10*time+SQR(SQR(time)))+Betta_1*(SQR(x0)*SQR(time)*time+10*x0*time+SQR(SQR(time))*x0));

If SelectFunction=3 then Betta_Zero:=(h/(Betta_1*h-Alfa_1))*(Alfa_1*(SIN(x0*time)+

x0*time*COS(x0*time)-8*x0*COS(time))+Betta_1*(x0*SIN(x0*time)-4*SQR(x0)*COS(time)));

If SelectFunction=4 then Betta_Zero:=(h/(Betta_1*h-Alfa_1))*(Alfa_1*(time*EXP(x0))+

Betta_1*(time*EXP(x0)));

If SelectFunction=5 then Betta_Zero:=(h/(Betta_1*h-Alfa_1))*(Alfa_1*(COS(x0))+

Betta_1*(SIN(x0)+EXP(time)));

end;

Function U_End (time,Alf,Bet:real): real; { Функция Um дляпрогонки }

begin

If SelectFunction=1 then U_End:=(Alfa_2*h*3*SQR(X)+Betta_2*h*(SQR(X)*X+SQR(time))

+ Bet*Alfa_2)/(Alfa_2-Alf*Alfa_2+h*Betta_2);

If SelectFunction=2 then U_End:=(Alfa_2*h*(2*X*SQR(time)*time+10*time+SQR(SQR(time)))+

Betta_2*h*(SQR(X)*SQR(time)*time+10*X*time+SQR(SQR(time))*X)

+Bet*Alfa_2)/(Alfa_2-Alf*Alfa_2+h*Betta_2);

If SelectFunction=3 then U_End:=(Alfa_2*h*(SIN(X*time)+X*time*COS(X*time)-8*X*COS(time))+

Betta_2*h*(X*SIN(X*time)-4*SQR(X)*COS(time))+Bet*Alfa_2)/(Alfa_2-Alf*Alfa_2+h*Betta_2);

If SelectFunction=4 then U_End:=(Alfa_2*h*(time*EXP(X))+Betta_2*h*(time*EXP(X))+Bet*Alfa_2)/

(Alfa_2-Alf*Alfa_2+h*Betta_2);

If SelectFunction=5 then U_End:=(Alfa_2*h*(COS(X))+Betta_2*h*(SIN(X)+EXP(time))+Bet*Alfa_2)/

(Alfa_2-Alf*Alfa_2+h*Betta_2);

end;

Procedure PrintArray; { Процедурапечатимассива U }

begin

WriteLn; For m:=0 to Kol_voX do begin Write(U_m[m]:15:4); Write(U,U_m[m]:15:4); end;

WriteLn; WriteLn(U);

end;

{ Основная программа }

Begin

Assign(U,'u'); { Файл для записи значений функции }

Rewrite(U); { Открытие файла для записи }

TextBackGround(0); { Выбор функции для работы }

ClrScr; TextColor(10); GoToXY(20,8); Write('Введите номер выбранной функции (1-5):');

Metka1: ch:=ReadKey;

If ch='1' then SelectFunction:=1

else If ch='2' then SelectFunction:=2

else If ch='3' then SelectFunction:=3

else If ch='4' then SelectFunction:=4

else If ch='5' then SelectFunction:=5

else

begin

Sound(400); Delay(100); NoSound; GoTo Metka1;

end;

GoToXY(59,8);TextColor(12);WriteLn(SelectFunction); TextColor(11); GoToXY(11,12);

Write('Вы будете работать со стандартными параметрами (цифра ~1~)');

GoToXY(22,13); Write('или введете свои данные (цифра ~2~) ?');

Metka2: ch:=ReadKey;

If ch='1' then Data:=1

else If ch='2' then Data:=2

else

begin

Sound(400); Delay(100); NoSound; GoTo Metka2;

end;

TextBackGround(9); TextColor(10); ClrScr;

{ Ввод начальных данных }

WriteLn; WriteLn('-------------------------------- Вводданных ---------------------------------¬');

For k:=1 do 21 do WriteLn('¦ ¦');

WriteLn('L------------------------------------------------------------------------------');

TextColor(15); Window(3,3,77,23); Write(' Введите область рассчета по X от: ');

If Data=1 then

begin

x0:=0; Write(x0:1:0); WriteLn;

end

else ReadLn(x0);

Write(' до: ');

If Data=1 then

begin

X:=1; Write(X:1:0); WriteLn;

end

else ReadLn(X);

WriteLn; Write(' Введите количество разбиений по направлению X: ');

If Data=1 then begin Kol_voX:=30; Write(Kol_voX:2); WriteLn; end else ReadLn(Kol_voX);

WriteLn;WriteLn; Write(' Введите область рассчета по времени от: ');

If Data=1 then begin t0:=0; Write(t0:1:0); WriteLn; end else ReadLn(t0);

Write(' до: ');

If Data=1 then begin T:=1; Write(T:1:0); WriteLn; end else ReadLn(T);

WriteLn; Write(' Введите количество разбиений по времени: ');

If Data=1 then begin Kol_voT:=30; Write(Kol_voT:2); WriteLn; end else ReadLn(Kol_voT);

WriteLn;WriteLn; WriteLn(' Введитекоэффициенты'); Write(' a=');

If Data=1 then begin a:=1; Write(a:1:0); WriteLn; end else ReadLn(a);

Write(' b=');

If Data=1 then begin b:=1; Write(b:1:0); WriteLn; end else ReadLn(b);

Write(' v=');

If Data=1 then begin v:=0.001; Write(v:1:3); WriteLn; end else ReadLn(v);

Write(' Alfa-1=');

If Data=1 then begin Alfa_1:=1; Write(Alfa_1:1:0); WriteLn; end else ReadLn(Alfa_1);

Write(' Betta-1=');

If Data=1 then begin Betta_1:=1; Write(Betta_1:1:0); WriteLn; end else ReadLn(Betta_1);

Write(' Alfa-2=');

If Data=1 then begin Alfa_2:=1; Write(Alfa_2:1:0); WriteLn; end else ReadLn(Alfa_2);

Write(' Betta-2=');

If Data=1 then begin Betta_2:=1; Write(Betta_2:1:0); WriteLn;TextColor(14);

Write(' Нажмителюбуюклавишу'); ReadKey; end else ReadLn(Betta_2);

{ Интерфейс экрана при выдаче результата }

TextBackGround(3); TextColor(1); Window(1,1,80,25); ClrScr; WriteLn;

WriteLn('г===================== Результат ==========================¬');

For k:=1 to 21 do

WriteLn('¦ ¦');

WriteLn('===================================================================-');

TextColor(0); TextBackGround(7); GoToXY(2,23);

WriteLn(' Дляпродолжениянажмителюбуюклавишу'); TextBackGround(3); Window(3,4,77,22);

TextColor(15); ClrScr;

{ Вычеслениешагасетки }

tau:=(T-t0)/Kol_voT; h:=(X-x0)/Kol_voX;

{ Ввод данных при time=t0 }

For m:=0 to Kol_voX do

begin

Xm:=x0+h*m; U_m[m]:=Fun_U(Xm,t0);

end;

TextColor(14); WriteLn('Времяравно ',time:3:3); TextColor(15); WriteLn(U,'Времяравно ',time:3:3);

PrintArray;

{ Начало рассчета }

time:=t0;

Repeat

time:=time+tau;

WriteLn; TextColor(14); WriteLn('Времяравно ',time:3:3); TextColor(15);

WriteLn(U,'Времяравно ',time:3:3);

{ 1 этап. Решается методом скалярной прогонки }

a_progonka:=(-2*v-a*h)/(2*SQR(h)); b_progonka:=(SQR(h)+2*v*tau-b*tau*SQR(h))/(SQR(h)*tau);

c_progonka:=(a*h-2*v)/(2*SQR(h));

Alfa[0]:=Alfa_1/(Alfa_1-Betta_1*h); Betta[0]:=Betta_Zero(time);

For m:=1 to Kol_voX-1 do

begin

Alfa[m]:=-c_progonka/(a_progonka*Alfa[m-1]+b_progonka);

Betta[m]:=(Fun_F(x0+m*h,time+tau,a,b,v)+U_m[m]/tau-a_progonka*Betta[m-1])/

(a_progonka*Alfa[m-1]+b_progonka);

end;

U_[Kol_voX]:=U_End(time,Alfa[Kol_voX-1],Betta[Kol_voX-1]);

For m:=Kol_voX-1 downto 1 do U_[m]:=Alfa[m]*U_[m+1]+Betta[m];U_[0]:=Alfa[0]*U_[1]+Betta[0];

{ 2 этап, часть первая. Решается методом скалярной прогонки }

a_progonka:=(-2*v-a*h)/(2*SQR(h)); b_progonka:=(2*SQR(h)+2*v*tau-b*tau*SQR(h))/(SQR(h)*tau);

c_progonka:=(a*h-2*v)/(2*SQR(h));

Alfa[0]:=Alfa_1/(Alfa_1-Betta_1*h); Betta[0]:=Betta_Zero(time);

For m:=1 to Kol_voX-1 do

begin

Alfa[m]:=-c_progonka/(a_progonka*Alfa[m-1]+b_progonka);

Betta[m]:=(Fun_F(x0+m*h,time+tau/2,a,b,v)+2*U_m[m]/tau-a_progonka*Betta[m-1])/

(a_progonka*Alfa[m-1]+b_progonka);

end;

_U_1_2[Kol_voX]:=U_End(time,Alfa[Kol_voX-1],Betta[Kol_voX-1]);

For m:=Kol_voX-1 downto 1 do _U_1_2[m]:=Alfa[m]*_U_1_2[m+1]+Betta[m];

_U_1_2[0]:=Alfa[0]*_U_1_2[1]+Betta[0];

{ 2 этап, часть вторая. Решается методом скалярной прогонки }

a_progonka:=(-2*v-a*h)/(2*SQR(h)); b_progonka:=(2*SQR(h)+2*v*tau-b*tau*SQR(h))/(SQR(h)*tau);

c_progonka:=(a*h-2*v)/(2*SQR(h));

Alfa[0]:=Alfa_1/(Alfa_1-Betta_1*h); Betta[0]:=Betta_Zero(time);

For m:=1 to Kol_voX-1 do

begin

Alfa[m]:=-c_progonka/(a_progonka*Alfa[m-1]+b_progonka);

Betta[m]:=(Fun_F(x0+m*h,time+tau,a,b,v)+2*_U_1_2[m]/tau-a_progonka*Betta[m-1])/

(a_progonka*Alfa[m-1]+b_progonka);

end;

_U_1[Kol_voX]:=U_End(time,Alfa[Kol_voX-1],Betta[Kol_voX-1]);

For m:=Kol_voX-1 downto 1 do _U_1[m]:=Alfa[m]*_U_1[m+1]+Betta[m];

_U_1[0]:=Alfa[0]*_U_1[1]+Betta[0];

{ 3 этап. Окончательное значение }

For m:=0 to Kol_voX do

U_m[m]:=2*_U_1[m]-U_[m];

PrintArray; { Вывод результата на экран и его запись в файл }

For m:=0 to Kol_voX do { Рассчет точного значения функции }

begin z[m]:=Fun_U(x0+m*h,time); end;

{ Вывод ошибки расчета на экран и в файл }

Error:=0;

For m:=0 to Kol_voX do

begin

a:=Abs(U_m[m]-z[m]); If Error<a then Error:=a;

end;

WriteLn; TextColor(4); WriteLn('Максимальная ошибка для этого времени равна ',Error:10:7);

TextColor(15); WriteLn(U,'Максимальная ошибка для этого времени равна ',Error:15:13);

WriteLn(U); ReadKey;

Until time>T;

Close(U); { Закрытие файла с результатами }

End.

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита06:52:01 02 ноября 2021
.
.06:52:00 02 ноября 2021
.
.06:52:00 02 ноября 2021
.
.06:51:59 02 ноября 2021
.
.06:51:58 02 ноября 2021

Смотреть все комментарии (23)
Работы, похожие на Реферат: Численное решение модельного уравнения

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(294402)
Комментарии (4230)
Copyright © 2005 - 2024 BestReferat.ru / реклама на сайте