Методы решения уравнений переноса

Рассмотрение численных методов решения уравнений переноса и реализация одного из методов решения на языке программирования С/C++ и в пакете MS Excel. Рассмотрение и решение задачи Коши для уравнений переноса. Линейное одномерное уравнение переноса.

Рубрика Математика
Вид курсовая работа
Язык русский
Дата добавления 03.10.2017
Размер файла 578,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ИНСТИТУТ РАДИОЭЛЕКТРОНИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

Кафедра «ПРИКЛАДНАЯ МАТЕМАТИКА»

Курсовая работа

по дисциплине «Численные методы»

МЕТОДЫ РЕШЕНИЯ УРАВНЕНИЙ ПЕРЕНОСА

Студент Рыбин А.В.

Проверила Катаева Л.Ю.

Н. Новгород, 2012

Введение

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

Применение вычислительных методов в естественных науках получило в последние 3--4 десятилетия очень широкое распространение. Можно смело утверждать, что подобный «численный» уклон в процессе теоретического исследования многих классов задач не только не снизил качества подобных исследований, но и придал им более жизненный колорит, существенно приблизив результаты к требованиям инженерной практики.

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

Уравнение переноса - одно из фундаментальных уравнений математической физики, которое широко используется для описания движения сплошной среды. Оно является простейшим представителем класса уравнений, к которому относятся уравнения гидродинамики, магнитной и газовой динамики. Поэтому представляет интерес разработка численных методов решения этого уравнения и изучение их свойств.

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

Уравнения первого порядка называются также уравнениями переноса. Это объясняется тем, что такие уравнения описывают процессы переноса частиц в средах, распространения возмущений и т. п. В общем случае уравнения переноса могут иметь значительно более сложный вид (например, интегро-дифференциальное уравнение Больцмана в кинетической теории газов). Однако здесь мы ограничимся линейным уравнением с частными производными первого порядка. Его решение представляет интерес не только с практической точки зрения; в еще большей степени это уравнение полезно при разработке и исследовании разностных схем.

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

Здесь - скорость переноса, которую будем считать постоянной и положительной.

Начальные условия:

Граничные условия:

Таким образом, задача состоит в решении уравнения с начальным и граничным условиям и в ограниченной области G: .

Целью данной курсовой работы, заключается в том, чтобы понять и изучить численные методы решения уравнений переноса, а так же реализовать один из методов решения на языке программирования С/C++ и в пакете MS Excel, задача которого представлена выше. Для проверки сравнить полученные результаты.

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

Одно из самых простых уравнений в частных производных - это уравнение переноса (адвекции)

Для численного решения уравнения переноса можно использовать явную разностную схему

которая определена шаблоном на рис.1 (символом с «крышкой» обозначается значение сеточной функции с верхнего слоя по времени)

Рис. 1 Шаблон явной схемы

Уравнение переноса (при нулевом источнике, определяемом его правой частью) и постоянной скорости переноса с имеет решение в виде начального профиля u(x,t=0), перемещающегося вдоль оси х со скоростью с. Результаты расчета по данной схеме показаны на рис.2. Начальный профиль изображен сплошной кривой, а решение через несколько шагов по времени - пунктиром.

Рис. 2 Решения уравнения переноса

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

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

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

Рис. 3 Перенос с поглощением

Нелинейный перенос

Рассмотрим уравнение переноса, скорость которого с линейно зависит от неизвестной функции u(x,t):

Решения показаны на рис.4,5 для различных сочетаний коэффициентов

Рис. 4 Решение нелинейного уравнения переноса (с=5+2и)

Рис. 5 Решение нелинейного уравнения переноса (с=0+5и)

Рис. 5.1 Решение нелинейного уравнения переноса (с=10-5и)

Благодаря нелинейности, профиль решения изменяется с течением времени. Если >0, то передний фронт решения становится более крутым (рис. 5). Так происходит потому, что (при фиксированном ) участки решения ,где оно велико, обгоняют участки с меньшим. В результате возникает разрывное решение типа ударной волны. Если , то разрыв формируется на заднем фронте решения (рис. 5.1).

