Постановка задачи для уравнения параболического типа
Классическим примером уравнения параболического типа является уравнение теплопроводности(диффузии). Как отмечалось выше, в одномерном по пространству случае однородное (без источников энергии) уравнение теплопроводности имеет вид:
, 0 0 (15)
Уравнение (15), например, может описывать распространение тепла в тонком стержне длиной l, теплоизолированном по боковой поверхности. При этом функция u(x, t) задаёт значение температуры в любой точке стержня в произвольный момент времени t, при условии, что известно распределение температуры в стержне в начальный момент времени t = 0 и известна температура на концах стержня x = 0 и x = l в любой момент времени t. Таким образом, постановка задач для уравнения теплопроводности имеет следующий вид.
Первая начально-краевая задача. Если на границах стержня x = 0 и x = l заданы краевые условия первого рода, т.е. для любых моментов времени на концах стержня x = 0 и x = l заданы значения искомой функции u(x,t) (т.е. температуры):
и, кроме того, для функции u(x, t) заданы начальные условия, т.е. задано распределение температуры в любой точке стержня в момент времени t = 0:
то задачу (15) – (17) называют первой начально-краевой задачей для уравнения теплопроводности.
В терминах теории теплообмена функция u(x,t) описывает распределение температуры в пространственно-временной области W´T = <0 £ x £ l, 0 £ t £ T>, параметр а 2 – является коэффициентом температуропроводности, а краевые условия (16), (17) с помощью функций j1(t) и j2(t) задают температуру на границах x = 0, x = l для различных моментов времени.
Вторая начально-краевая задача. Если на границах x = 0 и x = l заданы краевые условия второго рода, т.е. для x = 0 и x = l заданы значения производных искомой функции по пространственной переменной:
= j1(t), x = 0, t >0, (19)
= j2(t), x = l, t >0, (20)
и, кроме того, для функции u(x, t) заданы начальные условия (21), то задачу (15), (19) – (21) называют второй начально-краевой задачей для уравнения теплопроводности. В терминах теории теплообмена граничные условия (19), (20) задают тепловые потоки на концах стрежня для различных моментов времени.
Третья начально-краевая задача. Если на границах x = 0 и x = l заданы краевые условия третьего рода, т.е. для x = 0 и x = l заданы линейные комбинации искомой функции и её частной производной по пространственной переменной:
+ a u(0, t) = j1(t), x = 0, t >0, (22)
+ b u(l, t) = j2(t), x = l, t >0, (23)
и, для функции u(x, t) заданы начальные условия (21), то задачу (15), (22), (23) называют третьей начально-краевой задачей для уравнения теплопроводности.
В терминах теории теплообмена граничные условия (22), (23) задают теплообмен между газообразной и жидкой средой (которые располагаются с разных «торцов» стержня) и границами расчётной области (т.е. внутренней частью стержня). Из-за теплообмена, температуры u(0, t) и u(l, t) на торцах стержня не известны, а известно, что температуры газообразной и жидкой среды соответственно равны j1(t)/a и j2(t)/b. Параметры a и b являются коэффициентами теплообмена между газообразной или жидкой средой и соответствующей границей стержня.
Дата добавления: 2015-09-14 ; просмотров: 1249 ; ЗАКАЗАТЬ НАПИСАНИЕ РАБОТЫ
Видео:Решение первой краевой задачи для неоднородного уравнения теплопроводности.Скачать
Курсовая работа: Решение параболических уравнений
Название: Решение параболических уравнений Раздел: Рефераты по математике Тип: курсовая работа Добавлен 21:20:53 10 октября 2009 Похожие работы Просмотров: 900 Комментариев: 21 Оценило: 4 человек Средний балл: 4.3 Оценка: неизвестно Скачать
Видео:Метод Фурье для неоднородного уравнения теплопроводностиСкачать
Реферат
Видео:6.1 Смешанные краевые задачи для уравнений гиперболического и параболического типов. Метод Фурье.Скачать
В курсовой работе рассматривается метод сеток решения параболических уравнений. Теоретическая часть включает описание общих принципов метода, его применение к решению параболических уравнений, исследование разрешимости получаемой системы разностных уравнений. В практической части разрабатывается программа для численного решения поставленной задачи. В приложении представлен текст программы и результаты выполнения тестовых расчетов.
1.1 Метод сеток решения уравнений параболического типа
1.2 Метод прогонки решения разностной задачи для уравненийпараболического типа
1.3 Оценка погрешности и сходимость метода сеток
1.4 Доказательство устойчивости разностной схемы
2. Реализация метода
2.1 Разработка программного модуля
2.2 Описание логики программного модуля
2.3 Пример работы программы
К дифференциальным уравнениям с частными производными приходим при решении самых разнообразных задач. Например, при помощи дифференциальных уравнений с частными производными можно решать задачи теплопроводности, диффузии, многих физических и химических процессов.
Как правило, найти точное решение этих уравнений не удается, поэтому наиболее широкое применение получили приближенные методы их решения. В данной работе ограничимся рассмотрением дифференциальных уравнений с частными производными второго порядка, а точнее дифференциальными уравнениями с частными производными второго порядка параболического типа, когда эти уравнения являются линейными, а искомая функция зависит от двух переменных. В общем случае такое уравнение записывается следующим образом:
.
Заметим, что численными методами приходится решать и нелинейные уравнения, но находить их решение много труднее, чем решение линейных уравнений.
введем в рассмотрение величину . В том случае, когда уравнение называется параболическим. В случае, когда величина не сохраняет знак, имеем смешанный тип дифференциального уравнения. Следует отметить, что в дифференциальном уравнении все функции являются известными, и они определены в области , в которой мы ищем решение.
1. Теоретическая часть
1.1 Метод сеток решения уравнений параболического типа
Для решения дифференциальных уравнений параболического типа существует несколько методов их численного решения на ЭВМ, однако особое положение занимает метод сеток, так как он обеспечивает наилучшие соотношения скорости, точности полученного решения и простоты реализации вычислительного алгоритма. Метод сеток еще называют методом конечных разностей.Пусть дано дифференциальное уравнение
. (1.1)
Требуется найти функцию в области с границей при заданных краевых условиях. Согласно методу сеток в плоской области строится сеточная область , состоящая из одинаковых ячеек. При этом область должна как можно лучше приближать область . Сеточная область (то есть сетка) состоит из изолированных точек, которые называются узлами сетки. Число узлов будет характеризоваться основными размерами сетки : чем меньше , тем больше узлов содержит сетка. Узел сетки называется внутренним, если он принадлежит области , а все соседние узлы принадлежат сетке . В противном случае он называется граничным. Совокупность граничных узлов образует границу сеточной области .
Сетка может состоять из клеток разной конфигурации: квадратных, прямоугольных, треугольных и других. После построения сетки исходное дифференциальное уравнение заменяется разностным уравнением во всех внутренних узлах сетки. Затем на основании граничных условий устанавливаются значения искомого решения в граничных узлах. Присоединяя граничные условия сеточной задачи к разностным уравнениям, записанных для внутренних узлов, получаем систему уравнений, из которой определяем значения искомого решения во всех узлах сетки.
Замена дифференциального уравнения разностным может быть осуществлена разными способами. Один из способов аппроксимации состоит в том, что производные, входящие в дифференциальное уравнение, заменяются линейными комбинациями значений функции в узлах сетки по тем или иным формулам численного дифференцирования. Различные формулы численного дифференцирования имеют разную точность, поэтому от выбора формул аппроксимации зависит качество аппроксимации дифференциального уравнения разностным уравнением.
Заметим, что эту полуполосу всегда можно привести к полуполосе, когда . Уравнение (1.2) будем решать с начальными условиями:
, (1.3)
– известная функция, и краевыми условиями:
(1.4)
где – известные функции переменной .
Для решения задачи область покроем сеткой .
Узлы сетки, лежащие на прямых , и будут граничными. Все остальные узлы будут внутренними. Для каждого внутреннего узла дифференциальное уравнения (1.2) заменим разностным. При этом для производной воспользуемся следующей формулой:
.
Для производной запишем следующие формулы:
,
,
.
Можем получить три вида разностных уравнений:
, (1.5)
, (1.6)
, (1.7)
.
Разностные уравнения (1.5) аппроксимируют уравнение (1.2) с погрешностью , уравнение (1.6) – с такой же погрешностью, а уравнение (1.7) уже аппроксимирует уравнение (1.2) с погрешностью .
В разностной схеме (1.5) задействованы 4 узла. Конфигурация схемы (1.5) имеет вид:
В схеме (1.6) также участвуют 4 узла, и эта схема имеет вид:
В схеме (1.7) участвуют 5 узлов, и эта схема имеет вид:
Первая и третья схемы – явные, вторая схема неявная. В случае явных схем значения функции в узле очередного слоя можно найти, зная значения в узлах предыдущих слоев. В случае неявных схем для нахождения значений решения в узлах очередного слоя приходится решать систему уравнений.
Для узлов начального (нулевого) слоя значения решения выписываются с помощью начального условия (1.3):
(1.8)
Для граничных узлов, лежащих на прямых и , заменив производные по формулам численного дифференцирования, получаем из граничных условий (1.4) следующие уравнения:
(1.9)
Уравнения (1.9) аппроксимируют граничные условия (1.4) с погрешностью , так как используем односторонние формулы численного дифференцирования. Погрешность аппроксимации можно понизить, если использовать более точные односторонние (с тремя узлами) формулы численного дифференцирования.
Присоединяя к системе разностных уравнений, записанных для внутренних узлов, начальные и граничные условия (1.8) и (1.9) для разностной задачи получим полные разностные схемы трех видов. Для проведения вычислений самой простой схемой оказывается первая: достаточно на основании начального условия найти значения функции в узлах слоя , чтобы в дальнейшем последовательно определять значения решения в узлах слоев и т.д.
Третья схема также весьма проста для проведения вычислений, но при ее использовании необходимо кроме значений решения в узлах слоя найти каким-то образом значения функции и в слое . Далее вычислительный процесс легко организовывается. В случае второй схемы, которая является неявной, обязательно приходится решать систему уравнений для нахождения решения сеточной задачи.
С точки зрения точечной аппроксимации третья схема самая точная.
Введем в рассмотрение параметр . Тогда наши разностные схемы можно переписать, вводя указанный параметр. При этом самый простой их вид будет при .
В любом случае согласно методу сеток будем иметь столько уравнений, сколько имеется неизвестных (значения искомой функции в узлах). Число неизвестных равно числу всех узлов сетки. Решая систему уравнений, получаем решение поставленной задачи.
Разрешимость этой системы для явных схем вопросов не вызывает, так как все действия выполняются в явно определенной последовательности. В случае неявных схем разрешимость системы следует исследовать в каждом конкретном случае. Важным вопросом является вопрос о том, на сколько найденные решения хорошо (адекватно) отражают точные решения, и можно ли неограниченно сгущая сетку (уменьшая шаг по осям) получить приближенные решения, сколь угодно близкие к точным решениям? Это вопрос о сходимости метода сеток.
На практике следует применять сходящиеся разностные схемы, причем только те из них, которые являются устойчивыми, то есть при использовании которых небольшие ошибки в начальных или промежуточных результатах не приводят к большим отклонениям от точного решения. Всегда следует использовать устойчивые разностные схемы, проводя соответствующие исследования на устойчивость.
Первая из построенных выше разностных схем в случае первой краевой задачи будет устойчивой при . Вторая схема устойчива при всех значениях величины . Третья схема неустойчива для любых , что сводит на нет все ее преимущества и делает невозможной к применению на ЭВМ.
Явные схемы просты для организации вычислительного процесса, но имеют один весьма весомый недостаток: для их устойчивости приходится накладывать сильные ограничения на сетку. Неявные схемы свободны от этого недостатка, но есть другая трудность – надо решать системы уравнений большой размерности, что на практике при нахождении решения сложных уравнений в протяженной области с высокой степенью точности может потребовать больших объемов памяти ЭВМ и времени на ожидание конечного результата. К счастью, прогресс не стоит на месте и уже сейчас мощности современных ЭВМ вполне достаточно для решения поставленных перед ними задач.
1.2 Метод прогонки решения разностной задачи для уравнений параболического типа
Рассмотрим частный случай задачи, поставленной в предыдущем разделе. В области
найти решение уравнения
(1.10)
с граничными условиями
(1.11)
и начальным условием
. (1.12)
Рассмотрим устойчивую вычислительную схему, для которой величина не является ограниченной сверху, а, значит, шаг по оси и может быть выбран достаточно крупным. Покроем область сеткой
Запишем разностное уравнение, аппроксимирующее дифференциальное уравнение (1.10) во всех внутренних узлах слоя . При этом будем использовать следующие формулы:
,
.
Эти формулы имеет погрешность . В результате уравнение (1.10) заменяется разностным:
(1.13)
Перепишем (1.13) в виде:
. (1.14)
Данная вычислительная схема имеет следующую конфигурацию:
(1.15)
(1.16)
Система (1.14) – (1.16) представляет собой разностную задачу, соответствующую краевой задаче (1.10) – (1.12).
За величину мы положили .
(1.14) – (1.16) есть система линейных алгебраических уравнений с 3-диагональной матрицей, поэтому ее резонно решать методом прогонки, так как он в несколько раз превосходит по скорости метод Гаусса.
. (1.17)
Здесь , – некоторые коэффициенты, подлежащие определению. Заменив в (1.17) на будем иметь:
. (1.18)
Подставив уравнение (1.18) в (1.14) получим:
. (1.19)
Сравнив (1.17) и (1.19) найдем, что:
(1.20)
Положим в (1.14) и найдем из него :
,
.
(1.21)
Заметим, что во второй формуле (1.21) величина подлежит замене на согласно первому условию (1.15).
С помощью формул (1.21) и (1.20) проводим прогонку в прямом направлении. В результате находим величины
Затем осуществляем обратный ход. При этом воспользуемся второй из формул (1.15) и формулой (1.17). Получим следующую цепочку формул:
(1.22)
Таким образом, отправляясь от начального слоя , на котором известно решение, мы последовательно можем найти значения искомого решения во всех узлах стеки.
Итак, мы построили неявную схему решения дифференциальных уравнений параболического типа методом сеток.
1.3 Оценка погрешности и сходимость метода сеток
При решении задачи методом сеток мы допускаем погрешность, состоящую из погрешности метода и вычислительной погрешности.
Погрешность метода – это та погрешность, которая возникает в результате замены дифференциального уравнения разностным, а также погрешность, возникающая за счет сноса граничных условий с на .
Вычислительная погрешность – это погрешность, возникающая при решении системы разностных уравнений, за счет практически неизбежных машинных округлений.
Существуют специальные оценки погрешности для решения задач методом сеток. Однако эти оценки содержат максимумы модулей производных искомого решения, поэтому пользоваться ими крайне неудобно, однако эти теоретические оценки хороши тем, что из них видно: если неограниченно измельчать сетку, то последовательность решений будет сходиться равномерно к точному решению. Здесь мы столкнулись с проблемой сходимости метода сеток. При использовании метода сеток мы должны быть уверены, что, неограниченно сгущая сетку, можем получить решение, сколь угодно близкое к точному.
Итак, на примере решения краевой задачи для дифференциального уравнения параболического типа рассмотрим основные принципы метода сеток. Отметим, что если при решении разностной задачи небольшие ошибки в начальных и краевых условиях (или в промежуточных результатах) не могут привести к большим отклонениям искомого решения, то говорят, что задача поставлена корректно в смысле устойчивости по входным данным. Разностную схему называют устойчивой, если вычислительная погрешность неограниченно не возрастает. В противном случае схема называется неустойчивой.
1.4 Доказательство устойчивости разностной схемы
Пусть есть решение уравнения (1.14), удовлетворяющее возмущенным начальным условиям
и граничным условиям
.
Здесь – некоторые начальные ошибки.
.
Погрешность будет удовлетворять уравнению
(1.23)
(в силу линейности уравнения (1.14)), а также следующими граничными и начальными условиями:
, (1.24)
. (1.25)
Частное решение уравнения (1.23) будем искать в виде
. (1.26)
Здесь числа и следует подобрать так, чтобы выражение (1.26) удовлетворяло уравнению (1.23) и граничным условиям (1.24).
При целом удовлетворяет уравнению (1.23) и условиям (1.24).
Подставим уравнение (1.26) в уравнение (1.24). При этом получим:
.
Выражение в квадратных скобках равно
.
Подставляя это выражение в предыдущее уравнение вместо выражения в квадратных скобках и проводя сокращения на получим:
,
откуда находим :
.
Таким образом, согласно уравнению (1.26), получаем линейно-независимые решения уравнения (1.23) в виде
Заметим, что это частное решение удовлетворяет однородным краевым условиям (1.24). Линейная комбинация этих частных решений также является решением уравнения (1.23):
, (1.27)
причем , определенное в выражении (1.27), удовлетворяет для любых однородным граничным условиям (1.24). Коэффициенты подбираются исходя из того, что должны удовлетворять начальным условиям (1.25):
.
В результате получаем систему уравнений
,
содержащую уравнений с неизвестными . Решая построенную систему определяем неизвестные коэффициенты .
Для устойчивости исследуемой разностной схемы необходимо, чтобы при любых значениях коэффициентов , определяемое формулой (1.27), оставалось ограниченной величиной при . Для этого достаточно, чтобы для всех выполнялось неравенство
. (1.28)
Анализируя (1.28) видим, что это неравенство выполняется для любых значений параметра . При этом при или в крайнем случае, когда
,
остается ограниченным и при фиксированном не возрастает по модулю. Следовательно мы доказали, что рассматриваемая разностная схема устойчива для любых значений параметра .
2. Реализация метода
2.1 Разработка программного модуля
Поставлена цель: разработать программный продукт для нахождения приближенного решения параболического уравнения:
(1.29)
,
(1.30)
Разобьем область прямыми
– шаг по оси ,
– шаг по оси .
Заменив в каждом узле производные конечно-разностными отношениями по неявной схеме, получим систему вида:
. (1.31)
Преобразовав ее, получим:
, (1.32)
В граничных узлах
(1.33)
В начальный момент
. (1.34)
Эта разностная схема устойчива при любом . Будем решать систему уравнений (1.32), (1.33) и (1.34) методом прогонки. Для этого ищем значения функции в узле в виде
, (1.35)
где – пока неизвестные коэффициенты.
. (1.36)
Подставив значение (1.35) в (1.32) получим:
.
. (1.37)
Из сравнения (1.35) и (1.37) видно, что
. (1.38)
. (1.39)
Для из (1.32) имеем:
.
.
Откуда, используя (1.35), получим:
, (1.40)
. (1.41)
Используя данный метод, мы все вычисления проведем в следующем порядке для всех .
1) Зная значения функции на границе (1.33), найдем значения коэффициентов по (1.40) и по (1.38) для всех .
2) Найдем по (1.41), используя для начальное условие (1.34).
3) Найдем по формулам (1.39) для .
4) Найдем значения искомой функции на слое, начиная с :
2.2 Описание логики программного модуля
Листинг программы приведен в приложении 1. Ниже будут описаны функции программного модуля и их назначение.
Функция main() является базовой. Она реализует алгоритм метода сеток, описанного в предыдущих разделах работы.
Функция f (x, y) представляет собой свободную функцию двух переменных дифференциального уравнения (1.29). В качестве аргумента в нее передаются два вещественных числа с плавающей точкой типа float. На выходе функция возвращает значение функции , вычисленное в точке .
Функции mu_1 (t) и mu_2 (t) представляют собой краевые условия. В них передается по одному аргументу (t) вещественного типа (float).
Функция phi() является ответственной за начальный условия.
В функции main() определены следующие константы:
– правая граница по для области ;
– правая граница по для области ;
– шаг сетки по оси ;
– шаг сетки по оси ;
Варьируя и можно изменять точность полученного решения от менее точного к более точному. Выше было доказано, что используемая вычислительная схема устойчива для любых комбинаций параметров и , поэтому при устремлении их к нуля можем получить сколь угодно близкое к точному решение.
Программа снабжена тремя механизмами вывода результатов работы: на экран в виде таблицы, в текстовый файл, а также в файл списка математического пакета WaterlooMaple. Это позволяет наглядно представить полученное решение.
Программа написана на языке программирования высокого уровня Borland C++ 3.1 в виде приложения MS-DOS. Обеспечивается полная совместимость программы со всеми широко известными операционными системами корпорации Майкрософт: MS-DOS 5.x, 6.xx, 7.xx, 8.xx, Windows 9x/Me/2000/NT/XP.
2.3 Пример работы программы
В качестве примера рассмотрим численное решение следующего дифференциального уравнения параболического типа:
,
Задав прямоугольную сетку с шагом оси 0.1 и по оси 0.01, получим следующее решение:
В таблице ось x расположена горизонтально, а ось t расположена вертикально и направлена вниз.
На выполнение программы на среднестатистическом персональном компьютере тратится время, равное нескольким миллисекундам, что говорит о высокой скорости алгоритма.
Подробно выходной файл output.txt, содержащий таблицу значений функции представлен в приложении 3.
В работе был рассмотрен метод сеток решения параболических уравнений в частных производных. Раскрыты основные понятия метода, аппроксимация уравнения и граничных условий, исследована разрешимость и сходимость получаемой системы разностных уравнений.
На основании изученного теоретического материала была разработана программная реализация метода сеток, проанализирована ее сходимость и быстродействие, проведен тестовый расчет, построен графики полученного численного решения.
Постановка задач для уравнений параболического типа
Классическим примером уравнения параболического типа является уравнение теплопроводности (диффузии). В одномерном по пространству случае однородное (без источников энергии) уравнение теплопроводности имеет вид
. (2.1)
Если на границах х=0 и х=l заданы значения искомой функции u(x,t) в виде
(2.2)
т.е. граничные условия первого рода, и, кроме того, заданы начальные условия
то задачу (2.1)-(2.4) называют первой начально-краевой задачей для уравнения теплопроводности (2.1).
В терминах теории теплообмена u(x,t) – распределение температуры в пространственно-временной области коэффициент температуропроводности, а (2.2), (2.3) с помощью функций ϕ0(t), ϕl(t) задают температуру на границах x=0 и x=l.
Если на границах х=0 и х=l заданы значения производных искомой функции по пространственной переменной
(2.5) (2.6)
т.е. граничные условия второго рода, то задачу (25.1), (2.5), (2.6), (2.4) называют второй начально-краевой задачей для уравнения теплопроводности (2.1). В терминах теории теплообмена на границах в этом случае заданы тепловые потоки.
Если на границах заданы линейные комбинации искомой функции и ее производной по пространственной переменной
(2.7)
(2.8)
т.е. граничные условия третьего рода, то задачу (2.1), (2.7), (2.8), (2.4) называют третьей начально-краевой задачей для уравнения теплопроводности (2.1). В терминах теории теплообмена граничные условия (2.7), (2.8) задают теплообмен между газообразной или жидкой средой и границами расчетной области с неизвестными температурами u(0,t), u(l,t).
Для пространственных задач теплопроводности в области первая начально-краевая задача имеет вид
Аналогично ставится вторая и третья начально-краевые задачи для пространственного уравнения задачи (2.9) – (2.11).
На практике часто ставятся начально-краевые задачи теплопроводности со смешанными краевыми условиями, когда на границах задаются граничные условия различных родов.
2.1.2. Понятие о методе конечных разностей. Применение метода конечных разностей к решению уравнений параболического типа
Основные определения, связанные с методом конечных разностей, рассмотрим на примере конечно-разностного решения первой начально-краевой задачи для уравнения теплопроводности (2.1)-(2.4). Нанесем на пространственно-временную область 0≤x≤l, 0≤t≤T конечно-разностную сетку ω hτ
(2.12)
с пространственным шагом h=l/N и шагом по времени τ=T/K (рис 2.1).
Введем два временных слоя: нижний t k =kτ , на котором распределение искомой функции u(xj,t k ), известно (при k=0 распределение определяется начальным условием (2.4) u(xj,t 0 )=ψ(xj)) и верхний временной слой t k+1 =(k+1)τ, на котором распределение искомой функции u(xjj,t k+1 ), j=0,1,…,N подлежит определению.
Рис. 2.1. Конечно-разностная сетка
Сеточной функцией задачи (2.1)-(2.4) (обозначение ) назовем однозначное отображение целых аргументов j, k в значения функции
На введенной сетке (2.12) введем сеточные функции первая из которых известна, вторая – подлежит определению. Для ее определения в задаче (2.1)-(2.4) заменим (аппроксимируем) дифференциальные операторы отношением конечных разностей (см. раздел «Численное дифференцирование»), получим
(2.13)
(2.14)
Подставляя (2.13), (2.14) в задачу (2.1)-(2.4), получим явную конечно-разностную схему для этой задачи в форме
(2.15)
где для каждого j-го уравнения все значения сеточной функции известны, за исключением одного , которое может быть определено явно из соотношений (2.15). В соотношения (2.15) краевые условия (j=0, j=N) входят при значениях j=1 и j=N-1, а начальное условие – при k=0.
Если в (2.14) дифференциальный оператор по пространственной переменной аппроксимировать отношением конечных разностей на верхнем временном слое
(2.16)
то после подстановки (2.13), (2.16) в задачу (2.1)-(2.4), получим неявную конечно-разностную схему для этой задачи
(2.17)
Теперь сеточную функцию на верхнем временном слое можно получить из решения СЛАУ (2.17) с трехдиагональной матрицей. Эта СЛАУ в форме, пригодной для использования метода прогонки, имеет вид
Шаблоном конечно-разностной схемы называют ее геометрическую интерпретацию на конечно-разностной сетке.
Рис. 2.2. Шаблоны явной и неявной конечно-разностных схем для уравнения теплопроводности
На рисунке 2.2 приведены шаблоны для явной (2.15) и неявной (2.17) конечно-разностных схем при аппроксимации задачи (2.1)-(2.4).
Явная конечно-разностная схема (2.15), записанная в форме
(2.18)
обладает тем достоинством, что решение на верхнем временном слое получается сразу (без решения СЛАУ) по значениям сеточных функций на нижнем временном слое , где решение известно (при k=0 значения сеточной функции формируются из начального условия (2.4.)). Но эта же схема обладает существенным недостатком, поскольку она является условно устойчивой с условием , накладываем на сеточные характеристики τ и h.
С другой стороны, неявная конечно-разностная схема (2.17), записанная форме
(2.19)
приводит к необходимости решать СЛАУ, но зато эта схема абсолютно устойчива.
Проанализируем схемы (2.18), (2.19). Пусть точное решение, которое не известно, возрастает по времени, т.е. . Тогда, в соответствии с явной схемой (2.18) разностное решение будет заниженным по сравнению с точным, т.к. определяется по меньшим значениям сеточной функции на предыдущем временном слое, поскольку решение является возрастающим по времени.
Для неявной схемы (2.19) на возрастающем решении, наоборот, решение завышено по сравнению с точным, поскольку оно определяется по значениям сеточной функции на верхнем временном слое.
На убывающем решении картина изменяется противоположным образом: явная конечно-разностная схема завышает решения, а неявная — занижает (см. рис. 2.3)
Рис. 2.3. Двусторонний метод аппроксимации
На основе этого анализа возникла идея о построении более точной неявно-явной конечно-разностной схемы с весами при пространственных конечно-разностных операторах, причем при измельчении шагов τ и h точное (неизвестное) решение может быть взято в ″вилку″ сколь угодно узкую, т.к. если явная и неявная схемы аппроксимируют дифференциальную задачу и эти схемы устойчивы, то при стремлении сеточных характеристик и h к нулю, решения по явной и неявной схемам стремятся к точному решению с разных сторон.
Рассмотрим неявно-явную схему с весами для простейшего уравнения теплопроводности
(2.20)
где θ — вес неявной части конечно-разностной схемы, 1−θ — вес для явной части, причем 0≤θ≤1. При θ=1 имеем полностью неявную схему, при θ=0 — полностью явную схему, и при θ=1/2 — схему Кранка-Николсона. Для схемы Кранка-Николсона (θ=1/2) порядок аппроксимации составляет , т.е. на один порядок по времени выше, чем обычные явная или неявная схемы.
Неявно-явная схема с весами (2.20) абсолютно устойчива при 1/2≤θ≤1 и условно устойчива с условием при 0≤θ 0 имеет вид:
Данное уравнение описывает, в частности, процесс малых поперечных колебаний струны. В этом случае u(x,t) — поперечные перемещения (колебания) струны, а – скорость распространения малых возмущений в материале, из которого изготовлена струна.
Если концы струны движутся по заданным законам, то есть на концах заданы перемещения (или значения искомой функции), то первая начально-краевая задача для волнового уравнения имеет вид:
(3.1)- (3.5)
причем, если концы струны жестко закреплены, то ϕ0(t)=ϕl(t)=0.
Как видно, в задачах для волнового уравнения, кроме начального распределения искомой функции, задается еще распределение начальной скорости перемещения.
Если на концах струны заданы значения силы, которая по закону Гука пропорциональна значениям производной перемещения по пространственной переменной (то есть на концах заданы значения первых производных по переменной x), то ставится вторая начально-краевая задача для волнового уравнения:
В условиях, когда концы струны свободны, функции ϕ0(t)=ϕl(t)=0.
Наконец в условиях, когда концы закреплены упруго, т.е. на концевые заделки действуют силы, пропорциональные перемещениям, ставится третья начально-краевая задача для волнового уравнения:
Аналогично ставятся двумерные и трехмерные начально-краевые задачи для двумерного и трехмерного волнового уравнения.
3.2 Конечно-разностная аппроксимация уравнений гиперболического типа
Рассмотрим первую начально-краевую задачу для волнового уравнения (3.1)-(3.5). На пространственно-временной сетке (3.12) будем аппроксимировать дифференциальное уравнение (3.1) одной из следующих конечно-разностных схем:
(3.6) с шаблоном на рисунке 3.1а и
(3.7)
Рис. 3.1. Шаблоны конечно-разностных схем для волнового уравнения
с шаблоном на рисунке 3.1 б
При этом схема (3.6) является явной. С ее помощью решение определяется сразу, поскольку значения сеточных функции , на нижних временных слоях должны быть известны. В соответствии с шаблоном для этой схемы порядок аппроксимации равен двум, как по пространственной, так и по временной переменной. При этом явная конечно-разностная схема (3.6) для волнового уравнения условно устойчива с условием , накладываемым на сеточные характеристики τ , h..
Схема (3.7) является неявной схемой и обладает абсолютной устойчивостью. Ее можно свести к СЛАУ с трехдиагональной матрицей, решаемой методом прогонки.
В обеих схемах необходимо знать значения на нижних временных слоях. Для k=1 это делается следующим образом:
(3.8)
где функция из начального условия (3.5).
Для определения можно воспользоваться простейшей аппроксимацией второго начального условия (3.6):
Откуда для искомых значений получаем следующее выражение:
Недостатком такого подхода является первый порядок аппроксимации второго начального условия. Для повышения порядка аппроксимации воспользуемся следующей процедурой.
Разложим в ряд Тейлора на точном решении по времени в окрестности t=0 :
. (3.9)
Для определения второй производной в выражении (3.9) воспользуемся исходным дифференциальным уравнением .
В результате получаем искомую сеточную функцию со вторым порядком точности:
. После определения из начальных условий значений сеточных функций , на двух первых временных слоях вычислительный процесс продолжается согласно схемам (3.8) или (3.9). При этом аппроксимация краевых условий (3.3) и (3.4) производится аналогично тому, как это описывалось выше для уравнений параболического типа. Для иллюстрации этого этапа рассмотрим следующий пример.
Выписать явную конечно-разностную схему для третьей начально-краевой задачи.
Аппроксимация дифференциального уравнения на шаблоне (3.1б) выглядит следующим образом:
где .
Граничные условия аппроксимируем с первым порядком:
. В результате переход на новый временной слой представляется следующим алгоритмом:
Таким образом, сначала рассчитываются значения искомой функции u во внутренних узлах на новом временном слое, после чего из аппроксимации граничных условий находятся значения функции в крайних узлах.
Для окончательного замыкания вычислительного процесса определим, исходя из начальных условий, значения искомой функции на двух первых временных слоях
В начальный момент времени значения определяются точно:
. Если воспользоваться аппроксимацией первого порядка по времени, то как было показано выше, получим
. Для повышения порядка аппроксимации разложим в ряд Тейлора на точном решении по времени в окрестности t=0 :
где, согласно исходному уравнению
Окончательно получаем .
Тема 4. Разностные схемы для уравнений эллиптического типа Задача Дирихле для уравнения Пуассона в квадрате. Аппроксимация. Однозначная разрешимость. Принцип максимума. Устойчивость. Разностная задача Дирихле в прямоугольнике. Сложная область. Связные и несвязные области. Метод установления. Явная и неявная схемы. Схема переменных направлений. Анализ явной схемы установления и анализ схемы переменных направлений.
Классическим примером уравнения эллиптического типа является уравнение Пуассона
или уравнение Лапласа при f(x,y)≡0.
Здесь функция u(x,y) имеет различный физический смысл, а именно: стационарное, независящее от времени, распределение температуры, скорость потенциального (безвихревого) течения идеальной (без трения и теплопроводности) жидкости, распределение напряженностей электрического и магнитного полей, потенциала в силовом поле тяготения и т.п.
Если на границе Г расчетной области задана искомая функция, то соответствующая первая краевая задача для уравнения Лапласа или Пуассона называется задачей Дирихле
(4.1)-(4.2)
Если на границе Г задается нормальная производная искомой функции, то соответствующая вторая краевая задача называется задачей Неймана для уравнения Лапласа или Пуассона
(4.3)-(4.4)
При этом n – направление внешней к границе Г нормали.
Более приемлемой является координатная форма краевого условия (4.4)
где − направляющие косинусы внешнего вектора единичной нормали к границе Г, i и j орты базисных векторов.
Наконец третья краевая задача для уравнения Пуассона (Лапласа) имеет вид
4.1. Конечно-разностная аппроксимация задач для уравнений эллиптического типа
Рис. 4.1. Центрально-симметричный шаблон
Рассмотрим краевую задачу для уравнений Лапласа или Пуассона (4.1), (4.2) в прямоугольнике , на который наложим сетку
(4.5)
На этой сетке аппроксимируем дифференциальную задачу во внутренних узлах с помощью отношения конечных разностей по следующей схеме (вводится сеточная функция ):
(4.6)
которая на шаблоне имеет второй порядок по переменным и , поскольку шаблон центрально симметричен.
СЛАУ имеет пяти-диагональный вид (каждое уравнение содержит пять неизвестных и при соответствующей нумерации переменных матрица имеет ленточную структуру). Решать ее можно различными методами линейной алгебры, например, итерационными методами, методом матричной прогонки и т.п.
Рис.4.2 Центрально- симметричный шаблон
Рассмотрим разностно-итерационный метод Либмана численного решения задачи Дирихле (4.1), (4.2). Для простоты изложения этого метода примем , тогда из схемы (4.6 ) получим (k-номер итерации)
(4.8)
На каждой координатной линии (например, ) с помощью линейной интерполяции (см. рис.4.3) граничных значений определим на нулевой итерации, подставив которые в (4.8), получим распределение на первой итерации
Рис. 4.3. К разностно-итерационному методу Либмана
Это распределение снова подставляются в (4.8), получаем распределение и т.д. Процесс Либмана прекращается, когда ,
где — наперед заданная точность.
При решении задач с граничными условиями 2-го и 3-го родов наряду с аппроксимацией дифференциального уравнения производится также аппроксимация граничных условий. Здесь в качестве примера приведем разностную схему, аппроксимирующую третью краевую задачу для уравнения Пуассона в прямоугольнике.
Как и ранее в прямоугольнике построим сетку
На этой сетке аппроксимируем дифференциальную задачу во внутренних узлах по рассмотренной выше центрально-разностной схеме
. Граничные условия аппроксимируем с первым порядком с помощью направленных разностей:
. В результате получена СЛАУ, содержащая уравнений (N1+1)(N2+1)-4 относительно неизвестных (i=0,1,…,N1 , j=0,1,…,N2 ) при этом угловые узлы с координатами (i,j), равными в вычислениях не участвуют). Как и в случае граничных условий первого рода, она имеет пятидиагональный вид и может быть решена, например, итерационным методом Либмана.
Замечание. Метод простых итераций для решения СЛАУ, возникающих при аппроксимации уравнения Пуассона (Лапласа), отличается довольно медленной сходимостью. Этот недостаток может стать существенным при использовании мелких сеток, когда число уравнений в системе становится большим.
Тема 5. Вариационные и вариационно-разностные методы Метод Ритца. Описание метода Ритца. Формулировка метода и применение для решения разностной задачи Дирихле. Построение простейших разностных уравнений диффузии с помощью метода Ритца.
Глава 4, §4.1, §4.2, §4.3, §4.4 В.С. Владимиров, В.В. Жаринов Уравнения математической физики, М.: Физматлит, 2003.
Тема 6. Численные методы решения интегральных уравнений Метод конечных сумм для решения интегральных уравнений Фредгольма и Вольтерра. Метод вырожденных ядер. Резольвента. Нахождение собственных значений и собственных функций. Метод наименьших квадратов. Методы Монте-Карло.
Соболь И.М.. Численные методы Монте-Карло. М.: Наука, 1973.
Соболь И.М.. Метод Монте-Карло. М.: Наука, 1985.
Список литературы
1 .Калиткин Н.Н. Численные методы. М.: Наука, 1978.
2. Демидович Б.П., Марон И.А., Шувалова Э.Э. Численные методы анализа. М.: Наука, 1967.