Явная разностная схема для уравнения теплопроводности шаблон

Разностные схемы для уравнения теплопроводности

3.1. Исходная задача. Будем рассматривать следующую первую краевую задачу для уравнения теплопроводности с постоянными коэффициентами. В области <0 n i = y(xi, tn),

Иногда для упрощения записи индексы i и n будем опускать, обозначая

Чтобы аппроксимировать уравнение (1) в точке (xi, tn), введем шаблон, изображенный на рисунке и состоящий из четырех узлов (xi±1, tn), (xi, tn), (xi, tn+1). Производную ¶u/¶t заменим в точке (xi, tn) разностным отношением y n t, i, а производную ¶ 2 u/¶ 2 x – второй разностной производной y n xx, i. Правую часть f(x, t) заменим приближенно сеточной функцией j n i, в качестве j n i можно взять одно из следующих выражений:

В результате получим разносное уравнение

которое аппроксимирует исходное дифференциальное уравнение в точке (xi, tn) с первым порядком по t и вторым порядком по h при условии, что разность j n i – f(xi, tn) имеет тот же порядок малости.

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

Эта схема представляет собой систему линейных алгебраических уравнений с числом уравнений, равным числу неизвестных. Находить решение такой системы следует по слоям. Решение на нулевом слое задано начальными условиями y 0 i = u0(xi), i = 0, 1,…, N. Если решение y n i, i = 0, 1,…, N, на слое n уже найдено, то решение yi n+1 на слое n+1 находится по явной формуле

а значения доопределяются из граничных

условий. По этой причине схема (6) называется явной разностной схемой. Несколько позже мы познакомимся и с неявными схемами, в которых для нахождения yi n+1 при заданных yi n требуется решать систему уравнений.

Погрешность разностной схемы (6) определяется как разность zi n = yi n – u(xi, tn) между решением задачи (6) и решением исходной задачи (1) – (3). Подставляя в (6) yi n = zi n + u(xi, tn), получим уравнение для погрешности

где – погрешность аппроксимации разностной

схемы (6) на решении задачи (1) – (3), y i n = O( t + h 2 ). Можно оценить решение zi n уравнения (8) через правую часть yi n и доказать тем самым сходимость разностной схемы (6) с первым порядком по t и вторым – по h. Однако это исследование мы отложим, а сейчас на примере схемы (6) продемонстрируем один распространенный прием исследования разностных схем с постоянными коэффициентами, называемый методом гармоник. Хотя данный метод не является достаточно обоснованным, в частности не учитывает влияния граничных условий и правых частей, он позволяет легко найти необходимые условия устойчивости и сходимости разностных схем. Покажем, например, что явную схему (6) можно применять лишь при условии t £ 0,5h 2 , означающем, что шаг по времени надо брать достаточно малым.

т.е. однородное уравнение, соответствующее (5). Будем искать частные решения (9), имеющие вид

yj n ( j ) = q n e ijh j , (10)

где i – мнимая единица, j – любое действительное число и q – число, подлежащее определению. Подставляя (10) в уравнение (9) и сокращая на e ijh j , получим

Начальные условия соответствующие решениям вида (10) (их называют гармониками), ограничены. Если для некоторого j множитель q станет по модулю больше единицы, то решение вида (10) будет неограниченно возрастать при n®¥. В этом случае разностное уравнение (9) называется неустойчивым, поскольку нарушается непрерывная зависимость его решения от начальных условий. Если же |q| £ 1 для всех действительных j, то все решения вида (10) ограничены при любом n и разностное уравнение (9) называется устойчивым. В случае неустойчивости найти решение разностной задачи (6) по формулам (7) практически невозможно, так как погрешности (например погрешности округления), внесенные в начальный момент времени, будут неограниченно возрастать при увеличении n. Такие разностные схемы называются неустойчивыми.

