3 Глава Параллельные вычисления при численном решении уравнений математической физики



Download 0,65 Mb.
bet3/5
Sana15.06.2022
Hajmi0,65 Mb.
#674415
TuriЛитература
1   2   3   4   5
Bog'liq
Параллельные вычисления при численном решении уравнений математической

LU разложение матриц


Рассмотрим систему Ax = f . В результате применения метода Гаус- са мы получили систему Ux = y, где U есть верхняя треугольная матрица с единицами на главной диагонали. Вектор y зависит толь- ко от вектора f и матрицы A. Рассмотрим соотношение между y и f . В случае n = 3 мы имеем

y = (f (1)ya )/a ,2 2 1 21

y3 = (f3y1a31y2a(1))/a(2).
y1 = f1/a11,


22


Отсюда следует


32 33



f1 = a11y1,

22
f2 = y1a21 + y2a(1),


32

33
f3 = y1a31 + y2a(1) + y3a(2).

Понятно, что для произвольных n мы будем иметь







a

( a , i j,

y3 . (16)

yn
Таким образом, f = Ly, где L – нижняя треугольная матрица с элементами

lij =
(j 1)
ij
0, i < j,

которая может быть рассчитана с использованием формул базового алгоритма (10)-(12). Так как


то получаем


Ax = f, Ux = y, Ly = f,

Ax = Ly = LUx.

Следовательно, мы имеем A = LU , где L есть нижняя треугольная матрица и U - верхняя треугольная матрица. Это представление LU разложения для матрицы A часто называется LU факторизацией матрицы A. Приведем пример для 3 × 3 матрицы






20 15 12

20 5 1/3

0 0 1

30 20 15 = 30 5 0

0 1 1

.
60 30 20 60 0 0  1 1/2 1/3

Предположим, что для системы Ax = f мы знаем матрицы L и U . Тогда мы сможем легко решить систему в два простых шага: первый - Ly = f дает решение для y, второй - Ux = y обеспечи- вает решение для x. Проблема состоит в получении матриц L и U . Матрица A имеет n2 коэффициентов, тогда число коэффициентов в двух матрицах L и U определяется как n(n + 1), поэтому есть неко- торая недоопределенность. Это дает нам свободу выбора некоторых коэффициентов в L или U .
Укажем некоторые конкретные варианты:


Если метод исключения Гаусса косвенно выбирает lii = 1, то этот вариант называется Метод Дулитла.


Представление с условием uii = 1 известно как Метод Кроута.


Если A = AT (т. е. A является симметричной матрицей) и A является также положительно-определенной матрицей (т. е. имеет положительные собственные значения), то мы можем выбрать uij = lji. Этот вариант называется Метод Холецкого. В этом случае будем иметь

A = LU, AT = UT LT = LU, L = UT .
Заметим, что, строго говоря, LU разложение матрицы не все- гда возможно. Теорема утверждает, что если все главные миноры матрицы A не равны нулю, то A представляется как A = LU един- ственным образом. При этом диагональные элементы L отличны от нуля.
С другой стороны, все гауссовские преобразования могут быть записаны в матричной форме. Например, если n = 3, имеем
U = L3L2L1A,
    1. Метод гауссовых исключений с перестанов- кой строк



k+1,k+1
Что делать, если на одном шаге ведущий элемент a(k) = 0?
Теорема утверждает, что если det A 0, существует матрица пере-
становок P , такая что матрица PA имеет все основные миноры, не равные нулю, следовательно PA = LU .

(k)

k+1,k+1
Основная идея исключения по Гауссу с перестановкой стро- кой заключается в том, что на каждом шаге процедуры исклю- чения неизвестных мы осуществляем перестановку строк с i, i = k + 1, ..., n, таким образом, что мы имеем старший элемент a(k) максимальный по модулю. Мы ищем строку i с максимальным

| |
ai,k+1 , i = k + 1, ..., n (см. (9)), а затем осуществляем перестановку между строками k + 1 и i. Наконец, получим
L = LnLn−1Pn−1,jn1...L1P1,j1A,


где Pk,jk с k = 1, ..., n 1, является матрицей перестановки строк. Например, если n = 3,
0 1 0 1 0 0 0 0 1




0 0 1

0 1 0

1 0 0
P12 = 1 0 0 , P23 = 0 0 1 , P13 = 0 1 0 ,

обеспечивают перестановку между строками 1 и 2, 2 и 3, 1 и 3.



    1. Численный расчет матрицы определителя и обратной матрицы


Используя LU разложение, легко вычислить определитель матри- цы
det A = ± det(PA) = ± det(LU ) = ± det L det U
= ± det L = ±l11l22...lnn.
Если A−1 является матрицей, обратной по отношению к A, то- гда AA−1 = I, где I - единичная матрица. Обозначим X = A−1. На самом деле мы имеем n2 систем линейных алгебраических уравне-
ний

Σ
n
aikxkj = δij,
k=1
или Ax(j) = δ(j), где x(j) = (x1j, x2j, ..., , xnj)T и δ(j) = (δ1j, ..., δnj)T ,
i, j = 1, ..., n. С помощью разложения A = LU мы должны сначала

решить систему Ly(j) = δ(j) для y(j) = (y1j, y2j, ..., , ynj)T , и затем
Ux(j) = y(j) для x(j).

(17)




lji =

lii 1

aij
i−1 k=1
likljk!



Σ
j = i + 1, i + 2, . . . n. (18)

Мы отмечаем, что (17) предполагает использование квадратно- го корня. Следовательно, факторизация будет существовать только для ограниченного класса матриц: это симметричные положитель- но определенные матрицы. Симметричная матрица A положитель- но определена, если выполняется условие (x, Ax) > 0 для всех нену- левых векторов x. Необходимое и достаточное условие для положи- тельной определенности состоит в том, что все собственные значе- ния положительны. Можно проверить матрицу на положительную определенность, пытаясь сделать вычисление факторизацией Хо- лецкого. На самом деле трудным шагом здесь является знание того, что матрица положительно определенная! Это предполагает поиск собственных значений и может занять больше времени, чем вре- мя на решение уравнения!

















Глава 2. Методы Рунге-Кутты и другие методы

1.1 Методы Рунге-Кутты


Широкая категория методов, наиболее часто применяемых на практике для решения дифференциальных уравнений, известна под общим названием методы Рунге-Кутты. Различные методы этой категории требуют большего или меньшего объема вычислений и соответственно обеспечивают большую или меньшую точность.
Методы Рунге-Кутты обладают следующими отличительными свойствами:
• эти методы являются одноступенчатыми: чтобы найти значение
функции в точке у,+| нужна информация только о предыдущей точке (у„ х,);

  • • они согласуются с рядом Тейлора вплоть до членов порядка hk, где степень к определяет порядок метода;

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

Именно благодаря последнему свойству методы Рунге-Кутты более удобны для практических вычислений.

Метод Эйлера (метод Рунге-Кутты первого порядка)


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

который можно применить для приближенного определения искомой функции у(х). В точке х() + h при малых значениях h можно ограничиться двумя членами ряда (8.7), тогда

где 0(1г2) - бесконечно малая величина порядка /г2. Заменим производную y'(xQ), входящую в формулу (8.7), на правую часть уравнения (8.5):

Теперь приближенное решение в точке х{ =xQ + h можно вновь рассматривать как начальное условие и по формуле (8.9) найти значение искомой функции в следующей точке х0{ + h. В результате получен простейший алгоритм решения задачи Коши, который называется методом Эйлера, или методом ломаных.
Метод Эйлера можно представить в виде последовательного применения формул:
для точки 
Таким образом, формула Эйлера в общем случае имеет вид:

Название «метод ломаных» связано с его геометрической интерпретацией. Искомая функция >{л') заменяется ломаной линией, представляющей собой отрезки касательных к этой функции в узлах х()хпВыведем формулы на основе геометрических аналогий. Предположим, что нам известна точка (x0, у0) на искомой интегральной кривой (см. рис. 8.1).

Рис. 8.1
Через точку (х«, у0) проведем касательную с тангенсом угла наклона:   Уравнение касательной имеет вид: 
Тогда в точке X] =л'() + h, с учетом (8.13), получим решение:

Ошибка решения в точке x=xt показана в виде отрезка Д.
Формула (8.12) является методом Рунге-Кутты первого порядка, т. к. она согласуется с разложением в ряд Тейлора вплоть до членов порядка hl.
Метод Эйлера имеет довольно большую погрешность вычисления: Д«0(И). Кроме того, он очень часто оказывается неустойчивым - малая ошибка (например, заложенная в исходных данных) увеличивается с ростом х. На рис. 8.2 приведена блок-схема метода Эйлера, в приложении - программа расчета.

Рис. 8.2. Блок-схема метода Эшера
Пример 8.1. Для химической реакции

Изменение концентраций веществ А и В можно описать следующими кинетическими уравнениями:

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

Требуется получить зависимость изменения концентрации вещества А от времени, т. е. необходимо решить дифференциальное уравнение (решить задачу Коши).
Исходные данные:
G, о=1 моль/л;
Св. о= 0;
к=0,2 с интервал интегрирования /=[0, 5].
Обозначим СА =у, тогда

Примем величину шага h = 0,1. Решим данное уравнение методом Эйлера (8.12).

Download 0,65 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish