![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Главная Рефераты по рекламе Рефераты по философии Рефераты по финансам Рефераты по химии Рефераты по цифровым устройствам Рефераты по экологическому праву Рефераты по экономико-математическому моделированию Рефераты по экономической географии Рефераты по экономической теории Рефераты по этике Рефераты по юриспруденции Рефераты по языковедению Рефераты по юридическим наукам Рефераты по истории Рефераты по компьютерным наукам Рефераты по медицинским наукам Рефераты по финансовым наукам Рефераты по управленческим наукам Рефераты по строительным наукам Психология педагогика Промышленность производство Биология и химия Языкознание филология Издательское дело и полиграфия Рефераты по краеведению и этнографии Рефераты по религии и мифологии Рефераты по медицине Рефераты по сексологии Рефераты по москвоведению Рефераты по экологии Краткое содержание произведений Рефераты по физкультуре и спорту Топики по английскому языку Рефераты по математике Рефераты по музыке Остальные рефераты |
Контрольная работа: Конечно-разностный метод решения для уравнений параболического типаКонтрольная работа: Конечно-разностный метод решения для уравнений параболического типаВведение К дифференциальным уравнениям с частными производными приходим при решении самых разнообразных задач. Например, при помощи дифференциальных уравнений с частными производными можно решать задачи теплопроводности, диффузии, многих физических и химических процессов. Как правило, найти точное решение этих уравнений не удается, поэтому наиболее широкое применение получили приближенные методы их решения. В данной работе ограничимся рассмотрением дифференциальных уравнений с частными производными второго порядка, а точнее дифференциальными уравнениями с частными производными второго порядка параболического типа, когда эти уравнения являются линейными, а искомая функция зависит от двух переменных Для решения дифференциальных уравнений параболического типа существует несколько методов их численного решения на ЭВМ, однако особое положение занимает метод сеток, так как он обеспечивает наилучшие соотношения скорости, точности полученного решения и простоты реализации вычислительного алгоритма. Метод сеток еще называют методом конечных разностей. 1 Теоретическая часть 1.1 Постановка задач для уравнений параболического типа Классическим примером уравнения параболического типа является уравнение теплопроводности (диффузии). В одномерном по пространству случае однородное (без источников энергии) уравнение теплопроводности имеет вид
Если на границах
т.е. граничные условия первого рода, и , кроме того заданы начальные условия
то задачу (1)-(4) называют первой начально-краевой задачей для уравнения теплопроводности (1). В терминах теории теплообмена
Если на границах
т.е. граничные условия второго рода, то задачу (1), (5), (6), (4) называют второй начально-краевой задачей для уравнения теплопроводности (1). В терминах теории теплообмена на границах в этом случае заданы тепловые потоки. Если на границах заданы линейные комбинации искомой функции и ее производной по пространственной переменной:
т.е. граничные условия третьего рода, то задачу (1),
(7), (8), (4) называют третьей начально-краевой задачей для уравнения
теплопроводности (1). В терминах теплообмена граничные условия (7), (8) задают
теплообмен между газообразной или жидкой средой с известными температурами Для пространственных задач теплопроводности в области
Аналогично ставится вторая и третья начально-краевые задачи для пространственного уравнения (9). На практике часто ставятся начально-краевые задачи теплопроводности со смешанными краевыми условиями, когда на границах задаются граничные условия различных родов. 1.2 Основные определения и конечно-разностные схемы Основные определения, связанные с методом конечных разностей, рассмотрим на примере конечно-разностного решения первой начально-краевой задачи для уравнения теплопроводности (1)-(4). Согласно методу сеток в плоской области D строится сеточная область Dh, состоящая из одинаковых ячеек. При этом область Dh должна как можно лучше приближать область D. Сеточная область (то есть сетка) Dh состоит из изолированных точек, которые называются узлами сетки. Число узлов будет характеризоваться основными размерами сетки h: чем меньше h, тем больше узлов содержит сетка. Узел сетки называется внутренним, если он принадлежит области D, а все соседние узлы принадлежат сетке Dh. В противном случае он называется граничным. Совокупность граничных узлов образует границу сеточной области Гh. Сетка может состоять из клеток разной конфигурации: квадратных, прямоугольных, треугольных и других. После построения сетки исходное дифференциальное уравнение заменяется разностным уравнением во всех внутренних узлах сетки. Затем на основании граничных условий устанавливаются значения искомого решения в граничных узлах. Присоединяя граничные условия сеточной задачи к разностным уравнениям, записанных для внутренних узлов, получаем систему уравнений, из которой определяем значения искомого решения во всех узлах сетки. Нанесем на пространственно-временную область
с пространственным шагом h=l/N и шагом по времени τ=T/K. Рисунок 1 – Конечно-разностная сетка Введем два временных слоя: нижний Сеточной функцией задачи (1)-(4) называют однозначное отображение целых аргументов j,k в значения функции На введенной сетке вводят сеточные функции
Подставляя (11), (12) в задачу (1)-(4), получим явную конечно-разностную схему для этой задачи в форме
В каждом уравнении этой задачи все значения сеточной
функции известны, за исключением одного, Если в (12) дифференциальный оператор по пространственной переменной аппроксимировать отношением конечных разностей на верхнем временном слое:
то после подстановки (11), (14) в задачу (1)-(4) получим неявную конечно-разностную схему для этой задачи:
Теперь сеточную функцию где
Шаблоном конечно-разностной схемы называют ее геометрическую интерпретацию на конечно-разностной сетке. На рисунке приведены шаблоны для явной и неявной конечно-разностных схем при аппроксимации задачи. Рисунок 2 - Шаблон явной конечно-разностной схемы для уравнения теплопроводности Рисунок 3 - Шаблон неявной конечно-разностной схемы для уравнения теплопроводности В случае явных схем значения функции в узле очередного
слоя можно найти, зная значения в узлах предыдущих слоев. В случае неявных схем
для нахождения значений решения в узлах очередного слоя приходится решать систему
уравнений. Для проведения вычислений самой простой схемой оказывается первая:
достаточно на основании начального условия найти значения функции в узлах слоя Разрешимость этой системы для явных схем вопросов не вызывает, так как все действия выполняются в явно определенной последовательности. В случае неявных схем разрешимость системы следует исследовать в каждом конкретном случае. Важным вопросом является вопрос о том, на сколько найденные решения хорошо (адекватно) отражают точные решения, и можно ли неограниченно сгущая сетку (уменьшая шаг по осям) получить приближенные решения, сколь угодно близкие к точным решениям? Это вопрос о сходимости метода сеток. На практике следует применять сходящиеся разностные схемы, причем только те из них, которые являются устойчивыми, то есть при использовании которых небольшие ошибки в начальных или промежуточных результатах не приводят к большим отклонениям от точного решения. Всегда следует использовать устойчивые разностные схемы, проводя соответствующие исследования на устойчивость. Явные схемы просты для организации вычислительного процесса, но имеют один весьма весомый недостаток: для их устойчивости приходится накладывать сильные ограничения на сетку. Неявные схемы свободны от этого недостатка, но есть другая трудность – надо решать системы уравнений большой размерности, что на практике при нахождении решения сложных уравнений в протяженной области с высокой степенью точности может потребовать больших объемов памяти ЭВМ и времени на ожидание конечного результата. К счастью, прогресс не стоит на месте и уже сейчас мощности современных ЭВМ вполне достаточно для решения поставленных перед ними задач. Вопрос устойчивости будет рассмотрен далее. 1.3 Аппроксимация Из определения порядка аппроксимации ясно, что чем выше порядок аппроксимации, тем лучше конечно-разностная схема приближается к дифференциальной задаче. Это не означает, что решение по разностной схеме может быть так же близко к решению дифференциальной задачи, так как разностная схема может быть условно устойчивой или абсолютно неустойчивой вовсе. Для нахождения порядка аппроксимации используется аппарат разложения в ряды Тейлора точных (неизвестных, но дифференцируемых) решений дифференциальной задачи в узлах сетки (подчеркнем: значения сеточной функции uh дискретны, следовательно, не дифференцируемы и поэтому не разлагаются в ряды Тейлора). 1.4 Устойчивость. Исследование устойчивости методом гармонического анализа конечно-разностная схема устойчива, если для малых возмущений входных данных (начально-краевых условий и правых частей) конечно-разносная схема обеспечивает малые возмущения сеточной функции uh т.е. решение с помощью конечно-разностной схемы находится под контролем входных данных. Если во входные данные fn входят только начальные условия или только краевые условия, или только правые части, то говорят об устойчивости соответственно по начальным условиям, по краевым условиям или по правым частям. Из математической физики известно, что решение начально-краевых задач представляется в виде следующего ряда:
где λn – собственные значения
В то же время
функция времени Таким образом, если конечно-разностная схема устойчива, то отношение амплитудной части гармоники на верхнем временном слое к амплитудной части на нижнем временном слое по модулю должно быть меньше единицы. Если
разложить значение сеточной функции
где
амплитудная часть
где k – показатель степени (соответствующий номеру временного слоя) сомножителя, зависящего от времени. Тогда подставив (17) в конечно-разностную схему, можно по модулю оценить отношение амплитудных частей на соседних временных слоях. Однако поскольку операция суммирования линейна и собственные функции ортогональны для различных индексов суммирования, то в конечно-разностную схему вместо сеточных значений достаточно подставить одну гармонику разложения (17) (при этом у амплитудной части убрать индекс n), т.е.
Таким образом, если конечно-разностная схема устойчива по начальным данным, то
т. е. условие (20) является необходимым условием устойчивости. 1.5 Схема Кранка-Николсона параболическое дифференциальное уравнение конечная разность Явная конечно разностная схема, записанная в форме
обладает тем достоинством, что решение на верхнем временном слое tk+l получается сразу (без решения СЛАУ) по значениям сеточной функции на нижнем временном слое tk, где решение известно (при k = 0 значения сеточной функции формируются из начального условия). Но эта же схема обладает существенным недостатком, поскольку она является условно устойчивой. С другой стороны, неявная конечно-разностная схема, записанная форме
приводит к необходимости решать СЛАУ, но зато эта схема абсолютно устойчива. Проанализируем
схемы (21) и (22). Пусть точное решение, которое неизвестно, возрастает по
времени, т.е. Для неявной схемы (22) на возрастающем решении, наоборот, решение завышено по сравнению с точным, поскольку оно определяется по значениям сеточной функции на верхнем временном слое. На убывающем решении картина изменяется противоположным образом: явная конечно-разностная схема завышает решения, а неявная — занижает (Рисунок 4). На основе этого анализа возникла идея о построении более точной неявно-явной конечно-разностной схемы с весами при пространственных конечно-разностных операторах, причем при измельчении шагов тик точное (неизвестное) решение может быть взято в «вилку» сколь угодно узкую, так как если явная и неявная схемы аппроксимируют дифференциальную задачу и эти схемы устойчивы, то при стремлении сеточных характеристик τ и h к нулю решения по явной и неявной схемам стремятся к точному решению с разных сторон. Рисунок 4 – Двусторонний метод аппроксимации Проведенный анализ дал блестящий пример так называемых двусторонних методов, исследованных В. К. Саульевым Рассмотрим неявно-явную схему с весами для простейшего уравнения теплопроводности:
где θ – вес неявной части конечно-разностной схемы, θ-1 – вес для явной части Причем В соответствии с гармоническим анализом для схемы (23) получаем неравенство
откуда
причем правое неравенство выполнено всегда. Левое неравенство
имеет место для любых значений σ, если
являющаяся
условием устойчивости неявно-явной схемы с весами (23), когда вес находится в
пределах Таким
образом, неявно-явная схема с весами абсолютно устойчива при Рассмотрим
порядок аппроксимации неявно-явной схемы с весами, для чего разложим в ряд
Тейлора в окрестности узла (xj,tk) на точном
решении значения сеточных функций В этом
выражении дифференциальный оператор После упрощения получаем
откуда видно,
что для схемы Кранка-Николсона (θ = 1/2) порядок аппроксимации
схемы (23) составляет Используем в
уравнение (23) подстановку r=a2k/h2. Но в то же время его нужно решить для трех
"еще не вычисленных" значений
для i=2,3,…,n-1. Члены в правой части формулы (26) известны. Таким образом, формула (26) имеет вид линейной трехдиагональной системы АХ=В. Шесть точек, используемых в формуле Кранка-Николсона (26), вместе с промежуточной точкой решетки, на которой основаны численные приближения, показаны на рисунке 5. Рисунок 5 – Шаблон (схема) метода Кранка-Николсона Иногда в
формуле (26) используется значение r=1. В этом
случае приращение по оси t равно
для i=2,3,…,n-1. Граничные
условия используются в первом и последнем уравнениях (т. е. в Уравнения (27) особенно привлекательны при записи в форме трехдиагональной матрицы АХ = В. Если метод Кранка-Николсона реализуется на компьютере, то линейную систему АХ = В можно решить либо прямым методом, либо итерационным. 2. Практическая часть 2.1 Постановка задачи Используем метод Кранка-Николсона, чтобы решить уравнение
где xϵ(0;1), tϵ(0;0.1), с начальным условием
где t=0, xϵ(0;1), и граничными условиями u(0,t) = g1(t) ≡ 0, u(1,t) = g2(t) ≡ 0. 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), полученные методом Кранка-Николсона
Величины, полученные методом Кранка-Николсона, достаточно близки к аналитическому решению u(x,t) = sin(πx)e-π2t+ sin(3πx)e-9π2t, истинные значения для последнего представлены в таблице 2 Максимальная погрешность для данных параметров равна 0,005 Таблица 2 – точные значения u(хi, ti), при t=0.1
Рисунок 5 – Решение u=u(хi, ti), для метода Кранка-Николсона ЗАКЛЮЧЕНИЕ В зависимости от формы области, краевых условий, коэффициентов исходного уравнения метод конечных разностей имеет погрешности аппроксимации от первого до четвертого порядка относительно шага. В силу этого они успешно используются для разработки программных комплексов автоматизированного проектирования технических объектов. В МКР строятся, как правило, регулярные сетки, особенности геометрии области учитываются только в около граничных узлах. В связи с этим МКР чаще применяется для анализа задач с прямолинейными границами областей определения функций. Проблемой методов конечных разностей является высокая размерность результирующей системы алгебраических уравнений (несколько десятков тысяч в реальных задачах. Поэтому реализация методов конечных разностей в составе САПР требует разработки специальных способов хранения матрицы коэффициентов системы и методов решения последней. Библиографический список 1 Березин И.С., Жидков Н.П. Методы вычислений. Т.2. – М.: Физматгиз, 1962. 2 Мэтьюз, Джон, Г., Финк, Куртис, Д. Численные методы. Использование MATLAB, 3-е издание.— М. : Вильяме, 2001. — 720 с 3 Тихонов А.Н., Самарский А.А. Уравнения математической физики. – М.: Наука, 1972. 4 Формалев В.Ф., Ревизников Д.Л. Численные методы. – М.: ФИЗМАТЛИТ, 2004. - 400 с. 5 Пирумов У.Г. Численные методы. – М.: Издательство МАИ, 1998. 6 Калиткин Н.Н. Численные методы. – М.: Наука, 1976. ПРИЛОЖЕНИЕ А Листинг программы для расчета по методу Кранка-Николсона f.m function F=f(x) F=sin(pi*x)+sin(3*pi*x); ft.m function F=f(x,t) F=sin(pi*x)*exp(-pi^2*t)+sin(3*pi*x)*exp(-9*pi^2*t); tisys.m function X=trisys(A,D,C,B) N=length(B); for k=2:N mult=A(k-1)/D(k-1); D(k)=D(k)-mult*C(k-1); B(k)=B(k)-mult*B(k-1); end X(N)=B(N)/D(N); for k= N-1:-1:1 X(k)=(B(k)-C(k)*X(k+1))/D(k); end crnich.m function [U,Y]=crnich(c1,c2,a,b,c,n,m) clc; % - c1=u(0,t) и c2=u(a,t) % - а и b - правые точки интервалов [0,а] и [0,Ь] % - с - постоянная уравнения теплопроводности % - n и m - число точек решетки на интервалах [0,а] и [0,Ь] %Выход - U - матрица решений %Инициализация параметров и матрицы U h=a/(n-1); k=b/(m-1); r=c^2*k/h^2; s1=2+2/r; s2=2/r-2; U=zeros(n,m); %Граничные условия U(1,1:m)=c1; Продолжение ПРИЛОЖЕНИЯ А U(n,1:m)=c2; %Генерирование первого ряда U(2:n-1,1)=f(h:h:(n-2)*h)'; %Формирование диагональных и не лежащих на диагонали %элементов А, вектора постоянных В ' %и решение трехдиагональной системы АХ=В Vd(1,1:n)=s1*ones(1,n); Vd(1)=1; Vd(n)=1; Va=-ones(1,n-1); Va(n-1)=0; Vc=-ones(1,n-1); Vc(1)=0; Vb(1)=c1; Vb(n)=c2; for j=2:m for i=2:n-1 Vb(i)=U(i-1,j-1)+U(i+1,j-1)+s2*U(i,j-1); end X=trisys(Va,Vd,Vc,Vb); U(1:n,j)=X'; end U=U'; %точное решение и определение погрешности x=0:h:h*(n-1); t=0:k:k*(m-1); for i=1:1:n for j=1:1:m Y(i,j)=ft(x(i),t(j)); end end Y=Y'; pogr=(abs(Y-U)); max(max(pogr)) surf(U) xlabel('X'); ylabel('t'); zlabel('U(x,t)'); colorbar; axis([0 n 0 m 0 max(max(U))]); |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|