Решение смешанной задачи для уравнения гиперболического типа методом сеток
| Категория реферата: Рефераты по математике
| Теги реферата: функция реферат, дипломная работа разработка
| Добавил(а) на сайт: Геронтий.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата
u2 - массив из n действительных чисел, содержащий значение решения из ( j +1) - м временном слое, j = 1, 2, ... .
К части программы, обозначенной как Subroutine GIP3 Begin ... End происходит циклическое обращение, пеоред первым обращением к программе элементам массива u2 присваиваются начальные значения, а элементам массива u1 - значения на решения на первом слое, вычислинные по формулам (6). При выходе из подпрограммы GIP3 в массиве u2 находится значение решения на новом временном слое, а в массиве u1 - значение решения на предыдущем слое.
Порядок работы программы:
1) описание массивов u1, u2, u3;
2) присвоение фактических значений параметрам n, hx, ht, облюдая условие Куранта;
3) присвоение начального значения решения элементам массива и вычисленное по формулам (6) значение решения на первом слое;
4) обращение к GIP3 в цикле k-1 раз, если требуется найти решение на k-м слое ( k ³ 2 ).
Пример:
Решить задачу о колебании струны единичной длины с закрепленными концами, начальное положение которой изображено на рисунке. Начальные скорости равны нулю. Вычисления выполнить с шагом h по x, равным 0.1, с шагом t по t, равным 0.05, провести вычисления для 16 временных слоев с печатью результатов на каждом слое. Таким образом, задача имеет вид
Строим сетку из 11 узлов по x и выполняем вычисления для 16 слоев по t. Программа, и результаты вычисления приведены далее.
Приложение 1 (пример выполнения лабораторной работы)Программа решения смешанной задачи для уравнения гиперболического типа методом сеток.
Program Laboratornaya_rabota_43;
Const
hx = 0.1 ; { Шаг по x - hx }
ht = 0.05 ; { Шаг по t - ht }
n = 11 ; { Количество узлов }
Function f(x : Real) : Real; { Данная функция }
{ вычисляющая решение при t=0 }
Begin
If x = 0 then Write(' ',u1[i]:3:3) else Write(u1[i]:3:3) ;
t := t + ht;
{ /// Печать решения на первом слое }
WriteLn;
Write('t=',t:2:2,' ');
Рекомендуем скачать другие рефераты по теме: контрольные бесплатно, рефераты.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата