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


Выпускная квалификационная (дипломная) работа. Моделирование миграции и осаждения примеси на основе конвекционно-диффузионной



Выпускная квалификационная (дипломная) работа

Моделирование миграции и осаждения примеси на основе конвекционно-диффузионной модели

 

 


Введение

конвекция уравнение программа двумерный

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

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

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

Этапы эволюции методов исследования отображены, например, в работе М.Е. Берлянда [1]. Применение моделей атмосферной диффузии к проблемам охраны окружающей среды получило значительное развитие в работах Г.И. Марчука [2 - 4].

В результате выполнения дипломной работы рассмотрены статические двумерные модели распространения загрязняющих примесей на фоне атмосферных процессов. Написана программа расчета и визуализации численных результатов на основе модели переноса однокомпонентных газовых примесей и аэрозолей, выбрасываемых неподвижным точечным источником. Для написания программы использованы следующие программные средства: Compaq Visual Fortran 6.5 и Maple 9.0.

 


Постановка задачи

 

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

Моделирование процессов трансформации загрязнителей представляет самостоятельный интерес, в рассматриваемых задачах будет учитываться лишь естественное разложение примеси [5]. Процесс возможной коагуляции примеси (в случае распространения аэрозольной субстанции) также не рассматривается [6].

 

Параметризация

 

При изучении различных явлений и процессов вводится ряд понятий, которые характеризуют рассматриваемое явление или процесс и могут быть заданы и определены с помощью чисел. Постановка любых экспериментов, результаты которых представляются в виде совокупности чисел, характеризующих стороны исследуемого явления, может осуществляться только на основе предварительного теоретического анализа. Для практики очень важно правильно выбрать безразмерные параметры, отражающие в наиболее удобной форме основные эффекты. Число их должно быть минимальным. Возможность такого предварительного качественно-теоретического анализа и выбора системы определяющих безразмерных параметров дает теория размерности [6].

Рассмотрим уравнение

 

 

Уравнение содержит группу параметров, характеризующих процесс распространения примеси. К числу этих параметров относятся:

-  скорость в направлении оси Ox ;

-  скорость в направлении оси Oz[w]=м/с;

-  коэффициент горизонтальной диффузии ;

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

-  коэффициент естественного распада ;

-  мощность источника выброса ;

-  координата сосредоточенного источника ;

-  координата сосредоточенного источника ;

-  концентрация примеси ;

;

; ;

; .

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

Пусть некоторые эталоны длины L, [L]=м, времени T, [T]=C и концентрации .

 

Тогда , , , , , .

 

Преобразуем уравнение

 

 

В этом уравнении все слагаемые безразмерные. Вводя обозначения , , , , , , уравнение диффузии можно представить

 


 

Установлением связей между размерными параметрами является предметом теории размерностей.

 


2. Модельные примеры для одномерного уравнения

 

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

В качестве модельного примера рассмотрим одномерное линейное уравнение переноса

 

 

где  - концентрация вещества, k=const - скорость переноса,  - функция, описывающая источник вещества.

Краевая задача имеет следующий вид:

(2.1)

 

Рассмотрим конечно-разностный метод. Обозначим как  Сформируем на области сеточную область  - совокупность узлов на прямоугольной сетке с шагами  и .

Обозначим через  и  точное и приближенное значение функции  в узле .

Обозначим как  - внутренние узлы сетки,  - пограничные узлы.


 

Тогда дифференциальное уравнение можно переписать следующим образом:

 

 

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

Таким образом, разностная схема для задачи (2.1) примет вид

 

    (2.2)

 

Задача (2.2) аппроксимирует на решениях задачи (2.1) и порядок аппроксимации - первый.

Рассмотрим случай одномерного диффузионного процесса

 

 

где  - концентрация вещества, k=const коэффициент диффузии  - функция, описывающая источник вещества.

Краевая задача имеет следующий вид:


  (2.3)

 

В области  Соответствующую сеточную область обозначим .

 

 

Явная разностная схема имеет вид

 

   (2.4)

 

Разностная схема (2.4) аппроксимирует задачу (2.3) с погрешностью первого порядка по  и второго по . Устойчивость разностной схемы выполняется при . Исходя из порядка аппроксимации и устойчивости получаем, что явная разностная схема (2.4) сходится к решению задачи (2.3).

Неявная разностная схема имеет вид

 

(2.5)


Метод стабилизации

 

Рассмотрим так называемый метод стабилизации. Для этого рассмотрим разностную схему решения (3.1) в предположении f =0:

 

(3.6)


где

Эта схема аппроксимирует исходную задачу со вторым порядком аппроксимации по .

С помощью ряда преобразований приводится к виду

 

(3.7)

 

где .

Отсюда видно, что (3.7) при достаточной гладкости решения совпадает со схемой Кранка - Николсона, т.е. имеет второй порядок аппроксимации по .

