Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы математического моделирования в микроэлектронике. Модели в форме СЛАУ. Учебное пособие

.pdf
Скачиваний:
1
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
квадратная матрица A «близка» или «далека» относительно вырожден-
A
A
ной матрицы. Матрица A будет более вырожденной, чем матрица B,
cond cond .() ()
если рошо обусловлена, а если
B
При этом если
cond 1,()A 
cond 1,()A
то матрица A – хо-
то обусловленность у матрицы
будет плохая. Как будет показано ниже, вариации в исходных данных для СЛАУ с плохо обусловленной матрицей системы будут приводить к очень большим погрешностям в решении независимо от применяе­мого алгоритма.
При этом не следует полагать, что существует прямая связь между ве-
det 0,()A
личиной определителя и обусловленностью матрицы.
Если
то это вовсе не означает, что матрица будет плохо обусловлена. Напри­мер, у диагональной матрицы порядка n
0,1 0 0

A

(2.27)
00
nn
 
000,1

,cnd(o)1A
хотя
det 10 .()nA
Несмотря на малость величины опреде-
лителя, в вычислительном смысле свойства этой матрицы при решении СЛАУ с произвольной правой частью близки к хорошей единичной мат­рице, а не к плохо обусловленной.

Упражнение 2.20. Покажите, что в (2.27)
единичной матрице.
11

AAAE –
Другой пример подобного рода (пример Уилкинсона) [5] дает мат-
1
рица A, у которой обратная матрица
 
111 1 11 2 2
 
0 1 1 1
 
AA

nn nn



0 0 1 1
 
0 0 0 1



, .
A
равна
2
n
  
01 1 2
1

 
 
00 1 1


00 0 1

51
 
n
3
(2.28)
Определитель матрицы A равен произведению диагональных эле-
A
x
x
A
x
A
x
ментов, т. е.
det 1.()A
Используя первую столбцовую норму, находим,
что
Поэтому
121

AnA
cond( ) 2 .
, 1 1 2 ... 2 2 .

1
AAA n

1
11

1
1
nn
n
Таким образом, матрица A
(2.29)
плохо обусловлена, хотя ее определитель не равен нулю.
2.5. ОЦЕНКА ЧУВСТВИТЕЛЬНОСТИ
РЕШЕНИЯ СЛАУ К ВАРИАЦИЯМ В КОМПОНЕНТАХ
МАТРИЦЫ СИСТЕМЫ A И ПРАВОЙ ЧАСТИ
b
С ПОМОЩЬЮ ЧИСЛА ОБУСЛОВЛЕННОСТИ
После того как численное решение СЛАУ найдено, возникает есте­ственный вопрос о том, насколько хорошо это вычисленное решение приближает точное решение. Получить оценку относительной погреш­ности в решении позволяет число обусловленности матрицы системы.
Вначале предположим, что источник вариаций исходных данных находится в правой части СЛАУ точное решение. Тогда вектор приближенного решения
xb
и вектор
– это неизвестное
*
с учетом
возмущения в правой части удовлетворяет системе

*
xbb
(2.30)
,

b
где
– вектор погрешностей в правой части (или вектор невязки).


Вектор
*
xx 
есть вектор погрешности в решении, для кото-
рого согласно (2.3) верно
 
.
xb
(2.31)
Отсюда легко понять, что
 
 
1
Ab
52
(2.32)
,
где
x
A
x
A
1A
– обратная матрица системы. Используя неравенство согласо-
вания норм (2.18), получаем
а из равенства
 
 
xb
аналогичным образом имеем
1
Ab
,
(2.33)
.bAx
(2.34)
Оценка (2.33) важна сама по себе, так как она позволяет оценивать абсолютную погрешность в решении СЛАУ при возмущении ее правой части.
После перемножения неравенств (2.33) и (2.34) приходим к неравенству
 
bAA bx
   
1
.
.
(2.35)
Отсюда окончательная оценка относительной погрешности прини­мает вид
  
xbb

x
AA A A

1
cond ( ) cond( ) .