Для уравнения (9) неравенство |q| £ 1 выполняется согласно (11) при всех j тогда и только тогда, когда g £ 0,5. Таким образом, использование схемы (6) возможно лишь при выполнении условия t £ 0,5h 2 . Разностные схемы, устойчивые лишь при некотором ограничении на отношение шагов по пространству и по времени, называются условно устойчивыми. Следовательно, схема (6) возможно устойчива, причем условие устойчивости имеет вид t/h 2 £ 0,5. Условно устойчивые схемы для уравнений параболического типа используются редко, так как они накладывают слишком сильное ограничение на шаг по времени. Действительно, пусть, например, h = 10 -2 . Тогда шаг t не должен превосходить 0,5 * 10 -4 , и для того чтобы вычислить решение yj n при t = 1, надо взять число шагов по времени n = t -1 ³ 2 * 10 4 , т.е. провести не менее 2 * 10 4 вычислений по формулам (7).

3.3. Неявные схемы. Чисто неявной разностной схемой для уравнения теплопроводности теплопроводности (схемой с опережением) называется разностная схема, использующая шаблон (xi, tn), (xi ± 1 , tn+1), (xi, tn+1) и имеющая вид

Здесь j n i = f(xi, tn+1) + O( t + h 2 ). Схема имеет первый порядок аппроксимации по t и второй – по h. Решение системы (12) находится, как и в случае явной схемы, по слоям, начиная с n = 1. Однако, теперь, в отличие от явной схемы, для нахождения y i n+1 по известным yi n требуется решить систему уравнений

где g = t /h 2 , Fi n = yi n + t j i n . Эту систему можно решать методом прогонки, так как условия устойчивости прогонки выполнены.

Для исследования устойчивости разностной схемы (12) будем искать частные решения уравнения

имеющие вид (10). Тогда получим

следовательно, |q| £ 1 при любых j , t , h. Таким образом, схема (12) абсолютно устойчива, т.е. устойчива при любых шагах t и h. Абсолютная устойчивость является основным условием неявных схем. Теперь уже не надо брать шаг t слишком малым, можно взять, например, t = h = 10 -2 . Величина шагов сетки t , h определяются теперь необходимой точностью расчета, а не соображениями устойчивости.

Шеститочечной симметричной схемой называется разностная схема

для которой начальные и граничные условия задаются так же, как и в схеме (12). Эта схема использует шеститочечный шаблон, изображенный на рисунке.

Обобщением трех рассмотренных схем является однопараметрическое семейство схем с весами. Зададим произвольный действительный параметр s и определим разностную схему

При s = 0 получим отсюда явную схему, при s = 1 – чисто неявную схему и при s = 0,5 – симметричную схему (14). Исследуем погрешность аппроксимации схемы (15) на решении исходной задачи (1) – (3). Представим решение задачи (15) в виде yi n = u(xi, tn) + zi n , где u(xi, tn) – точное решение дифференциальной задачи (1) – (3). Тогда для погрешности получим систему уравнений

i = 1, 2,…, N – 1, n = 0, 1,…, K – 1,

Сеточная функция yi n , входящая в правую часть уравнения (16) и равная

(17)

называется погрешностью аппроксимации схемы (15) на решении задачи (1) – (3). Получим первые члены разложения функции yi n по степеням h и t. Будем разлагать все функции, входящие в выражение для yi n , по формуле Тейлора в точке (xi, tn + 0,5t). Учитывая разложения

Отсюда, проводя разложение в точке (xi, tn+1/2) и обозначая u = u (xi, tn+1/2), будем иметь

и, перегруппировывая слагаемые, получим, что

Учитывая уравнение (1) u’’ – u = – f и следствие из него u IV – u’’ = –f’’, окончательно можно записать, что

Из формулы (18) можно сделать следующие выводы. Если

то схема (15) имеет второй порядок аппроксимации по t и четвертый – по h. Такая схема называется схемой повышенного порядка аппроксимации. Если

то схема (15) имеет второй порядок аппроксимации по t и по h. При остальных значениях s и при j i n º 0 в виде (10), то получим

и |q| £ 1 при всех j, если

Отсюда видно, в частности, что все схемы с s ³ 0,5 абсолютно устойчивы. Схема повышенного порядка аппроксимации (s = s*) также абсолютно устойчива, что проверяется непосредственно.

При s ¹ 0 разностная схема (15) является неявной схемой. Для нахождения решения yi n+1 по заданным yi n требуется решать систему уравнений

где

Система (20) решается методом прогонки. Условия устойчивости прогонки при s ¹ 0 сводятся к неравенству

|1 + 2 s g | ³ 2 | s | g

и выполнены при s ³ – 1/(4g). Последнее неравенство следует из условия устойчивости (19) разностной схемы.

