DL – deadline – крайний срок сдачи работы – после DL работа принимается, но оценка снижается (20% за неделю, если не оговорено другое).
E) Работа в цикле
I. Самостоятельная работа
I. Самостоятельная работа
I. Самостоятельная работа
I. Самостоятельная работа
I. Самостоятельная работа
I. Самостоятельная работа
I. Самостоятельная работа
I. Самостоятельная работа
Решение уравнений в частных производных методом сеток.
Решить одномерное уравнение теплопроводности методом сеток.
Используя явную схему метода сеток, проинтегрировать одномерное уравнение теплопроводности со следующими начальными и граничными условиями: , , , , .
Наиболее простой конечно-разностной схемой, применяемой для численного решения уравнений с частными производными, является явная схема. В случае одномерного уравнения теплопроводности она записывается следующим образом:
, j = 1, . , n , ( 10 )
где , n — число узлов cетки по x. ( 11 )
1. В первой строке введем названия параметров: n , l , c , Dx, g, m, Dt, a, b, а под ними в соответствующих ячейках — числовые значения (n=10, l=1, c=1). Для Dx вводим соответствующую формулу =B2/A2 (Dx=l/n). Исходя из условий устойчивости явной схемы, выбираем m=0,5 и выражаем Dt через m из уравнения ( 11 ) (=$D$2*$D$2*0,5).Для параметров функций, задающих краевые и начальные условия, выбираем следующие значения: g=8, a=10000, b=250.
2. В столбце А, как мы уже делали в предыдущих работах, разместим вычисление значений x, соответствующих узлам сетки. В третьей строке разместим формулы, вычисляющие значения узлов по времени. В столбце Вразместим формулы, вычисляющие начальное распределение температуры по длине стержня =EXP($E$2*A4-$E$2*A4*A4), а в четвертой и четырнадцатой строках, начиная со столбца С, -формулы, вычисляющие значения температуры на концах стержня: =EXP(-$H$2*C$3*C$3+$I$2*C$3).
3. В ячейку С5вводим формулу, реализующую конечно-разностное уравнение ( 10 ) —=B5+$F$2*(B6-2*B5+B4). Распространяем эту формулу на всю область, ограниченную краевыми и начальными условиями.
4. Результирующая таблица и построенная с использованием данных из блока A3:J14 диаграмма представлены на рис. 24 и 25.
Рис. 24. Решение одномерного уравнения теплопроводности с использованием явной схемы метода сеток.
Рис. 25. Графическое изображение решения одномерного уравнения теплопроводности.
Литература
1. Фигурнов В. Э. IBM PC для пользователя. 6-е изд. — М.: ИНФРА-М, 1995.
2. Шиб Й. Windows 3.1 (русская версия ) : Пер. с нем. — М. : БИНОМ, 1995.
3. Николь Н., Альбрехт Р. Электронные таблицы Excel 5.0: Практ. пособ. / Пер. с нем. — М.: ЭКОМ.,1995.
4. Наймершайм Дж. Excel 5.0 for Windows: Учебное пособие / Пер. с англ. — М.: Междунар. отношения, 1995.
5. Осейко Н. Н. Excel 5.0 для пользователя: — К.: Торгово — издательское бюро ВНV, 1994.
6. Альтхаус М. Excel. Секреты и советы / Пер. с нем. М.: БИНОМ, 1995.
7. Основы работы с Excel 5.0 : Методические указания / ИГХТА. — Иваново, 1996.
Видео:Лекция №1.1 Явная и неявная схемы для уравнения теплопроводностиСкачать
Решение систем линейных алгебраических уравнений
Главная > Решение
Информация о документе
Дата добавления:
Размер:
Доступные форматы для скачивания:
7.1 Метод сеток для решения смешанной задачи для уравнения параболического типа (уравнения теплопроводности)
Смешанная задача означает, что следует найти искомую функцию, удовлетворяющую заданному уравнению в частных производных, краевым, а так же начальным условиям.
Рассмотрим смешанную задачу для однородного уравнения теплопроводности
, k =const>0.
Задано начальное условие
и заданы краевые условия первого рода
Требуется найти функцию u (x,t) , удовлетворяющую в области D (0 x a , 0 t T) условиям (7.5) и (7.6). Физически это можно представить как стержень, на концах которого поддерживается требуемый температурный режим, заданный условиями (7.6).
Рисунок 10 – Неявная схема
При проведении замены получим , т.е. k =1. Задача решается методом сеток : строим в области D равномерную сетку с шагом h по оси x и шагом по t (см. рисунок 10).
Приближенное значение искомой функции в точке — обозначим через . Тогда ; ; i =0,1. n ; ;
j =0,1. m ; . Заменим производные разностными отношениями
;
.
В результате получим неявную двухслойную схему с погрешностью O ( +h 2 )
.
Используя подстановку , выразим из этой схемы u i,j-1
,
где: u 0, j = 1 ( t j ) ; u n , j = 2 ( t j ) .
Получаем разностную схему, которой аппроксимируем уравнение (7.4). Эта схема (7.7) неявная, и выглядит так, как показано на рисунке 10. При построении схемы (7.7) получается система линейных уравнений с трехдиагональной матрицой. Решив ее любым способом (в частности, методом прогонки), получаем значения функции на определенных временных слоях. Так, на нулевом временном слое используем начальное условие U i,0 =f ( x i ), т.к. j =0. Эта неявная схема более устойчива для любых значений параметра >0.
Есть и явная схема (рисунок 11), но она устойчива только при , т.е. при .
Рисунок 11 — Явная схема
7.2 Решение задачи Дирихле для уравнения Лапласа методом сеток
Рассмотрим уравнение Лапласа
.
Уравнение (7.8) описывает распространение электромагнитных волн(полей). Будем рассматривать уравнение Лапласа в прямоугольной области с краевыми условиями
; ; ; ,
где -заданные функции. Заметим, что чаще всего область бывает не прямоугольной.
Введем обозначения u ij = u ( x i , y j ). Накладываем на прямоугольную область сетку ; i =0,1,…, n ; ; j =0,1,…, m . Тогда , .
Частные производные аппроксимируем по формулам
и заменим уравнение Лапласа конечно-разностным уравнением
Рисунок 12 – Схема “крест”
,
где: i =1,…, n -1, j =1. m -1 (т.е. для внутренних узлов).
Погрешность замены дифференциального уравнения разностным составляет величину О(). Выразим u i , j при h =l, и заменим систему
Получаем систему (7.10) линейных алгебраических уравнений, которые можно решить любым итерационным методом (Зейделя, простых итераций и т.д.). При этом построении системы использовалась схема типа “крест”(рисунок 12). Строим последовательность итераций по методу Гаусса-Зейделя
,
где s -текущая итерация.
Условие окончания итерационного процесса
.
Условие (7.11) ненадежно и на практике используют другой критерий
где .
Схема “крест “- явная устойчивая схема ( малое изменение входных данных ведет к малому изменению выходных данных).
7.3 Решение смешанной задачи для уравнения гиперболического типа методом сеток
Рассмотрим уравнение колебания однородной и ограниченной струны.
Задача состоит в отыскании функции u ( x , t ) при t >0, удовлетворяющей уравнению гиперболического типа
,
где: 0 x a ; 0 t
и краевым условиям
Заменим С на с t и получим уравнение
и в дальнейшем будем считать С =1.
Для построения разностной схемы решение задачи (7.12)-(7.14) построим в области сетку ; i = 0,1,…, n ; ; ; j =0,1,…, m ; m = T .
Аппроксимируем (7.12) разностными производными второго порядка точности относительно шага
.
Полагая = / h перепишем (7.15), выразив U i , j +1. Таким образом получим трехслойную разностную схему
,
где: i =1,…, n ; j =1,…, m . Задаем нулевые граничные условия 1 ( t ) =0, 2 ( t ) =0. Тогда в (7.16) , для всех j .
Схема (7.16) называется трехслойной, т.к. она связывает значения искомой функции на трех временных слоях j -1, j , j +1.
Численное решение задачи состоит в вычислении приближенных значений решения u ( x , t ) в узлах при i =1,…, n ; j = 1,…, m . Алгоритм решения основан на том, что решение на каждом следующем слое ( j = 2,3. n ) можно получить пересчетом решений с двух предыдущих слоев ( j = 0,1. n — 1) по формуле (7.16). При j =0 решение известно из начального условия . Для вычисления решения на первом слое ( j = 1) положим
,
тогда , i = 1,2,…, n . Теперь для вычисления решений на следующих слоях можно использовать формулу (7.16).
Описанная схема аппроксимирует задачу (7.12)-(7.14) с точностью O ( + h ). Невысокий порядок аппроксимации по объясняется грубостью аппроксимации по формуле (7.17).
Схема будет устойчивой, если выполнено условие .
Лабораторная работа № 1
Решение систем линейных алгебраических уравнений
Входные параметры: n—целое положительное число, равное порядку n системы; а — массив из n х n действительных чисел, содержащий матрицу коэффициентов системы (а(1) = а 11 , а(2) = a 12… а(n) = а n 1 , а(n + 1) = а 12 , . а(n х n) = а nn ); b — массив из n действительных чисел, содержащий столбец свободных членов системы (b(1) = b 1 , b(2)=b 2, …b(n)=b n ) .
Выходные параметры: b—массив из n действительных чисел (он же входной); при выходе из программы содержит решение системы b(l) = x 1 , b(2) = x 2 , … b(n) = х n ; error—признак правильности решения (код ошибки): если ks = 0, то в массиве b содержится решение системы, если error= 1, исходная система не имеет единственного решения (определитель системы равен нулю).
Перед обращением к подпрограмме SIMQ необходимо:
1) описать массивы а и b. Если система содержит n уравнений, то массив а должен содержать n 2 элементов, а массив b – n элементов;
2) присвоить значение параметру n, который равен числу уравнений системы;
3) присвоить элементам массивов а и b значения коэффициентов системы следующим образом: a(l) = a 11 , а(2) = а 21 , а(3) = а 31 ,…а(n) = а n1 а(n+1) = а 12 , а(n+2) = а 22 … а(n x n) = а nn . b(1) = b 1 , b(2)=b 2, …b(n)=b n
4) проверить соответствие фактических параметров по типу и порядку следования формальным параметрам подпрограммы SIMQ. Параметры а и b — величины вещественного типа, n и error — целого типа.
Задание. Используя программу SIMQ, решить заданную систему трех линейных уравнений. Схема алгоритма приведена на рисунке 13.
Видео:Сеточные методы решения дифференциальных уравнений в частных производных.Скачать
Порядок выполнения лабораторной работы:
1. Составить головную программу, содержащую обращение к SIMQ и печать результатов;
Варианты заданий для решения систем линейных алгебраических уравнений методом Гаусса приведены в таблице 1.
Метод квадратных корней Холецкого
Входные параметры: n—целое положительное число, равное порядку n системы; а — массив из n х n действительных чисел, содержащий матрицу коэффициентов системы (а(1) = а 11 , а(2) = a 12… а(n) = а n 1 , а(n + 1) = а 12 , . а(n х n) = а nn ); b — массив из n действительных чисел, содержащий столбец свободных членов системы (b(1) = b 1 , b(2)=b 2, …b(n)=b n ) .
Выходные параметры: b—массив из n действительных чисел (он же входной); при выходе из программы содержит решение системы b(l) = x 1 , b(2) = x 2 , … b(n) = х n ; p—количество операций.
Контрольная работа: Конечно-разностный метод решения для уравнений параболического типа
Название: Конечно-разностный метод решения для уравнений параболического типа Раздел: Рефераты по математике Тип: контрольная работа Добавлен 23:16:39 16 апреля 2011 Похожие работы Просмотров: 16037 Комментариев: 20 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно Скачать
К дифференциальным уравнениям с частными производными приходим при решении самых разнообразных задач. Например, при помощи дифференциальных уравнений с частными производными можно решать задачи теплопроводности, диффузии, многих физических и химических процессов.
Как правило, найти точное решение этих уравнений не удается, поэтому наиболее широкое применение получили приближенные методы их решения. В данной работе ограничимся рассмотрением дифференциальных уравнений с частными производными второго порядка, а точнее дифференциальными уравнениями с частными производными второго порядка параболического типа, когда эти уравнения являются линейными, а искомая функция зависит от двух переменных
Для решения дифференциальных уравнений параболического типа существует несколько методов их численного решения на ЭВМ, однако особое положение занимает метод сеток, так как он обеспечивает наилучшие соотношения скорости, точности полученного решения и простоты реализации вычислительного алгоритма. Метод сеток еще называют методом конечных разностей.
1 Теоретическая часть
1.1 Постановка задач для уравнений параболического типа
Классическим примером уравнения параболического типа является уравнение теплопроводности (диффузии). В одномерном по пространству случае однородное (без источников энергии) уравнение теплопроводности имеет вид
(1)
Если на границах и заданы значения искомой функции в виде
, , (2)
, , (3)
т.е. граничные условия первого рода, и , кроме того заданы начальные условия
, , (4)
то задачу (1)-(4) называют первой начально-краевой задачей для уравнения теплопроводности (1).
В терминах теории теплообмена — распределение температуры в пространственно-временной области
a2 — коэффициент температуропроводности, а (2), (3) с помощью функций , задают температуру на границах и .
Если на границах и заданы значения производных искомой функции по пространственной переменной:
, , (5)
, , (6)
т.е. граничные условия второго рода, то задачу (1), (5), (6), (4) называют второй начально-краевой задачей для уравнения теплопроводности (1). В терминах теории теплообмена на границах в этом случае заданы тепловые потоки.
Если на границах заданы линейные комбинации искомой функции и ее производной по пространственной переменной:
, , (7)
, , (8)
т.е. граничные условия третьего рода, то задачу (1), (7), (8), (4) называют третьей начально-краевой задачей для уравнения теплопроводности (1). В терминах теплообмена граничные условия (7), (8) задают теплообмен между газообразной или жидкой средой с известными температурами на границе и на границе и границами расчетной области с неизвестными температурами , . Коэффициенты α, β – известные коэффициенты теплообмена между газообразной или жидкой средой и соответствующей границей.
Для пространственных задач теплопроводности в области первая начально-краевая задача имеет вид
(9)
Аналогично ставится вторая и третья начально-краевые задачи для пространственного уравнения (9). На практике часто ставятся начально-краевые задачи теплопроводности со смешанными краевыми условиями, когда на границах задаются граничные условия различных родов.
1.2Основные определения и конечно-разностные схемы
Основные определения, связанные с методом конечных разностей, рассмотрим на примере конечно-разностного решения первой начально-краевой задачи для уравнения теплопроводности (1)-(4).
Согласно методу сеток в плоской области D строится сеточная область Dh , состоящая из одинаковых ячеек. При этом область Dh должна как можно лучше приближать область D . Сеточная область (то есть сетка) Dh состоит из изолированных точек, которые называются узлами сетки. Число узлов будет характеризоваться основными размерами сетки h : чем меньше h , тем больше узлов содержит сетка. Узел сетки называется внутренним, если он принадлежит области D , а все соседние узлы принадлежат сетке Dh . В противном случае он называется граничным. Совокупность граничных узлов образует границу сеточной области Гh .
Сетка может состоять из клеток разной конфигурации: квадратных, прямоугольных, треугольных и других. После построения сетки исходное дифференциальное уравнение заменяется разностным уравнением во всех внутренних узлах сетки. Затем на основании граничных условий устанавливаются значения искомого решения в граничных узлах. Присоединяя граничные условия сеточной задачи к разностным уравнениям, записанных для внутренних узлов, получаем систему уравнений, из которой определяем значения искомого решения во всех узлах сетки.
Нанесем на пространственно-временную область , конечно разностную сетку ωh,τ :
(10)
с пространственным шагом h=l/N и шагом по времени τ=T/K.
Рисунок 1 – Конечно-разностная сетка
Введем два временных слоя : нижний ,на котором распределение искомой функции u(xj,t k) , , известно (при к = 0 распределение определяется начальным условием (4)u(xj,t k)=ψ(xj) ), и верхний временной слой t k+1=(k+1) τ , на котором распределение искомой функции u(xj,t k+1) , .
Сеточной функцией задачи (1)-(4) называют однозначное отображение целых аргументов j,k в значения функции .
На введенной сетке вводят сеточные функции , первая из которых известна, вторая подлежит определению. Для определения в задаче (1)-(4) заменяют (аппроксимируют) дифференциальные операторы отношением конечных разностей (более подробно это рассматривают в разделах численных методов «Численное дифференцирование»), получают
, (11)
, (12)
Подставляя (11), (12) в задачу (1)-(4), получим явную конечно-разностную схему для этой задачи в форме
(13)
В каждом уравнении этой задачи все значения сеточной функции известны, за исключением одного, , которое может быть определено явно из соотношений (13). В соотношения (13) краевые условия входят при значениях j=1 и j=N—l , a начальное условие – при k = 0.
Если в (12) дифференциальный оператор по пространственной переменной аппроксимировать отношением конечных разностей на верхнем временном слое:
, (14)
то после подстановки (11), (14) в задачу (1)-(4) получим неявную конечно-разностную схему для этой задачи:
(15)
Теперь сеточную функцию на верхнем временном слое можно получить из решения (15) с трехдиагональной матрицей. Эта СЛАУ в форме, пригодной для использования метода прогонки, имеет вид
;
;
, ;
;
;
;
.
Шаблоном конечно-разностной схемы называют ее геометрическую интерпретацию на конечно-разностной сетке. На рисунке приведены шаблоны для явной и неявной конечно-разностных схем при аппроксимации задачи.
Рисунок 2 — Шаблон явной конечно-разностной схемы для уравнения теплопроводности
Рисунок 3 — Шаблон неявной конечно-разностной схемы для уравнения теплопроводности
В случае явных схем значения функции в узле очередного слоя можно найти, зная значения в узлах предыдущих слоев. В случае неявных схем для нахождения значений решения в узлах очередного слоя приходится решать систему уравнений. Для проведения вычислений самой простой схемой оказывается первая: достаточно на основании начального условия найти значения функции в узлах слоя , чтобы в дальнейшем последовательно определять значения решения в узлах слоев и т.д. В случае второй схемы, которая является неявной, обязательно приходится решать систему уравнений для нахождения решения сеточной задачи. В любом случае согласно методу сеток будем иметь столько уравнений, сколько имеется неизвестных (значения искомой функции в узлах). Число неизвестных равно числу всех узлов сетки. Решая систему уравнений, получаем решение поставленной задачи.
Разрешимость этой системы для явных схем вопросов не вызывает, так как все действия выполняются в явно определенной последовательности. В случае неявных схем разрешимость системы следует исследовать в каждом конкретном случае. Важным вопросом является вопрос о том, на сколько найденные решения хорошо (адекватно) отражают точные решения, и можно ли неограниченно сгущая сетку (уменьшая шаг по осям) получить приближенные решения, сколь угодно близкие к точным решениям? Это вопрос о сходимости метода сеток.
На практике следует применять сходящиеся разностные схемы, причем только те из них, которые являются устойчивыми, то есть при использовании которых небольшие ошибки в начальных или промежуточных результатах не приводят к большим отклонениям от точного решения. Всегда следует использовать устойчивые разностные схемы, проводя соответствующие исследования на устойчивость. Явные схемы просты для организации вычислительного процесса, но имеют один весьма весомый недостаток: для их устойчивости приходится накладывать сильные ограничения на сетку. Неявные схемы свободны от этого недостатка, но есть другая трудность – надо решать системы уравнений большой размерности, что на практике при нахождении решения сложных уравнений в протяженной области с высокой степенью точности может потребовать больших объемов памяти ЭВМ и времени на ожидание конечного результата. К счастью, прогресс не стоит на месте и уже сейчас мощности современных ЭВМ вполне достаточно для решения поставленных перед ними задач.
Вопрос устойчивости будет рассмотрен далее.
Из определения порядка аппроксимации ясно, что чем выше порядок аппроксимации, тем лучше конечно-разностная схема приближается к дифференциальной задаче. Это не означает, что решение по разностной схеме может быть так же близко к решению дифференциальной задачи, так как разностная схема может быть условно устойчивой или абсолютно неустойчивой вовсе.
Для нахождения порядка аппроксимации используется аппарат разложения в ряды Тейлора точных (неизвестных, но дифференцируемых) решений дифференциальной задачи в узлах сетки (подчеркнем: значения сеточной функции uh дискретны, следовательно, не дифференцируемы и поэтому не разлагаются в ряды Тейлора).
1.4 Устойчивость. Исследование устойчивости методом гармонического анализа
конечно-разностная схема устойчива, если для малых возмущений входных данных (начально-краевых условий и правых частей) конечно-разносная схема обеспечивает малые возмущения сеточной функции uh т.е. решение с помощью конечно-разностной схемы находится под контролем входных данных.
Если во входные данные fn входят только начальные условия или только краевые условия, или только правые части, то говорят об устойчивости соответственно по начальным условиям, по краевым условиям или по правым частям.
Из математической физики известно, что решение начально-краевых задач представляется в виде следующего ряда:
, (16)
где λn – собственные значения
– собственные значения функции, получаемые из решения соответствующей задачи Штурма-Лиувиля, т.е. решение может быть представлено в виде суперпозиции отдельных гармоник , каждая из которых есть произведение функции времени и функции пространственной переменной, причем последняя по модулю ограничена сверху единицей при любых значениях переменной x .
В то же время функция времени , называемая амплитудной частью гармоники, никак не ограничена, и, по всей вероятности, именно амплитудная часть гармоник является источником неконтролируемого входными данными роста функции и, следовательно, источником неустойчивости.
Таким образом, если конечно-разностная схема устойчива, то отношение амплитудной части гармоники на верхнем временном слое к амплитудной части на нижнем временном слое по модулю должно быть меньше единицы.
Если разложить значение сеточной функции в ряд Фурье по собственным функциям:
(17)
где амплитудная часть может быть представлена в виде произведения
(18)
где – размерный и постоянный сомножитель амплитудной части,
k – показатель степени (соответствующий номеру временного слоя) сомножителя, зависящего от времени.
Тогда подставив (17) в конечно-разностную схему, можно по модулю оценить отношение амплитудных частей на соседних временных слоях.
Однако поскольку операция суммирования линейна и собственные функции ортогональны для различных индексов суммирования, то в конечно-разностную схему вместо сеточных значений достаточно подставить одну гармонику разложения (17) (при этом у амплитудной части убрать индекс n ), т.е.
(19)
Таким образом, если конечно-разностная схема устойчива по начальным данным , то
, (20)
т. е. условие (20) является необходимым условием устойчивости.
Явная конечно разностная схема, записанная в форме
(21)
обладает тем достоинством, что решение на верхнем временном слое tk+l получается сразу (без решения СЛАУ) по значениям сеточной функции на нижнем временном слое tk , где решение известно (при k = 0 значения сеточной функции формируются из начального условия). Но эта же схема обладает существенным недостатком, поскольку она является условно устойчивой. С другой стороны, неявная конечно-разностная схема, записанная форме
(22)
приводит к необходимости решать СЛАУ, но зато эта схема абсолютно устойчива.
Проанализируем схемы (21) и (22). Пусть точное решение, которое неизвестно, возрастает по времени, т.е. . Тогда, в соответствии с явной схемой (21), разностное решение будет заниженным по сравнению с точным, так как определяется по меньшим значениям сеточной функции на предыдущем временном слое, поскольку решение является возрастающим по времени.
Для неявной схемы (22) на возрастающем решении, наоборот, решение завышено по сравнению с точным, поскольку оно определяется по значениям сеточной функции на верхнем временном слое.
На убывающем решении картина изменяется противоположным образом: явная конечно-разностная схема завышает решения, а неявная — занижает (Рисунок 4).
На основе этого анализа возникла идея о построении более точной неявно-явной конечно-разностной схемы с весами при пространственных конечно-разностных операторах, причем при измельчении шагов тик точное (неизвестное) решение может быть взято в «вилку» сколь угодно узкую, так как если явная и неявная схемы аппроксимируют дифференциальную задачу и эти схемы устойчивы, то при стремлении сеточных характеристик τ и h к нулю решения по явной и неявной схемам стремятся к точному решению с разных сторон.
Рисунок 4 – Двусторонний метод аппроксимации
Проведенный анализ дал блестящий пример так называемых двусторонних методов, исследованных В. К. Саульевым
Рассмотрим неявно-явную схему с весами для простейшего уравнения теплопроводности:
(23)
где θ – вес неявной части конечно-разностной схемы,
θ -1 – вес для явной части
Причем . При θ=1 имеем полностью неявную схему, при θ=0 – полностью явную схему, а при θ=1/2 – схему Кранка-Николсона .
В соответствии с гармоническим анализом для схемы (23) получаем неравенство
,
(24)
причем правое неравенство выполнено всегда.
Левое неравенство имеет место для любых значений σ , если . Если же вес θ лежит в пределах , то между σ и θ из левого неравенства устанавливается связь
(25)
являющаяся условием устойчивости неявно-явной схемы с весами (23), когда вес находится в пределах .
Таким образом, неявно-явная схема с весами абсолютно устойчива при и условно устойчива с условием (25) при .
Рассмотрим порядок аппроксимации неявно-явной схемы с весами, для чего разложим в ряд Тейлора в окрестности узла (x j ,tk ) на точном решении значения сеточных функций по переменной t , , по переменной х и полученные разложения подставим в (23):
В этом выражении дифференциальный оператор от квадратной скобки в соответствии с дифференциальным уравнением равен дифференциальному оператору , в соответствии с чем вышеприведенное равенство приобретает вид
После упрощения получаем
,
откуда видно, что для схемы Кранка-Николсона (θ = 1/2) порядок аппроксимации схемы (23) составляет , т.е. на один порядок по времени выше, чем для обычных явных или неявных схем. Таким образом, схема Кранка-Николсона при θ = 1/2 абсолютно устойчива и имеет второй порядок аппроксимации по времени и пространственной переменной х .
Используем в уравнение (23) подстановку r=a 2k /h 2 . Но в то же время его нужно решить для трех «еще не вычисленных» значений , , и . Это возможно, если все значения перенести в левую часть уравнения. Затем упорядочим члены уравнения (23) и в результате получим неявную разностную формулу
(26)
для i=2,3,…,n-1 . Члены в правой части формулы (26) известны. Таким образом, формула (26) имеет вид линейной трехдиагональной системы АХ=В. Шесть точек, используемых в формуле Кранка-Николсона (26), вместе с промежуточной точкой решетки, на которой основаны численные приближения, показаны на рисунке 5.
Рисунок 5 – Шаблон (схема) метода Кранка-Николсона
Иногда в формуле (26) используется значение r=1 . В этом случае приращение по оси t равно , формула (26) упрощается и принимает вид
, (27)
для i=2,3,…,n-1 . Граничные условия используются в первом и последнем уравнениях (т. е. в и соответственно).
Уравнения (27) особенно привлекательны при записи в форме трехдиагональной матрицы АХ = В.
Если метод Кранка-Николсона реализуется на компьютере, то линейную систему АХ = В можно решить либо прямым методом, либо итерационным.
2. Практическая часть
2.1 Постановка задачи
Используем метод Кранка-Николсона, чтобы решить уравнение
,
с начальным условием
,
и граничными условиями
2.2 Решение в ПППMatLab
Решение будем искать в ППП MatLab 7. Создадим четыре выполняемых m-фала: crnich.m – файл-функция с реализацией метода Кранка-Николсона; trisys.m – файл-функция метода прогонки; f.m – файл-функция задающая начальное условие задачи; fе.m – файл-функция задающая функцию определяющую точное решение задачи(найдена аналитическим путем). Листинги программ представлены в приложении А.
Для простоты возьмем шаг Δх =h = 0,1 и Δt = к = 0,01 . Таким образом, соотношение r =1. Пусть решетка имеет n=11 столбцов в ширину и m=11 рядов в высоту.
2.3 Анализ результатов
Решения для данных параметров отразим в таблице 1. Трехмерное изображение данных из таблицы покажем на рисунке 5.
Таблица 1 – Значения u(хi , ti ), полученные методом Кранка-Николсона
xi
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
ti
0
0
1.1180
1.5388
1.1180
0.3633
0
0.3633
1.1180
1.5388
1.1180
0
0.01
0
0.6169
0.9288
0.8621
0.6177
0.4905
0.6177
0.8621
0.9288
0.6169
0
0.02
0
0.3942
0.6480
0.7186
0.6800
0.6488
0.6800
0.7186
0.6480
0.3942
0
0.03
0
0.2887
0.5067
0.6253
0.6665
0.6733
0.6665
0.6253
0.5067
0.2887
0
0.04
0
0.2331
0.4258
0.5560
0.6251
0.6458
0.6251
0.5560
0.4258
0.2331
0
0.05
0
0.1995
0.3720
0.4996
0.5754
0.6002
0.5754
0.4996
0.3720
0.1995
0
0.06
0
0.1759
0.3315
0.4511
0.5253
0.5504
0.5253
0.4511
0.3315
0.1759
0
0.07
0
0.1574
0.2981
0.4082
0.4778
0.5015
0.4778
0.4082
0.2981
0.1574
0
0.08
0
0.1419
0.2693
0.3698
0.4338
0.4558
0.4338
0.3698
0.2697
0.1419
0
0.09
0
0.183
0.2437
0.3351
0.3936
0.4137
0.3936
0.3351
0.2437
0.1283
0
0.1
0
0.1161
0.2208
0.3038
0.3570
0.3753
0.3570
0.3038
0.2208
0.1161
0
Величины, полученные методом Кранка-Николсона, достаточно близки к
аналитическому решению u(x,t) = sin(πx)e -π2t + sin(3πx)e -9π2t , истинные значения для последнего представлены в таблице 2
Максимальная погрешность для данных параметров равна 0,005
Таблица 2 – точные значения u(хi , ti ), при t=0.1
xi
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
t11
0.1
0
0.1153
0.2192
0.3016
0.3544
0.3726
0.3544
0.3016
0.2192
0.1153
0
Рисунок 5 –Решениеu=u(хi , ti ), для метода Кранка-Николсона
В зависимости от формы области, краевых условий, коэффициентов исходного уравнения метод конечных разностей имеет погрешности аппроксимации от первого до четвертого порядка относительно шага. В силу этого они успешно используются для разработки программных комплексов автоматизированного проектирования технических объектов.
В МКР строятся, как правило, регулярные сетки, особенности геометрии области учитываются только в около граничных узлах. В связи с этим МКР чаще применяется для анализа задач с прямолинейными границами областей определения функций.
Проблемой методов конечных разностей является высокая размерность результирующей системы алгебраических уравнений (несколько десятков тысяч в реальных задачах. Поэтому реализация методов конечных разностей в составе САПР требует разработки специальных способов хранения матрицы коэффициентов системы и методов решения последней.
1 Березин И.С., Жидков Н.П. Методы вычислений. Т.2. – М.: Физматгиз, 1962.
2 Мэтьюз, Джон, Г., Финк, Куртис, Д. Численные методы. Использование MATLAB, 3-е издание.— М. : Вильяме, 2001. — 720 с