bbb
r
(2.36)
Таким образом, относительная погрешность в решении СЛАУ, обу­словленная вариациями в правой части системы уравнений, ограничена числом обусловленности
cond ( ,)
умноженным на относительную по-
грешность в возмущении правой части. Иными словами, для хорошо обу­словленной матрицы системы относительная малость невязки всегда га­рантирует малость относительной ошибки в решении СЛАУ. Если же обу­словленность матрицы будет плохой, то эта взаимосвязь будет нарушена.
Пример. Плохо обусловленная СЛАУ. Проанализируем оценку
(2.36) на конкретном численном примере [6, с. 57]. Рассмотрим СЛАУ вида
Ax b

4,1 2,8 4,1

.

9,7 6, 6 9, 7

53
x

1

x
2

Точное решение системы есть
векторной норме
,
1x
(, ) (1,0).xxx
13,8b
. Внесем малое возмущение в пра-
12
T
Тогда в первой
вую часть первого уравнения, принимая, что теперь
4,11

*
b

9,70

Вновь решим новую СЛАУ. Найдем, что теперь
для невязки и погрешности получим, что
.
0,34

*
x
 

0,01,rb 
. Тогда
0,97

Отсюда относительные погрешности правой части и решения будут равны
 
r

bb
b х


0,0007246, 1,63.
х
Очевидно, что малые возмущения в правой части СЛАУ привели к значительным погрешностям в решении. Причина такой взаимосвязи кроется в том, что матрица системы A плохо обусловлена. На основании оценки (2.36) получаем, что
cond( ) 2249,5.
A 
1, 63
0,0007246
1, 6 3.х
Упражнение 2.21 (*). Найдите обратную матрицу для мат-
рицы системы из разобранного примера. Затем вычислите ее
норму и установите, согласуется ли полученная в примере
оценка абсолютной погрешности решения с оценкой (2.33).
Упражнение 2.22 (*) [5, с. 152]. Студент пытается выбрать
наилучший новый ПК из двух возможных вариантов: модель
Intel и модель AMD. Для точного выбора он тестирует компью-
теры с помощью теста на решение СЛАУ:

34 55 21,
xy
 

55 89 34.
xy
54
В результате были получены два численных ответа:
A
A
*T

(0,11;0,45)x
1
Для покупки будет выбран тот ПК, решение которого точ-
нее. Модель какой фирмы это будет?
*T

и
(0,99;1,01)x
2
.
Рассмотрим теперь более общую ситуацию, когда источник возму­щения в исходных данных содержится одновременно в компонентах не-
вырожденной матрицы A и правой части стемой
xb
следует рассматривать возмущенную систему вида
() .
*
Ax b b  
b
. Здесь наряду с точной си-

(2.37)
Пусть при этом выполнены следующие условия:
обратная матрица A
возмущенные компоненты матрицы A малы, и для них выполня-
0;A 
−1
существует;
ется ограничение
1
.A

(2.38)
1
А
Тогда для относительной погрешности в решении СЛАУ выполня­ется оценка
Очевидно, что если
 

xb

xA
1cond()
A
cond ( )
A
оценка (2.39) переходит в оценку (2.36).
0,A

A
 
A
 
