Численное решение дифференциальных уравнений параболического типа

Курсовая работа: Решение параболических уравнений

Видео:Дифференциальные уравнения. 11 класс.Скачать

Дифференциальные уравнения. 11 класс.

Реферат

Видео:Численное решение задачи Коши методом ЭйлераСкачать

Численное решение задачи Коши методом Эйлера

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

Объем курсовой работы: 33 с.

Ключевые слова: параболическое уравнение, уравнение теплопроводности, метод сеток, краевая задача, конечные разности.

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

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

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

1.3 Оценка погрешности и сходимость метода сеток

1.4 Доказательство устойчивости разностной схемы

2. Реализация метода

2.1 Разработка программного модуля

2.2 Описание логики программного модуля

2.3 Пример работы программы

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

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

Численное решение дифференциальных уравнений параболического типа.

Заметим, что численными методами приходится решать и нелинейные уравнения, но находить их решение много труднее, чем решение линейных уравнений.

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

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

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

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

Численное решение дифференциальных уравнений параболического типа. (1.1)

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

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

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

Рассмотрим неоднородное уравнение теплопроводности, являющееся частным случаем уравнений параболического типа:

Численное решение дифференциальных уравнений параболического типа, (1.2)

Численное решение дифференциальных уравнений параболического типа– известная функция.

Будем искать решение этого уравнения в области

Численное решение дифференциальных уравнений параболического типа

Заметим, что эту полуполосу всегда можно привести к полуполосе, когда Численное решение дифференциальных уравнений параболического типа. Уравнение (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, получим следующее решение:

2.10 1.91 1.76 1.63 1.53 1.44 1.37 1.31 1.26 1.22 1.18

2.11 1.75 1.23 1.20 1.15 1.10 1.07 1.04 1.04 1.07 1.21

2.12 1.61 0.95 0.96 0.93 0.91 0.90 0.90 0.94 1.03 1.24

2.13 1.51 0.79 0.81 0.81 0.80 0.81 0.83 0.89 1.03 1.27

2.14 1.45 0.69 0.73 0.74 0.74 0.76 0.80 0.88 1.04 1.31

2.15 1.41 0.64 0.69 0.70 0.71 0.74 0.79 0.89 1.05 1.34

В таблице ось x расположена горизонтально, а ось t расположена вертикально и направлена вниз.

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

Подробно выходной файл output.txt, содержащий таблицу значений функции Численное решение дифференциальных уравнений параболического типапредставлен в приложении 3.

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

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

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

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

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

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


источники:

📸 Видео

Сеточные методы решения дифференциальных уравнений в частных производных.Скачать

Сеточные методы решения дифференциальных уравнений в частных производных.

Численное решение системы дифференциальных уравнений(задачи Коши)Скачать

Численное решение системы дифференциальных уравнений(задачи Коши)

Численное решение дифференциальных уравнений (задачи Коши)Скачать

Численное решение дифференциальных уравнений (задачи Коши)

Метод ЭйлераСкачать

Метод Эйлера

5 Численное решение дифференциальных уравнений Part 1Скачать

5  Численное решение дифференциальных уравнений Part 1

МЗЭ 2022 Численное решение дифференциальных уравнений. Неявный метод Эйлера. Ложкин С.А.Скачать

МЗЭ 2022 Численное решение дифференциальных уравнений.  Неявный метод Эйлера. Ложкин С.А.

Решение системы дифференциальных уравнений методом ЭйлераСкачать

Решение системы дифференциальных уравнений методом Эйлера

Лекция №1.1 Явная и неявная схемы для уравнения теплопроводностиСкачать

Лекция №1.1 Явная и неявная схемы для уравнения теплопроводности

Численное решение дифференциальных уравнений ч.1Скачать

Численное решение дифференциальных уравнений ч.1

Python - численное решение дифференциального уравнения 1го порядка и вывод графикаСкачать

Python - численное решение дифференциального уравнения 1го порядка и вывод графика

18+ Математика без Ху!ни. Дифференциальные уравнения.Скачать

18+ Математика без Ху!ни. Дифференциальные уравнения.

Лукьяненко Д. В. - Дифференциальные уравнения - Лекция 1Скачать

Лукьяненко Д. В. - Дифференциальные уравнения - Лекция 1

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

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

13. Как решить дифференциальное уравнение первого порядка?Скачать

13. Как решить дифференциальное уравнение первого порядка?

Вычислительная математика 20 Уравнения параболического типаСкачать

Вычислительная математика 20 Уравнения параболического типа
Поделиться или сохранить к себе:
Название: Решение параболических уравнений
Раздел: Рефераты по математике
Тип: курсовая работа Добавлен 21:20:53 10 октября 2009 Похожие работы
Просмотров: 900 Комментариев: 21 Оценило: 4 человек Средний балл: 4.3 Оценка: неизвестно Скачать