3.4. Уравнения с переменными коэффициентами и линейные уравнения. Рассмотрим первую краевую задачу для уравнения теплопроводности с переменными коэффициентами

где r (x, t), k(x, t), f(x, t) – достаточно гладкие функции, удовлетворяющие условиям

Дифференциальное выражение при каждом

фиксированном t аппроксимируем в точке (xi, t) так же, как и в стационарном случае, разностным отношением

где разностный коэффициент теплопроводности a(xi, t) должен удовлетворять условиям второго порядка аппроксимации

Наиболее употребительны следующие выражения для a(xi, t):

Разностная схема с весами для задачи (21) имеет вид

Здесь в качестве t можно взять любое значение t Î [tn, tn+1], например t = tn + 0,5 t. Если в уравнении (24) t = tn + 0,5 t , s = 0,5, то схема (24) имеет второй порядок аппроксимации по t и по h. При остальных значениях s и t выполняется первый порядок аппроксимации по t и второй – по h.

При исследовании устойчивости разностных схем с переменными коэффициентами иногда применяется принцип замороженных коэффициентов, сводящий задачу к уравнению с постоянными коэффициентами. Рассмотрим явную схему, соответствующую уравнению (24) с s = 0 и f(xi, t) º 0, т.е. схему

Предположим, что коэффициенты r (xi, t), a(xi, t) – постоянные, r (xi, t) º r = const, a(xi, t) º a = const. Тогда уравнение (25) можно записать в виде

или

Из п.2 известно, что последнее уравнение устойчиво при t ’ £ 0,5h 2 , т.е. при

Принцип замороженных коэффициентов утверждает, что схема (25) устойчива, если условие (26) выполнено при всех допустимых значениях a(xi, t), r (xi, t), т.е. если при всех x, t выполнены неравенства

Если известно, что 0 0, то неравенство (27) будет выполнено при

Строгое обоснование устойчивости схемы (25) будет дано в примере 2 из главы 2.

Если параметр s ³ 0,5, то из принципа замороженных коэффициентов следует абсолютная устойчивость схемы (24).

Рассмотрим теперь первую краевую задачу для нелинейного уравнения теплопроводности

В случае нелинейных уравнений, когда заранее неизвестны пределы изменения функции k(u), избегают пользоваться явными схемами. Чисто неявная схема, линейная относительно yi n+2 , i = 1, 2,…, N – 1, имеет вид

где ai = 0,5 (k(y n i) + k(y n i-1)). Эта схема абсолютно устойчива, имеет первый порядок аппроксимации по t и второй – по h. Решение yi n+1 , i = 1, 2,…, N – 1, находится методом прогонки. Заметим, что схему (29) можно записать в виде

Часто используется нелинейная схема

Для реализации этой схемы необходимо применить тот или иной итерационный метод. Например такой:

Здесь s – номер итерации. Как видим, нелинейные коэффициенты берутся с предыдущей итерации, а в качестве начального приближения для yi n+1 выбирается yi n . Это начальное приближение тем лучше, чем меньше шаг t. Число итераций M задается из соображений точности. В задачах с гладкими коэффициентами при k(u) ³ c1 > 0 часто бывает достаточно провести две – три итерации. Значения yi (S+1) на новой итерации находятся из системы (31) методом прогонки. При M = 1 итерационный метод (31) совпадает с разностной схемой (29).

Для приближенного решения нелинейного уравнения (28) применяются также схемы предиктор – корректор второго порядка точности, аналогичные методу Рунге – Кутта для обыкновенных дифференциальных уравнений. Здесь переход со слоя n на слой n+1 осуществляется в два этапа. Приведем пример такой схемы. На первом этапе решается неявная линейная система уравнений

из которой находятся промежуточные значения yi n+1/2 , i = 0, 1,…, N. Затем на втором этапе используется симметричная шеститочечная схема для уравнения (28), в которой нелинейные коэффициенты a(y), f(y) вычисляются при y = yi n+1/2 , т.е. схема

Явная разностная схема для уравнения теплопроводности шаблон

11.2.1. Явная схема Эйлера

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

Построение разностной схемы

