В методе узловых потенциалов из зависимых источников допустим только управляемый напряжением источник тока (ИТУН). Этот идеальный четырехполюсник, условное графическое обозначение которого приведено на рис. 4, легко включается в уравнения метода узловых потенциалов.
|
Рис. 4. Управляемый напряжением источник тока
|
Обозначим его входные зажимы символами j и j’, а выходные -символами k и k’. Токи и напряжения элемента связаны следующими соотношениями:
-
Ij
|
=
|
0;
|
Ij’
|
=
|
0;
|
Ik
|
=
|
Gm(Vj – Vj’);
|
Ik’
|
=
|
–Gm(Vj – Vj’).
|
Проведя, как и в предыдущем разделе, преобразования можно показать, что Y-матрица ИТУНа имеет вид:
.
|
(14)
|
В алгебраической форме эту матрицу можно записать с помощью произведения векторов
Gm(ek – ek’)(ej – ej’)t.
|
(15)
|
Многие используемые на практике устройства моделируются с помощью ИТУНа. При малом уровне сигнала транзисторы и диоды могут быть линеаризованы в окрестности рабочей точки и описаны линейной моделью. На рис. 5 иллюстрируется типовая малосигнальная модель полевого транзистора (Go=1/Rси), а на рис. 6 – биполярного транзистора.
|
|
Рис. 5. Гибридная П-образная модель полевого транзистора
|
Рис. 6. Гибридная П-образная модель биполярного транзистора
|
Для полевого транзистора Y-матрица имеет вид
Для биполярного транзистора
где gб = 1/rб, gк = 1/rк, gбэ = 1/rбэ, gкэ = 1/rкэ. Матрица транзистора добавляется (суммируется) к Y-матрице электрической цепи. Столбцы и строки суммарной Y-матрицы, в которые добавляются элементы матрицы транзистора, определяются номерами узлов подключения выводов транзистора.
РЕШЕНИЕ ЛИНЕЙНЫХ УРАВНЕНИЙ МЕТОДОМ LU –ФАКТОРИЗАЦИИ
Эффективным методом решения систем линейных алгебраических уравнений является метод разложения матрицы на треугольные матрицы, называемый также методом функционального корня и методом LU-факторизации. Алгоритмы этого метода близки к методу исключения Гаусса. Главным преимуществом метода LU-факторизации в сравнении с методом исключения Гаусса является возможность более простого получения решений для различных векторов b в правой части системы уравнений (1), а также для транспонированной системы уравнений при расчете чувствительностей.
Пусть имеется система линейных алгебраических уравнений (ЛАУ)
где А – матрица размером (n x n) с постоянными коэффициентами;
b – n-мерный вектор известных констант и х - n-мерный вектор искомых переменных (неизвестных).
Допустим, что матрицу А можно разложить на два сомножителя
где
L=
|
,
|
U=
|
.
|
Здесь матрица L является нижней треугольной, а матрица U верхней треугольной. Определитель матрицы А равен произведению диагональных элементов lii матрицы L.
Рассмотрим алгоритмы определения матриц L и U ниже, а сейчас допустим, что такое разложение осуществлено. Представим систему уравнений (17) в следующем виде:
Определим вспомогательный вектор z как
Из этого уравнения вектор z найти невозможно, поскольку неизвестен вектор х. Однако, подставив (19) в (18), получим
Благодаря треугольной форме матрицы L, вектор z можно легко определить. Для этого запишем (20) в виде системы уравнений
l11z1
l21z1 + l22z2
l31z1 + l32z2 + l33z3
.
. . . . . . . . . . . . . . . .
.
ln1z1 + ln2z2 + ln3z3 + . . . + lnnzn
|
=b1
=b2
=b3
.
.
.
=bn .
|
Из этой системы находим элементы вектора z
z1
z2
z3
.
.
.
zn
|
= b1/ l11
= (b2 - l21 z1)/ l22
= (b3 - l31z1 - l32z2)/ l33
.
. . . . . . . . . . . . . . . .
.
= (bn - ln1z1 + ln2z2 + ln3z3 + . . . )/lnn
|
В общем виде
|
i=2,3,…,n
|
(21)
|
Этот процесс называется прямым исключением (прямой подстановкой или прямым ходом). Чтобы уравнение (21) имело смысл, диагональные элементы матрицы L должны быть ненулевыми. Теперь вернемся к уравнению (19) и найдем вектор неизвестных х. Для этого запишем (19) в координатной форме
x1 +u12x2 + u13x3+ … + u1nxn
x2 + u23x3+ … + u2nxn
.
. . . . . . . . . . .
.
xn
|
= z1
= z2
.
.
.
= zn
|
Начиная с последнего уравнения, можно последовательно найти компоненты вектора х. В общем виде они определяются по формуле
,
,
|
i=n-1,n-2,….1
|
(22)
|
Этот процесс называют обратной подстановкой или обратным ходом. Число операций, требуемых для выполнения прямой и обратной подстановок, примерно равно n2/2, а в сумме с факторизацией для решения уравнения требуется n2 операций. Из уравнений (21) и (22) следует, что при такой системе расчетов векторы b, z и x могут быть размещены в одних и тех же ячейках памяти ЭВМ.
Остановимся подробно на алгоритмах LU-разложения. С этой целью рассмотрим матрицу А размером (4 х 4). Предположим, что разложение существует, запишем произведение матриц L и U
-
.
|
Сравним это произведение с матрицей А. Видно, что первый столбец матрицы L равен первому столбцу матрицы А (lii = aii, i = 1, 2, 3, 4). Заметим также, что первая строка произведения может быть использована для определения элементов первой строки матрицы U из решения уравнений liiu1j = a1j, j = 2, 3, 4. Так как теперь известны l21, l22 и u1j, можно использовать вторую строку матрицы А для расчета u2j, j = 3, 4.
u2j = (a2j - l21u1j)/ l22, j = 3, 4.
Далее, чередуя строки и столбцы, можно аналогичным образом найти остальные элементы матриц L и U.
В общем случае элементы матрицы L находятся из соотношения
,
|
|
(23)
|
соответственно для элементов матрицы U:
,
|
j>k.
|
(24)
|
Уравнения (23)-(24) описывают алгоритм разложения на треугольные матрицы, называемый алгоритмом Краута. Заметим, что требуемые в этих соотношениях значения элементов матриц L и U рассчитываются на предыдущих этапах процесса. Далее, каждый элемент аij матрицы А требуется для вычисления только соответствующих элементов матриц L и U. Так как нулевые элементы L и U, а также единичную диагональ матрицы U запоминать не нужно, в процессе вычислений матрицы L и U могут быть записаны на месте матрицы А, причем L расположена в нижнем треугольнике (i j), а U – соответственно в верхнем треугольнике (i<j) матрицы А. Обобщив вышеизложенное, опишем алгоритм LU-разложения следующим образом:
-
Шаг 1.
|
Положим k=1 и перейдем к шагу 3.
|
Шаг 2.
|
Используя (23), рассчитаем k-й столбец матрицы L. Если k=n, закончим процедуру разложения.
|
Шаг 3.
|
Используя (24), рассчитаем k-ю строку матрицы U.
|
Шаг 4.
|
Положим K=k+1 и перейдем к шагу 2.
|
|
|
Можно получить другой алгоритм разложения, если последовательно строка за строкой рассматривать произведение матриц L и U. Вначале определим первую строку матрицы U, а затем элементы l21и l22, и вторую строку матрицы U и т.д. При таком алгоритме матрица рассматривается построчно. Преимущества такого подхода проявляются при матрицах большого размера. Этот алгоритм называется декомпозиция строка за строкой. Аналогичный алгоритм, называемый декомпозиция столбец за столбцом, можно построить при последовательном переборе столбцов матрицы А. В [2] приведен еще один метод, имеющий название LU-Гаусс, в котором вычитания в соответствии с (23) и (24) проводятся сразу по всей матрице. Однако этот метод менее предпочтительный по сравнению с методами декомпозиции и Краута.
Важные черты LU-разложения состоят в следующем:
-
Легко вычисляется определитель матрицы А
detA = .
-
Элементы матриц L и U могут быть написаны на месте элементов матрицы А и занесены в те же ячейки памяти (запоминать единичные элементы на главной диагонали матрицы U нет необходимости).
-
Если требуется найти решение для другого вектора b в правой части уравнения (16), то не нужно повторно проводить разложение матриц на треугольные, а достаточно только произвести прямую и обратную подстановки.
-
Для уравнения с транспонированной матрицей At y = d решение находится при том же LU-разложении. Решение таких систем уравнений необходимо при расчете чувствительностей.
Число операций М, требуемых для проведения LU-разложения, определяется как
.
С точки зрения объема вычислений метод LU-разложения вместе с прямой и обратной подстановками эквивалентен методу исключения Гаусса. Его преимущества заключаются в свойствах, указанных в третьем и четвертом пунктах.
Достарыңызбен бөлісу: |