Лекция 3,4 (Лекции по ОАП)
Описание файла
Файл "Лекция 3,4" внутри архива находится в папке "Лекции по ОАП". Документ из архива "Лекции по ОАП", который расположен в категории "". Всё это находится в предмете "основы автоматизированного проектирования (оап)" из 3 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "основы автоматизированного производства (оап)" в общих файлах.
Онлайн просмотр документа "Лекция 3,4"
Текст из документа "Лекция 3,4"
16
Лекция 3
(продолж. примера построения конечно-разностной схемы (КР))
Примечания.
-
Общий случай построения конечно-разностной сетки. Вывод аппроксимирующих выражений для уравнений (6)…(8) примера.
Задача построения конечно-разностной сетки геометрически представляет собой замену непрерывного пространства некоторой расчетной сеткой. В дальнейшем используются значения переменных в узлах сетки. Задача выбора сетки не имеет какого.-либо строгого решения. Чаще всего используют прямоугольные и полярные сетки, в зависимости от внешнего контура области и вида диф.уравнений в частных производных (ДУЧП). Следует придерживаться следующих правил:
-
сетка должна целиком покрывать исследуемую область;
-
расстояния между узлами должны быть достаточно маленьким, чтобы приблизить конечно-разностную аппроксимацию производных к их истинным значениям;
-
форма ячеек должна соответствовать внешнему виду границ, т.е. если границы параллельны декартовым осям - то сетка должна быть прямоугольной, если границы наклонены к декартовым осям – то косоугольной, если в границы близки к окружности и ДУЧП записано в полярных координатах - сетку надо выбирать в виде концентрических окружностей, пересеченных радиусами.
Метод конечных разностей:
Для решения ур-ний гиперболического, эллиптического и параболического типов. Область интегрирования разбивается на счетные ячейки с помощью прямоугольной сетки. Производные функции по всем направлениям заменяются конечными разностями с помощью тех или иных соотношений (в частности, разложение функции в ряд Тейлора), причем преимущественно используются неявные схемы, имеющие лучшую сходимость. На каждом шаге приходится решать систему линейных алгебраических уравнений, содержащих большое число (до нескольких сот) неизвестных.
Примеры построения прямоугольной и полярной конечно-разностной сетки для плоских областей приведен на рисунке. Применена сетка с постоянным шагом hx , hy и h , h вдоль каждой из осей. В общем случае сетка может быть и с переменным шагом, сгущаясь в области предполагаемых увеличенных градиентов изменения неизвестной функции v.
Такая дискретизация позволяет перейти от непрерывного изменения искомой функции v к ее дискретному выражению:
v(x,y) v(xi ,yj )
v(,) v( i , j )
Для сокращения записи значение дискретной (сеточной) функции в точке i, j обычно используется обозначение vi,j, , то есть vi,ĵ= v(xi ,yj )
|
|
Из рисунка видно, что наилучшим образом метод КР приспособлен для тех областей ТО, границы которых представляют собой линии, параллельные координатным осям, либо окружности.
Как задавать границы более сложной формы, изображенные, в частности на рисунке?. Задание границ - это ахиллесова пята МКР. Наиболее простой способ - замена сложной границы на более простую путем переноса границы Г таким образом, чтобы новая граница Г’ проходила через ближайшие узлы сетки.
Для нестационарных задач вводится понятие временного слоя и шага по времени ht = см пример).
Алгебраизация заключается в замене частных производных в математической модели конечными разностями. Конечная разность - это алгебраическое выражение, аппроксимирующее значение производной сеточной функции в узле разностной сетки через значения самой сеточной функции в окрестных узлах. Конечно-разностное аппроксимация частных производных основана на разложении функции в ряд Тейлора в окрестности точки i,j. В частности для оси x получим:
v(xi+hx,yi)=vi+1,j= vi,j + hxvxx=xi + (hx2/2) vx2x=xi +… (2.1)
v(xi-hx,yi)=vi-1,j= vi,j - hxvxx=xi + (hx2/2) vx2x=xi -… (2.2)
аналогичное выражение может быть получено и для разложения функции вдоль оси y.
Пренебрегая производной 2-го и высших порядков из выражения (2) может быть получено три выражения для аппроксимации первой производной:
vx1/hx( vi+1,j - vi,j) - правая разность (из 2.1)
vx1/hx( vi,j - vi-1,j) - левая разность (из 2.2)
vx1/2hx( vi+1,j - vi-1,j) - центральная разность (из 2.1-2.2)
Складывая выражения (2.1) и (2.2) получим аппроксимацию второй производной
vx21/hx2( vi+1,j - 2vi,j+ vi-1,j) (3)
Аппроксимация производных по другим осям производится подстановкой других наименований осей.
Аппроксимация смешанной производной производится комбинированием двух центральных разностей по оси x и одной по оси y
-
Замена частных производных в уравнении (1) в соответствии с (2)…(4) превращает его в систему алгебраических уравнений. В этой системе неизвестными будут значения фазовой переменной в тех узлах сетки, в которых не заданы краевые условия. В зависимости от выбора КР схемы система уравнений будет представлена либо рекуррентными соотношениями, либо системой линейных алгебраических уравнений.
(продолжение примера)
Другая схема получится, если мы используем левую разность для аппроксимации частной производной по времени:
Тогда для узла (xi, tj) получим следующую разностную аппроксимацию уравнения теплопроводности:
(Ti+1,j-2Ti,j+Ti-1,j)/h2-1/aТ (Ti,j-Ti,j-1)/
Принимая те-же обозначения, что в (6) получим
Ti+1,j-(1+2)Ti,j+Ti-1,j +Ti,j-1=0 (8.1)
Выражение (8.1) описывает температуру в j-ом временном слое и содержит более чем 1 неизвестное. Схема получения выражения представлена на рисунке. Это неявная форма, поскольку невозможно получить результаты для текущего слоя, опираясь на уже полученные результаты для предыдущего слоя. Поэтому приходится решать систему уравнений, которая в развернутом виде выглядит следующим образом
i=1 | T2,j -(1+2)T1,j +T0,j = - T1,j-1 |
i=2 | T3,j -(1+2)T2,j +T1,j = - T2,j-1 |
… | Ti+1,j -(1+2)Ti,j +Ti-1,j = - Ti,j-1 |
i=m-1 | Tm,j -(1+2)Tm-1,j +Tm-2,j = - Tm,j-1 |
Двойной линией подчеркнуты известные граничные условия на концах стержня, одинарной - известные значения переменной на предыдущем временном слое (для первого временного слоя они равны начальным условиям Fi)
Полученная система - это система линейных алгебраических уравнений вида AT=B, где
Система уравнений имеет специфическую структуру - она разреженная и имеет К диагоналей, где К определяется типом применяемого конечно-разностного отношения.
Сравнение явных и неявных схем
вычислительная схема | устойчивость | количество шагов | вычислительные затраты на шаг | |
рекуррентные соотношения | при соблюдении ограничений на шаг | определяется устойчивостью | малые | |
неявный | СЛАУ | устойчивая | определяется точностью (меньше) | большие |
§ 2.4 Решение системы алгебраических уравнений типа AX=B
(обработка конечно-разностной схемы
Используют две основных группы методов решения:
-
прямые («точные») методы
-
итерационные методы
Прямые методы
Наиболее известный метод среди прямых - метод исключения Гаусса. Решение проводится в 2 этапа:
Этап 1 - прямой ход, заключающийся в последовательном исключении неизвестных из уравнений, т.е. из 1-го уравнения выражается x1 и подставляется в уравнения 2…n. Затем из второго уравнения исключается x2 и подставляется в уравнения 3…n и т.д. Т.о. осуществляется последовательное исключение неизвестных x1, …, xn-1. Прямой ход выполняется за (n-1) шагов, на каждом k-ом шаге исключается неизвестная xk из уравнений, начиная с (k+1)-го и заканчивая n - ым, по формулам:
Здесь i - номер обрабатываемой строки, j - номер обрабатываемого столбца, k - номер шага исключения. В результате прямого хода матрица [A] преобразуется в верхнетреугольную матрицу [U], а вектор {B} в вектор {С}, система уравнений при этом будет иметь вид:
Этап 2 - обратный ход. Состоит из n-1 стадий обратной подстановки снизу вверх. Из последнего уравнения находят значение xn, подставляют в предыдущее уравнение, из которого находят xn-1 и т.д. по формуле
Для метода Гаусса необходимо, чтобы все элементы диагональ матрицы А были ненулевыми (соблюдается). Мало того, если к.-л. из элементов диагонали будет иметь близкое к нулю значение (вследствие неравномерной сетки например), то возможны большие ошибки округления. Эта проблема решается исключением на каждом шаге того уравнения, значение элемента на главной диагонали которого максимально по модулю.
Итерационные методы
Для систем большой размерности вследствие ошибок округления прямые методы могут не дать требуемой точности вычислений поэтому при их решении часто применяют итерационные методы.
В итерационных методах решение сводится к нахождению последовательности решений {X}0, {X}1,… {X}k, сходящейся к точному решению {X}*. Итерационный процесс заканчивается при выполнении условия ║{X}k+1-{X}k ║<1
В качестве примера рассмотрим один из итерационных методов - метод Зейделя.