На самом деле, разрывного решения (рис. 4,5,5.1) при расчетах по явной схеме получить не удается, поскольку эта схема обладает свойством аппроксимационной вязкости и диссипативности, что приводит к «размытию» разрыва и уменьшению амплитуды фронта. Для исследования разрывных решений применяются специальные схемы.

Уравнение Бюргерса

Еще усложним уравнение переноса, добавив в него диффузионное слагаемое

Это уравнение при с(и)=и называют уравнением Бюргерса.

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

Рис. 6 Решение уравнения Бюргерса (с=20и, D=0.05)

Рис. 7 Решения уравнения Бюргерcа (c=10+10u, D=0.5)

Постановка задачи для линейных уравнений переноса

Рассмотрим задачи Коши для уравнений переноса следующего вида:

(1)

(2)

(3)

т.е. для одномерного линейного (a=const), одномерного квазилинейного и двумерного линейного (и не зависят от р) уравнений с финитными начальными данными.

Линейное одномерное уравнение переноса

численный уравнение перенос решение

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

Рассмотрим задачу Коши (1) для линейного одномерного уравнения переноса с a=const, а>0, и финитным начальным условием , где функция вне отрезка , а на этом отрезке задана одним из следующих способов:

«левый треугольник»

; (4)

«прямоугольник»

; (5)

«косинус»

(6)

«зуб»

(7)

«М»

(8)

«правый треугольник»

(9)

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

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

Для численного решения введем на плоскости (x,t) равномерную пространственно-временную сетку , где

Через обозначим число Куранта, через - шаги сетки по x и t. Здесь и далее будем использовать стандартные обозначения для сеточных величин: , где верхний индекс - номер временного слоя, нижний индекс - номер узла по х. Решение на слое j считаем известным.

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

1. Явная схема с левой разностью:

(10)

Схема имеет первый порядок аппроксимации по времени и по пространству. Она устойчива, если выполнено условие . При применение схемы дает точное решение. Ее первое дифференциальное приближение имеет вид

2. Схема Лакса - Вендроффа:

(11)

где

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

.

3. Схема с центральной разностью:

(12)

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

.

4. Схема Лакса:

(13)

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

.

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

Линейное уравнение переноса. Уравнения первого порядка называются также уравнениями переноса. Это объясняется тем, что такие уравнения описывают процессы переноса частиц в средах, распространения возмущений и т. п.

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

(1)

Здесь - скорость переноса, которую будем считать постоянной и положительной.

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

Характеристики уравнения (1) определяются соотношениями . При постоянном они являются прямыми линиями, которые в данном случае () наклонены вправо (рис 8.).

Рис. 8

Расчётная область решения уравнения (1) может быть бесконечной. так и ограниченной. В первом случае, задавая начальное условие при :

(2)

Получаем задачу Коши для полуплоскости . На практике обычно приходиться решать уравнения переноса в некоторой ограниченной области (например, в прямоугольнике ). Начальное условие в этом случае задаётся на отрезке ; граничное условие нужно задать при т.е. на отрезке , поскольку при a>0 возмущения распространяются вправо. Это условие запишем в виде

(3)

Таким образом, задача состоит в решении уравнения с начальным и граничным условиям и в ограниченной области G: .

Рассмотрим разностные схемы для решения задачи (1)-(3). Построим в области G равномерную прямоугольную сетку с помощью прямых и Вместо функций будем рассматривать сеточные функции значения которых в узлах cсоответственно равны . Для построения разностной схемы необходимо выбрать шаблон. Примем его в виде правого нижнего уголка (рис 9).

Рис. 9

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

(4)

Решая это разностное уравнение относительно единственного неизвестного значенияна слое, получаем следующую разностную схему:

, , (5)

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

Для начала счета по схеме (5), т.е. для вычисления сеточной функции на первом слое, необходимы её значения на слое Они определяются начальным условием (2), которое записываем для сеточной функции:

(6)

Граничное условие так же записывается в сеточном виде:

, (7)

