Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Метод покомпонентного расщепления



 

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

Пусть в (3.1) оператор  не зависит от времени и представим в виде  при условии, что  и . Рассмотрим аппроксимацию этих матриц на интервале  в форме

 

 

в предположении, что их элементы имеют достаточную гладкость.

Построим систему разностных уравнений, состоящую из последовательности простейших схем Кранка - Николсона

 

   (3.10)

 

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

 

(3.11)

(3.12)

 

Если , , то при достаточной гладкости элементов этих матриц и решения  задачи (3.1) разностная схема (3.10) абсолютно устойчива и аппроксимирует исходное уравнение со вторым порядком по  в случае, если  и  коммутируют, т.е. , и с первым, если не коммутируют.

Рассмотрим двуцикличный метод покомпонентного расщепления. Будем аппроксимировать операторы  и  на интервале . Положим

 

.

 

Построим следующие две системы разностных уравнений

 

  (3.13)

  (3.14)

 

Имеем

 

,    (3.15)

 

Двуцикличный метод абсолютно устойчив, а схема (3.15) аппроксимирует исходное уравнение (3.1) со вторым порядком по

Будем искать решение неоднородной задачи с помощью двуцикличного полного расщепления.

Рассмотрим систему разностных уравнений вида (3.13), (3.14), записанных в более удобной форме

 

(3.16)

 

где . Разрешая эти уравнений относительно , получим

 

  (3.17)

(3.18)

(3.19)

 

С помощью разложения по степеням малого параметра  придем к соотношению

 

(3.20)

 


которое преобразуем к виду

 

  (3.21)

 

Исключим , используя разложение решения в ряд Тейлора в окрестности точки . С точностью до  будем иметь

 

(3.22)

 

Производную  исключим с помощью соотношения

 

(3.23)

 

Подставим (3.23) в (3.22). Тогда

 

  (3.24)

  (3.25)

 

Подставим соотношение (3.25) в (3.24). В результате будем иметь

 

   (3.26)

 

Очевидно, что уравнение (3.26) аппроксимирует исходное уравнение (3.1) на интервале  со вторым порядком по . Таким образом, найдена разностная аппроксимация неоднородного эволюционного уравнения второго порядка с помощью двуцикличного метода.

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

 


Описание программной реализации решения двумерной задачи

 

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

- параметры области решения задачи;

-  компоненты вектора скорости воздушных масс в направлении осей  соответственно ;

-  коэффициенты диффузии в направлении осей  соответственно ;

- мощность источника примеси;

- величина, характеризующая взаимодействие примесей с подстилающей поверхностью (л);

- координаты источников, в которых проводятся наблюдения за распространением примеси;

- количество итераций по времени исследования;

-  количество шагов по временной переменной;

- количество шагов по пространственным переменным.

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

 

Выбор среды реализации

 

Для написания программы была использована среда Compaq Visual Fortran 6.5. Этот выбор обусловлен тем, что Fortran - один из самых мощных языков программирования, позволяющий работать с типами данных повышенной точности, что очень важно при выполнении математических расчётов. Fortran изначально был создан для научных и численных расчетов и всё его последующее развитие ориентировано прежде всего на подобные приложения.

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

 

Описание программы

 

Все входные параметры находятся в отдельном текстовом файле in. txt, их можно изменять непосредственно в этом файле. Ввод данных осуществляется под управлением именованного списка.

Имя списка ввода в данной программе: input. Таким образом, оператор NAMELIST объявления именованного списка ввода есть в разделе объявлений программной единицы и имеет вид: namelist /input/ L, h, tau, T, n, u, w, mu, nu, M, constX, constZ, lambda где после /input/ идёт перечисление заранее определённых в программе в принадлежности какому-либо типу переменных. При вводе именованного списка оператор ввода ищет в файле in. txt начало списка, которое имеет вид: $ input. Перечень принадлежащих именованному списку данных завершается знаком доллара ($). Имена переменных во входном файле при использовании именованного списка ввода должны совпадать с соответствующими именами списка переменных оператора NAMELIST.

Написанная программа реализует схему расщепления по физическим процессам.

Рассмотрим первый этап, который соответствует переносу. Разобьем весь промежуток [0, T] на элементарные. Переносу соответствует следующий оператор:

 

.

 

Соответствующий разностный аналог имеют вид

 

 

где  - шаги сетки вдоль соответствующих осей.

Рассмотрим следующий этап, соответствующий диффузии и поглощения субстанции. А именно будем рассматривать оператор

 

.

 

Разностный аналог оператора будет иметь вид

 

где

 

За  при этом принимается решение задачи на предыдущем этапе (когда рассматривался только перенос).

В результате получается схема второго порядка аппроксимации по  и по .

Для граничных значений получаем конечноразностные формулы следующего вида:

 

,

,

,

 

.

Основные вычисления происходят в цикле по временной переменной tc. Вначале описывается удовлетворение граничным условиям. Начальное распределение концентрации примеси записывается в двумерный массив fi. Сначала в этом цикле происходит решение системы уравнений, описывающих явление переноса загрязняющих веществ, затем уравнений, описывающих диффузию примеси. Это делается при помощи метода прогонки [8] (так как матрица этой системы является блочно-диагональной с трехдиагональными блоками, первое и последнее уравнение в блоке аппроксимируют соответствующие граничные условия, поэтому в начале цикла они не учитывались). Промежуточный результат записывается в двумерный массив fipr затем, используя получившиеся данные, переходим к следующей системе и проделываем аналогичные действия. После того как, завершился шаг покомпонентного расщепления, результаты записываются в массив fi, выполняется присваивание массиву fi значений массива fipr, происходит вывод результатов на текущем шаге по времени в файл и управление передаётся на начало цикла. На каждой итерации по времени можно увидеть картину распространения примеси.

Вывод производится в текстовый файл out. txt, а из него нужные данные можно выбрать, например, в файл с именем out 1. txt и визуализировать в Maple в готовом файле out 1. mws.

 


Поделиться:



Последнее изменение этой страницы: 2020-02-17; Просмотров: 63; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.037 с.)
Главная | Случайная страница | Обратная связь