A
.
(2.39)
b
Математически строгий вывод оценки (2.39) несколько более сло­жен, чем вывод оценки (2.36), и поэтому он здесь рассматриваться не будет. Его точное описание можно найти в различных руководствах по численным методам, например, [3, с. 404; 5, с. 150].
55
БИБЛИОГРАФИЧЕСКИЙ СПИСОК К ГЛАВЕ 2
1. Каханер Д. Численные методы и программное обеспечение: пер. с англ. /
Д. Каханер, К. Моулер, С. Нэш. – Изд. второе, стереотип. – М.: Мир, 2001. –
575 с.
2. Калинин С. В. Методы математического моделирования в микроэлектро-
нике. Общие вопросы: учебное пособие / С. В. Калинин, А. С. Черкаев. – Ново­сибирск: Изд-во НГТУ, 2025. – 138 с.
3. Шарый
С. П. Шарый. – Москва–Ижевск: Институт компьютерных исследований, 2025. – 807 с. – URL: http://www.ict.nsc.ru/matmod/files/textbooks/SharyNuMeth.pdf (дата обра- щения: 03.06.2025).
4. Рябенький В.С. Введение в вычислительную математику / В.С. Рябень-
кий. – 3-е изд., испр. и доп. – М.: Физматлит, 2008. – С. 79–84. – (Физтеховский учебник).
5. Квасов Б. И. Численные методы анализа и
вание Matlab и Scilab: учебное пособие / Б. И. Квасов. – СПб.: Лань, 2022. –
328 с.
6. Форсайт Дж. Машинные методы математических вычислений: пер.
с англ. / Дж. Форсайт, М. Малькольм, К. Моулер. – М.: Мир, 1980. – С. 57–58.
С.П. Курс вычислительных методов [Электронный учебник] /
линейной алгебры. Использо-
56
ГЛАВА 3
ОСНОВНЫЕ ЧИСЛЕННЫЕ МЕТОДЫ
РЕШЕНИЯ СЛАУ
3.1. ДВА КЛАССА ЧИСЛЕННЫХ МЕТОДОВ РЕШЕНИЯ СЛАУ
В вычислительной линейной алгебре существует большое количе­ство различных методов решения СЛАУ. Значительную часть этих ме­тодов принято подразделять на два класса: прямые и итерационные ме­тоды.
Прямые методы – это методы, которые позволяют за конечное число шагов с применением конечного множества формул найти, при отсут­ствии ошибок округления, точное решение СЛАУ мым методам относятся: метод Крамера, метод обратной матрицы, ме­тод Гаусса, метод прогонки и т. д. Существенной особенностью первых двух методов является их вычислительная непригодность (неэффектив­ность) при решении СЛАУ даже с небольшим порядком матрицы си­стемы n в несколько десятков, что связано с огромными затратами ма­шинного времени. Размерность системы в методе Гаусса может дости­гать нескольких десятков тысяч. При этом возникает необходимость ис­пользования больших объемов памяти компьютера для хранения всей матрицы системы и дальнейших ее модификаций. Матрица системы в этом случае практически не содержит нулевых элементов и поэтому она является плотной матрицей (англ. dense). В является метод прогонки, который может применяться для решения
СЛАУ с порядком более стемы (англ. banded). Ненулевые элементы в ленточных матрицах
6
но только для ленточной матрицы си-
10 ,n
. К классическим пря-
этом смысле, исключением
57
расположены на главной диагонали и на нескольких соседствующих
j
с ней лентах, которые и размещаются в памяти компьютера, а остальные нулевые элементы вообще не хранятся. Матрицы, в которых количество ненулевых диагоналей s много меньше их порядка (s << n), называются разряженными (англ. sparse). Пример такой СЛАУ с трехдиагональной матрицей (1.30) был рассмотрен в разделе
1.4. Исторически подобные задачи впервые возникли при использовании неявных разностных схем для уравнения теплопроводности. В разряженных матрицах для ненуле­вых компонентов часто существует некоторая простая математическая формула, по которой величину этих компонентов легко вычислять по мере необходимости. Это позволяет не хранить матрицу системы в па­мяти компьютера, т. е. в этом
случае вопрос о месте для хранения век­тора неизвестных и правой части может быть более значимым, чем па­мять для матрицы системы.
Упражнение 3.1. Какие другие численные методы решения
СЛАУ, кроме перечисленных выше, можно отнести к прямым методам?
Упражнение 3.2. Проверьте, что нулевые элементы ленточ-
i
l
ной матрицы удовлетворяют условию
называемый полушириной ленты, содержащей в себе диагональ. В частности, для трехдиагональной матрицы s = 3, а l = 1.
, где l – параметр,
21sl
Упражнение 3.3 (*). Существуют ли прямые методы для ре-
шения СЛАУ со структурой, показанной на рис. 1.7, которая воз­никает при дискретизации уравнения Пуассона? Является ли эта матрица ленточной?
Компьютерные прямые методы нахождения решения СЛАУ, не­смотря на различные способы повышения их устойчивости, всегда подвержены машинным ошибкам округления при выполнении опера­ций над числами с плавающей точкой. Эти ошибки в процессе реше­ния имеют тенденцию к накоплению и росту. Поэтому такие числен­ные решения СЛАУ никогда не бывают абсолютно точными ченные прямые решения можно улучшить с помощью итерационных методов.
58
. Полу-
Итерационные методы – это приближенные методы, основанные на
A
x
x
x
x
x
x
x
циклическом использовании какой-либо математической процедуры, с помощью которой можно улучшить предыдущее решение. Цикл про­цедуры начинается с некоторого начального приближения, на основе которого вычисляется следующее приближение. Каждый переход от од­ного приближения к другому называется итерацией (от лат. iteratio – повторение или «снова
пахать»). Конструктивно итерационный метод включает в себя математические формулы, образующие процедуру, и критерий завершения, который может состоять из одного или не­скольких условий.
Рассмотрим алгоритм построения итерационного процесса при ре-
шении СЛАУ. Пусть для СЛАУ