Таким образом, решение исходной дифференциальной задачи (1) - (3) сводится к решению разностной задачи (5)-(7). Найденные значения сеточной функции принимаются в качестве значений искомой функции и в узлах сетки.

Укажем теперь некоторые свойства данной разностной схемы. Она аппроксимирует исходную задачу с первым порядком, т. e. невязка имеет порядок.

Схема условно устойчива; условие устойчивости имеет вид ()

Эти свойства схемы установлены в предположении, что решение U(x, t), начальное и граничное значения Ф(x) и дважды непрерывно дифференцируемы, а правая часть F(x, t) имеет непрерывные первые производные.

Поскольку схема устойчива и аппроксимирует исходную задачу, сеточное решение сходится к точному с первым порядком при . Отметим, что при а < 0 условие не выполняется, и не сходится[1].

Таблица идентификаторов

Тип переменной

Имя переменной

Хранимое значение

int

I

Кол-во шагов по x

int

J

Кол-во шагов по t

double

a

Скорость потока

double

lmd

Лямбда

double

tau

Шаг сетки по t

double

h

Шаг сетки по x

double

x[]

Значения x

double

t[]

Значения t

double

u[ ][ ]

Значения в узлах

Реализация на языке программирования С++

#include <iostream>

#include <math.h>

#include <locale>

#include <iomanip>

using namespace std;

double fi(double x)

{

return x+3;

}

double psi(double t)

{

return t+1;

}

double func(double x, double t)

{

return x+t+1;

}

int main()