Эта разностная схема допускает удобную компьютерную реализацию.

В случае неоднородной задачи

 

,   (3.8)

 

где  при t=0.

В этом случае задача запишется следующим образом:

 

(3.9)

 

где , .

При условии  схема будет обладать вторым порядком аппроксимации по .

 


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

 

Для написания программы была использована среда 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.

 


Заключение

 

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

На основе изученной модели распространения загрязняющих примесей разработана программа, предоставляющая возможность проведения вычислительных экспериментов и анализа их результатов. Программа написана в среде Compaq Visual Fortran 6.5. Численные результаты выводятся в текстовый файл out. txt, из которого можно построить визуализацию в среде Maple.

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

 


Приложение

 

Листинг программы

 

program DiffTransnone

! Variables

integer n(8) L, T, M, constX, constZ, u, w, mu, nu, lambda, tau, tc/input/ L, T, M, constX, constZ, n, u, w, mu, nu, lambda, taui, j, k, z(8) fi (0: 100, 0: 100), fipr (0: 100, 0: 100), fi1 (0: 100, 0: 100)(8) a1 (0: 100), a2 (0: 100), a3 (0: 100), b (0: 100), pr (0: 100)(8) h, o, s, ff

! Body of DiffTrans(1, FILE = 'in.txt')(2, FILE = 'out.txt')(1, input)=L/n! 0.1i=1, n-1j=1, n-1(i, j)=0.0dodoj=1, n-1(0, j)=0.0(n, j)=0.0doi=1, n-1(i, n)=0.0(i, 0)=fi (i, 1)*nu/(h*lambda+nu)dok=0, n(2, *) k(2, ' (< n+1> (1x, f8.5))') (fi (i, k), i=0, n)do=0.0=fi=0.0while((abs (tc-T)> =tau).and. (z< =1000000))=z+1(2, *), 'tc=', tc=tc+tau=fi1j=1, n-1(0)=0.0(0)=1.0(0)=-1.0(0)=0.0(n)=1.0(n)=-1.0(n)=0.0(n)=0.0k=1, n-1(k)=(((-u*tau)/(4*h)) - (mu*tau)/(2*h*h))(k)=(1.0+(mu*tau)/(h*h))(k)=(((u*tau)/(4*h)) - (mu*tau)/(2*h*h))(k)=(fi (k, j) - ((tau*u*(fi (k+1, j) - fi (k-1, j)))/(4*h)+(tau*mu*(fi (k+1, j) - 2*fi (k, j)+fi (k-1, j)))/(2*h*h)))doprogonka (a1, a2, a3, b, pr, n); k=0, n(k, j)=pr(k)dodok=1, n-1(k, n)=0.0(k, 0)= fipr (i, 1)*nu/(h*lambda+nu)do=fipri=1, n-1(0)=0.0(0)= - nu/h-lambda(0)=nu/h(0)=0.0(n)=0.0(n)=1.0(n)=0.0(n)=0.0k=1, n-1(k)=(((-w*tau)/(4*h)) - (nu*tau)/(2*h*h))(k)=(1.0+(nu*tau)/(h*h))(k)=(((w*tau)/(4*h)) - (nu*tau)/(2*h*h))(k)=(fi (i, k) - ((tau*w*(fi (i, k+1) - fi (i, k-1)))/(4*h)+(tau*nu*(fi (i, k+1) - 2*fi (i, k)+fi (i, k-1))/(2*h*h)))+tau*f (i*h, k*h, M, constX, constZ))doprogonka (a1, a2, a3, b, pr, n)k=0, n(i, k)=pr(k)dodo=fipr=fiprk=0, n(2, *) k(2, ' (< n+1> (1x, f8.5))') (abs (fi(i, k)), i=0, n)do

do

(1)(2)program DiffTransf (o, s, consf, cx, cy)(8) f, consf, cx, cy, buf, o, s=0(o==cx.and. s==cy) then=consf*consf=0=buffunction f

progonka (a1, a2, a3, b, pr, n)(8) a1 (0: 100), a2 (0: 100), a3 (0: 100), b (0: 100), pr (0: 100)(8) pr1 (0: 100), pr2 (0: 100)i1, n(out) pr(n-1)=-a1 (n)/a2 (n)(n-1)=b(n)/a2 (n)i1=n - 1, 1, - 1(i1-1)=-a1 (i1)/(pr1 (i1)*a3 (i1)+a2 (i1))(i1-1)=(b(i1) - pr2 (i1)*a3 (i1))/(pr1 (i1)*a3 (i1)+a2 (i1))do(0)=(b(0) - a3 (0)*pr2 (0))/(a2 (0)+a3 (0)*pr1 (0))i1=1, n(i1)=pr1 (i1-1)*pr (i1-1)+pr2 (i1-1)

end dosubroutine

Выпускная квалификационная (дипломная) работа


Поделиться:



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


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