Используем для решения уравнения теплопроводности шаблон, изображенный на рис. 11.6. Для дискретизации второй производной по пространственной координате необходимо использовать три последовательных узла, в то время как для разностной записи первой производной по времени достаточно двух узлов. Записывая на основании данного шаблона дискретное представление для (i, k) -го узла, получим разностное уравнение:

Приведем в разностной схеме (11.8) подобные слагаемые, перенеся в правую часть значения сеточной функции с индексом k (как часто говорят, с предыдущего слоя по времени), а в левую — с индексом k+i (т. е. со следующего временного слоя). Кроме этого, введем коэффициент с, который будет характеризовать отношение шагов разностной схемы по времени и пространству

Несколько забегая вперед, заметим, что значение

параметра с, называемого коэффициентом Куранта, имеет большое значение для анализа устойчивости разностной схемы. С учетом этих замечаний, разностная схема (11.8) запишется в виде:

Рис. 11.6. Шаблон аппроксимации явной схемы для уравнения теплопроводности

Множители для каждого из значений сеточной функции в узлах шаблона, соответствующие разностному уравнению (11.9), приведены рядом с каждой точкой шаблона на рис. 11.6. Фактически геометрия шаблона и эти множители задают построенную нами разностную схему.

Несложно убедиться в том, что для получения замкнутой системы разностных алгебраических уравнений систему (11.9) необходимо дополнить дискретным представлением начального и граничных условий (11.6) и (11.7). Тогда число неизвестных будет в точности равно числу уравнений, и процесс формирования разностной схемы будет окончательно завершен.

Важно подчеркнуть, что возможная нелинейность полученной системы алгебраических уравнений определяется зависимостями от температуры функций D(u) и ф (u) , т. е. как коэффициент диффузии, так и источник тепла могут быть функциями сеточной функции ui,k.

Если присмотреться к разностным уравнениям (11.9) повнимательнее, то можно сразу предложить несложный алгоритм реализации этой разностной схемы. Действительно, каждое неизвестное значение сеточной функции со следующего временного слоя, т. е. левая часть соотношения (11.9) явно выражается через три ее значения с предыдущего слоя (правая часть), которые уже известны. Таким образом, в случае уравнения теплопроводности нам очень повезло. Для расчета первого слоя по времени следует попросту подставить в (11.9) начальное условие (известные значения и с нулевого слоя в узлах сетки), для расчета второго слоя достаточно использовать вычисленный таким образом набор и с первого слоя и т. д. Из-за того что разностная схема сводится к такой явной подстановке, ее и называют явной, а благодаря пересчету значений с текущего слоя через ранее вычисленные слои — схемой бегущего счета.

Сделанные замечания относительно реализации явной схемы для уравнения диффузии тепла сразу определяют алгоритм ее программирования в Mathcad. Для решения задачи нужно аккуратно ввести в листинг соответствующие формулы при помощи элементов программирования.

Решение системы разностных уравнений (11.9) для модели без источников тепла, т.е. ф (x,T,t)=0 и постоянного коэффициента диффузии D=const приведено в листинге 11.1. В его первых трех строках заданы шаги по временной и пространственной переменным t и А , а также коэффициент диффузии о, равный единице. В следующих двух строках заданы начальные (нагретый центр области) и граничные (постоянная температура на краях) условия соответственно. Затем приводится возможное программное решение разностной схемы, причем функция пользователя v(t) задает вектор распределения искомой температуры в каждый момент времени (иными словами, на каждом слое), задаваемый целым числом t .

Листинг 11.1. Явная схема для линейного уравнения теплопроводности

Начальное распределение температуры вдоль расчетной области и решение для двух моментов времени показано на рис. 11.7 сплошной, пунктирной и штриховой линиями соответственно. Физически такое поведение вполне естественно — с течением времени тепло из более нагретой области перетекает в менее нагретую, а зона изначально высокой температуры остывает и размывается.

Рис. 11.7. Решение линейного уравнения теплопроводности (продолжение листинга 11.1)

Несколько забегая вперед, заметим, что показанное на рис. 11.7 решение и соответствует коэффициенту Куранта С =0.4. Попробуйте осуществить расчет с увеличенным временным шагом, чтобы коэффициент с был больше 1, и посмотрите, что из этого получится (такой расчет и его объяснение приведены ниже в разд. «Устойчивость»).