{

setlocale(LC_ALL, "rus");

double a; // скорость потока

double x[12]; // Значения x

double t[7]; // Значения y

double u[8][11]; // таблица узлов

int J=5;

int I=10;

double h; // шаг сетки по h

double tau; // шаг сетки по t

double lmd;

cout<<"Решение уравнения переноса:"<<endl;

cout<<" dU/dt + a*(dU/dx) = F(x,t) "<<endl;

cout<<"F(x,t): F(x,t)=x+t+1 "<<endl;

cout<<"Начальное условие: U(x,0)=fi(x)=x+3 "<<endl;

cout<<"Граничное условие: U(0,t)=psi(t)=t+1 "<<endl;

cout<<"Ограниченная область G: 0<=x<=1 и 0<=t<=0.5 "<<endl;

cout<<"Введите а - скорость переноса, a > 0: "; cin>>a;

h=1.0/I;

tau=0.5/J;

lmd=(a*tau)/h; // из формулы (5)

x[0]=0;

t[0]=0;

//формулы (6)

for(int i=0;i<=I;i++)

{

x[i+1]=x[i]+h;

u[0][i]=fi(x[i]);

// cout<<x[i]<<endl;

// cout<<u[0][i]<<endl;

}

// формулы (7, 5)

for(int j=0;j<=J;j++)

{

t[j+1]=t[j]+tau;

u[j+1][0]=psi(t[j+1]);

// cout<<t[j]<<endl;

// cout<<u[j+1][0]<<endl;

for(int i=1;i<=I;i++)

{

u[j+1][i]=lmd*u[j][i-1] + (1 - lmd)*u[j][i] + tau*func(x[i],t[j]) ;

}

}

// вывод таблицы узлов

for(int i=0;i<=J;i++)

{

for(int j=0;j<=I;j++)

{

cout<<setw(10)<<u[i][j]<<setw(10);

}

cout<<endl<<endl;

}

system("pause");

return 0;

Результат работы программы

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

Рис. 10 Результат работы программы

Реализация в пакете MS Excel

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

Рис. 11 Результат в пакете MS Excel

Вывод

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

Именно в этой работе, мы подробно рассмотрели линейное одномерное уравнение с частными производными первого порядка, вида:

С определёнными начальными и граничными условиями с ограниченной областью. Реализовали метод конечных разностей используя явную разностную схему, выбрав шаблон в виде правого нижнего уголка. А так же скорость потока - должна быть больше 0. В реализации данной задачи, мы взяли ;

Свойства данной разностной схемы. Она аппроксимирует исходную задачу с первым порядком, т. e. невязка имеет порядок.

Схема условно устойчива; условие устойчивости имеет вид

Эти свойства схемы установлены в предположении, что решение U(x, t), начальное и граничное значения Ф(x) и дважды непрерывно дифференцируемы, а правая часть F(x, t) имеет непрерывные первые производные.

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

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

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

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

Список использованной литературы

1. Л.И.Турчак, П.В.Плотников. Основы численных методов. МОСКВА, 2003.

2. Г.Н. Воробьева, А.Н. Данилова «Практикум по численным методам», Москва, 1990.

3. М.П. Галанин, Е.Б. Савенков. Методы численного анализа математических моделей, Москва, 2010.

Так же была рассмотрена литература:

1. Калиткин Н.Н. Численные методы.

2. К.Флетчер. Вычислительные методы в динамике жидкостей. 1991. Перевод с английского A. И. Державиной.

3. Седов. Л.И. Механика сплошной среды. Т.1 и Т.2, 1970.

4. Самарский А.А..Теория разностных схем. 1989.

5. И. С. БЕРЕЗИН и Н. П. ЖИДКОВ. Методы вычислений. Т.2. 1959.

6. Фомин. В.М. Метод расчёта обобщенных решений одномерного линейного уравнения адвекции, 2000.

7. Р. В. ХЕММИНГ. Численные методы для научных работников и инженеров. Перевод с английского В. Л. АРЛАЗАРОВА, Г. С. РАЗИНОЙ и А. В. УСКОВА. 1972.

8. Е.В. Ворожцов. Разностные методы решения задач механики сплошных сред. 1998.

9. Е.В. Ворожцов. Сборник задач по теории разностных схем. Новосибирск. 2000.

10. Гермогенова Т.А. Локальные свойства решений уравнения переноса. Москва. 1986.

11. Годунов. С.К., Рябенький В.С. Разностные схемы. Москва, 1977.

12. Будак В.П. Методы решения уравнения переноса излучения. 2007.

Размещено на Allbest.ru


Подобные документы

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

    курсовая работа [791,0 K], добавлен 12.06.2010

  • Методы решения систем линейных алгебраических уравнений (СЛАУ): Гаусса и Холецкого, их применение к конкретной задаче. Код программы решения перечисленных методов на языке программирования Borland C++ Builder 6. Понятие точного метода решения СЛАУ.

    реферат [58,5 K], добавлен 24.11.2009

  • Изучение численных методов приближенного решения нелинейных систем уравнений. Составление на базе вычислительных схем алгоритмов; программ на алгоритмическом языке Фортран - IV. Приобретение практических навыков отладки и решения задач с помощью ЭВМ.

    методичка [150,8 K], добавлен 27.11.2009

  • Методы решения нелинейных уравнений: касательных и хорд, результаты их вычислений. Алгоритм и блок схема метода секущих. Исследование характерных примеров для практического сравнения эффективности рассмотренных методов разрешения нелинейных уравнений.

    дипломная работа [793,2 K], добавлен 09.04.2015

  • Методы оценки погрешности интерполирования. Интерполирование алгебраическими многочленами. Построение алгебраических многочленов наилучшего среднеквадратичного приближения. Численные методы решения задачи Коши для обыкновенных дифференциальных уравнений.

    лабораторная работа [265,6 K], добавлен 14.08.2010

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

    курсовая работа [711,0 K], добавлен 03.08.2012

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

    дипломная работа [2,2 M], добавлен 27.06.2014

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

    курсовая работа [1,4 M], добавлен 07.09.2010

  • Дифференциальное уравнение первого порядка, разрешенное относительно производной. Применение рекуррентного соотношения. Техника применения метода Эйлера для численного решения уравнения первого порядка. Численные методы, пригодные для решения задачи Коши.

    реферат [183,1 K], добавлен 24.08.2015

  • Содержание понятия, исследование свойств и применение различных методов решения функциональных уравнений. Порядок решения функциональных уравнений Коши на множестве Q рациональных чисел, на оси R, полуоси R. Измеримые функции и гиперболические косинусы.

    дипломная работа [211,8 K], добавлен 01.10.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.