*
x
. Тогда
0

0
грешности

10

xx

,rbAx
и согласно (2.3)

Ar
 
. Повторяя описанную процедуру k раз, получаем последо-

xx
0
1
и вычислить новое улучшенное приближение
, где
rAx


вательность приближенных решений СЛАУ
при k → ∞ даст точное решение
, т. е.
k
xb
найдено неточное решение
– погрешность решения. Невязка
. Отсюда можно найти вектор по-

lim .
x
k
(3.1)
, 0,1, 2...
xk
k
, которая
В качестве критерия завершения цепочки последовательных при­ближений на практике можно использовать одно из двух условий завер­шения:
либо достигнуто заданное заранее количество итераций
k
max
(например, 10 или 100);
либо для заранее выбранного произвольного ε > 0 выполняется
в какой-либо норме неравенство

xx

1.kk
(3.2)
Можно также рассматривать и третье условие завершения итераци­онного процесса, заключающееся в малости невязки
надо помнить, что малость невязки не гарантирует малость ошибки
59
r 
k
. При этом

,x
так как
x
x
11A

k
Ar

, а практически это редко выполняется.
1
и для малости ошибки необходимо, чтобы
k
Качество различных итерационных методов сравнивается по коли­честву итераций, которые нужны для достижения выполнения критерия завершения. Это количество зависит:
1) от вектора начального решения
;
0
2) используемого метода итерации;
3) выбранного критерия сходимости.
Очевидно, что итерационные методы можно использовать не только для улучшения прямых решений. Они позволяют находить решения СЛАУ сами по себе, независимо от прямых методов. Если итерацион­ные методы сходятся быстро, то они обычно предпочтительнее прямых
2
3
[1].
(),On
то-
методов. Объем вычислений на одну итерацию у них гда как полный цикл исключения по Гауссу требует
равен
()On
При использовании итерационных методов, в отличие от прямых, не происходит накопления ошибок округления и их распространения в процессе расчета, что обеспечивает их лучшую эффективность, напри­мер, при решении СЛАУ с плохо обусловленными матрицами. Это свя­зано с тем, что каждая последующая итерация не зависит от ошибок округления в предыдущей итерации.
Поэтому итерационный процесс
можно рассматривать как самокорректирующийся.
Наиболее распространенной областью применения итерационных методов являются линейные системы, возникающие при численном ре­шении моделей в форме смешанных задач для дифференциальных урав­нений в частных производных. В этом случае системы с порядками от
10
5
до
7
10
с сильно разряженными матрицами не являются чем-то не-
обычным и никакие прямые методы здесь уже неприменимы.
Примерами часто используемых на практике итерационных методов решения СЛАУ являются метод простой итерации, метод Якоби, метод Гаусса–Зейделя и метод последовательной верхней релаксации (SOR).
В заключение этого параграфа отметим, что в современной вычис­лительной математике большую популярность начинает приобретать новый класс методов решения СЛАУ – вариационный. Эти методы еще
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]