Намного более интересные решения можно получить для нелинейного уравнения теплопроводности, например, с нелинейным источником тепла ф (u)=10 3 (u-u 3 ) . Заметим, что в листинге 11.1 мы предусмотрительно определили коэффициент диффузии и источник тепла в виде пользовательских функций, зависящих от аргумента и, т. е. от температуры. Если бы мы собирались моделировать явную зависимость их от координат, то следовало бы ввести в пользовательскую функцию в качестве аргумента переменную х, как это сделано для источника тепла ф . Поэтому нет ничего проще замены определения этих функций с констант D(U)=1 и ф(х,u)=о на новые функции, которые станут описывать другие модели диффузии тепла. Начнем с того, что поменяем четвертую строку листинга 11.1 на ф(х,и)=ю3-(и-и3), не изменяя пока постоянного значения коэффициента диффузии.

С физической точки зрения, зависимость коэффициента диффузии и функции источника тепла от температуры означает, что эти параметры будут меняться от точки к точке среды, определяясь локальными значениями текущей температуры в этих точках. Ввод ненулевого источника тепла означает, что среда получает определенное количество тепла, тем большее, чем больше локальная температура. Можно догадаться, что введение такой зависимости может моделировать, в частности, горение среды.

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

Еще более неожиданные решения возможны при нелинейности также и коэффициента диффузии. Например, если взять квадратичный коэффициент диффузии D(x,u)=u 2 (что с учетом его умножения на неизвестные функции создаст кубическую нелинейность уравнения), а также ф(х,u)=10 3 -u 3 -5 , то вы сможете наблюдать совсем иной режим горения среды. В отличие от рассмотренного эффекта распространения тепловых фронтов, горение оказывается локализованным в области первичного нагрева среды, причем температура в центре нагрева со временем возрастает до бесконечной величины (рис. 11.9). Такое решение описывает так называемый режим горения «с обострением».

Рис. 11.8. Решение уравнения теплопроводности с нелинейным источником (тепловой фронт)

Рис. 11.9. Решение уравнения теплопроводности с нелинейным источником и коэффициентом диффузии (режим локализации горения)

Читателю предлагается поэкспериментировать с этим и другими нелинейными вариантами уравнения теплопроводности. Существенно, что такие интересные результаты удается получить лишь численно, а в Mathcad только с применением элементов программирования.

Как мы убедились, явная разностная схема Эйлера дает вполне разумные результаты и вполне может использоваться для практического моделирования задач, связанных с решением уравнений в частных производных. Однако теперь пришло время сказать об очень важной характеристике разностных схем, которая называется их устойчивостью. Не вдаваясь в детали, заметим, что производить расчеты можно только при помощи устойчивых разностных схем, а чтобы пояснить это понятие, обратимся вновь к листингу 11.1, реализующему явную схему для линейного уравнения диффузии.

Слегка изменим соотношение шагов по времени и пространственной координате, произведя расчеты сначала с t=0.0005 (эти результаты показаны на рис. 11.7 выше), а также с t=0.0010 и t=0.0015. Результат применения разностной схемы Эйлера для t=0.0010ю примерно тот же, что и для меньшего значения т, приведенного на рис. 11.7. А вот следующее (казалось бы, незначительное) увеличение шага по времени приводит к катастрофе (рис. 11.10).

Рис. 11.10. Численное решение уравнения теплопроводности при помощи явной схемы Эйлера (см. листинг 11.1 ниже с временным шагом t=0.0015)

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

Характерная «разболтка» решения как раз и является проявлением неустойчивости явной схемы Эйлера для выбранного соотношения шагов по времени и пространству. В теории численных методов показывается, что явная схема Эйлера для уравнения теплопроводности устойчива при значениях коэффициента Куранта, меньших 1, и неустойчива в противоположном случае. Иными словами, существует ограничение для выбора соотношения шагов, заключающееся в том, что для расчета на более частых пространственных сетках необходимо использовать также и малые шаги по времени.

Как несложно убедиться, для t=0.0005 коэффициент Куранта C=0.4, для t=0.0010 он все еще меньше единицы: C=0.8, а для t=0. 0015 решение уже больше единицы: C=1.2, в связи с чем схема становится неустойчивой (см. рис. 11.10).

Контрольная работа: Конечно-разностный метод решения для уравнений параболического типа

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

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

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

1 Теоретическая часть

1.1 Постановка задач для уравнений параболического типа

Классическим примером уравнения параболического типа является уравнение теплопроводности (диффузии). В одномерном по пространству случае однородное (без источников энергии) уравнение теплопроводности имеет вид

(1)

Если на границах и заданы значения искомой функции в виде

, , (2)

, , (3)

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

, , (4)

то задачу (1)-(4) называют первой начально-краевой задачей для уравнения теплопроводности (1).

В терминах теории теплообмена — распределение температуры в пространственно-временной области

a 2 — коэффициент температуропроводности, а (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) является необходимым условием устойчивости.

1.5 Схема Кранка-Николсона

параболическое дифференциальное уравнение конечная разность

Явная конечно разностная схема, записанная в форме

(21)

обладает тем достоинством, что решение на верхнем временном слое tk+l получается сразу (без решения СЛАУ) по значениям сеточной функции на нижнем временном слое t k , где решение известно (при 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 2 k / 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 ), полученные методом Кранка-Николсона

Название: Конечно-разностный метод решения для уравнений параболического типа
Раздел: Рефераты по математике
Тип: контрольная работа Добавлен 23:16:39 16 апреля 2011 Похожие работы
Просмотров: 16037 Комментариев: 20 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно Скачать
xi 00.10.20.30.40.50.60.70.80.91
ti
001.11801.53881.11800.363300.36331.11801.53881.11800
0.0100.61690.92880.86210.61770.49050.61770.86210.92880.61690
0.0200.39420.64800.71860.68000.64880.68000.71860.64800.39420
0.0300.28870.50670.62530.66650.67330.66650.62530.50670.28870
0.0400.23310.42580.55600.62510.64580.62510.55600.42580.23310
0.0500.19950.37200.49960.57540.60020.57540.49960.37200.19950
0.0600.17590.33150.45110.52530.55040.52530.45110.33150.17590
0.0700.15740.29810.40820.47780.50150.47780.40820.29810.15740
0.0800.14190.26930.36980.43380.45580.43380.36980.26970.14190
0.0900.1830.24370.33510.39360.41370.39360.33510.24370.12830
0.100.11610.22080.30380.35700.37530.35700.30380.22080.11610

Величины, полученные методом Кранка-Николсона, достаточно близки к

аналитическому решению u(x,t) = sin(πx)e -π2 t + sin(3πx)e -9π2 t , истинные значения для последнего представлены в таблице 2

Максимальная погрешность для данных параметров равна 0,005

Таблица 2 – точные значения u(х i , ti ), при t=0.1

xi 00.10.20.30.40.50.60.70.80.91
t11
0.100.11530.21920.30160.35440.37260.35440.30160.21920.11530

Рисунок 5 –Решениеu= u(х i , ti ), для метода Кранка-Николсона

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

В МКР строятся, как правило, регулярные сетки, особенности геометрии области учитываются только в около граничных узлах. В связи с этим МКР чаще применяется для анализа задач с прямолинейными границами областей определения функций.

Проблемой методов конечных разностей является высокая размерность результирующей системы алгебраических уравнений (несколько десятков тысяч в реальных задачах. Поэтому реализация методов конечных разностей в составе САПР требует разработки специальных способов хранения матрицы коэффициентов системы и методов решения последней.

1 Березин И.С., Жидков Н.П. Методы вычислений. Т.2. – М.: Физматгиз, 1962.

2 Мэтьюз, Джон, Г., Финк, Куртис, Д. Численные методы. Использование MATLAB, 3-е издание.— М. : Вильяме, 2001. — 720 с

3 Тихонов А.Н., Самарский А.А. Уравнения математической физики. – М.: Наука, 1972.

4 Формалев В.Ф., Ревизников Д.Л. Численные методы. – М.: ФИЗМАТЛИТ, 2004. — 400 с.

5 Пирумов У.Г. Численные методы. – М.: Издательство МАИ, 1998.

6 Калиткин Н.Н. Численные методы. – М.: Наука, 1976.

Листинг программы для расчета по методу Кранка-Николсона


источники:

http://sistemair.ru/dok/mathcad12/Glava_11/Index06.htm

http://www.bestreferat.ru/referat-213690.html