
- •Переходные процессы
- •Основные положения, принимаемые при анализе
- •Литература. Основ. 2 стр.[7-15] Доп.22 [1-100 ] Контрольные вопросы
- •Лекция 4
- •Топологические матрицы
- •Первый закон Кирхгофа
- •1. Решение линейных уравнений методом треугольного разложения. Принципы учёта разряженности матриц.
- •2. Элементы матриц l и u могут быть записаны на месте элементов матриц а и занесены в те же ячейки памяти (запоминать единичные элементы на главной диагонали матрицы u нет необходимости).
- •3. Обратить матрицу методом разбиения ее на произведение двух треугольных матриц.
- •2. Метод Зейделя.
- •Общие понятия о методах линейного программирования и определения
- •Пример постановки задачи линейного программирования
- •Обобщенная и каноническая постановка задачи
- •Блок-схема эвристического алгоритма реализации задачи линейного программирования
- •1. Основные понятия систем автоматического регулирования (сар)
- •1.1. Основные понятия и определения сар
- •1.2. Классификация сар
- •По принципу регулирования По цели регулирования
- •По характеру сигналов в регуляторе
- •I) По приципу регулирования:
- •По характеру задающего воздействия сар делятся на:
- •В зависимости от характера действия устройств, входящих в систему регулирования, различают:
- •IV) По способу математического описания сар делятся на:
- •1.4. Функциональные и структурные схемы.
- •Вопрос 1. Какая физическая величина характеризует состояние объекта?
- •Вопрос 2. Как называется упрощенное графическое изображение любой структуры автоматической системы, содержащее условное изображение ее частей?
- •Вопрос 4. Алгоритм функционирования какой системы, содержит предписание изменять управляемую величину в соответствии с заранее заданной функцией времени?
- •Вопрос 5. В какой сар входными воздействиями управляющего устройства являются только внешние воздействия, т.Е. В них не осуществляются контроль управляемой величины?
- •Вопрос 6. В какой сар на вход управляющего устройства поступают как внутренние, так и внешние воздействия ?
1. Решение линейных уравнений методом треугольного разложения. Принципы учёта разряженности матриц.
Эффективным методом решения системы линейных алгебраических уравнений является метод разложения на треугольные матрицы, или метод LU-факторизации (метод_LU~разложений). Алгоритмы этого метода близки к методу исключения Гаусса, хотя вычисления могут производится в различной последовательности. Главным преимуществом метода LU-факторизации в сравнении с методом исключения Гаусса является возможность более простого получения решений для различных векторов b в правой части системы (1.1), а также для транспонированной системы уравнений, Пусть имеется система линейных алгебраических уравнений (CЛАУ)
АХ = В, (1.1)
где А - матрица размера (n, n) с постоянными коэффициентами; В - n-мерный вектор известных констант и Х - n-мерный вектор искомых неизвестных.
Допустим, что матрицу А можно разложить на два сомножителя:
А = LU , (1.2)
г
де
здесь матрица L является нижней треугольной, а матрица U - верхней треугольной. Заметим, что на главной диагонали матрицы U стоят 1. Это означает, что определитель матрицы A равен произведению диагональных элементов Lii матрицы L.
Рассмотрим алгоритм определения матриц L и U ниже, а сейчас допустим, что такое разложение осуществлено. Перепишем систему уравнений в следующем виде
LUХ = В (1.3)
Определим вспомогательный вектор Z как
UX = Z (1.4)
Из этого уравнения вектор Z найти невозможно, поскольку неизвестен вектор X . Однако, подставив Z в (1.3), получим
LZ = B (1.5)
Благодаря специальной форме матрицы L вектор Z можно легко определить. Для этого запишем (1.5) в виде системы уравнений
l11 z1 = b1
l21z1 + l22z2 = b2
l31z1 + l32z2 + l33 z3 = b3
. . . . . . . . . . . . . ..
ln1z1 + ln2z2 + ... + lnnzn = bn
Откуда получаем
z1 = b1/ l11
z2 = ( b2 - l21z1)/ l22
z3 = ( b3 - l31z1 - l32z2)/ l33
. . . . . . . . . . . . . . .
Или в общем виде
z1 =b1/ l11
i=2,3,...,n . (1.6)
Этот процесс называется прямым исключением (прямой подстановкой или прямым ходом). Чтобы уравнение (1.6) имело смысл, диагональные элементы матрицы L должны быть ненулевыми. Теперь вернемся к уравнению (1.4) и найдем вектор неизвестных X. Для этого запишем (1.4) в координатной форме
x1 + U12x2 + U13x3 + ... + U1nxn = z1
x2 + U23x3 + ... + U2nxn = z2
. . . . . . . . . . . . . . . . . . .
xn-1 + Un-1,n xn = zn-1
xn = zn
Начиная с последнего уравнения, можно последовательно найти компоненты вектора х. В общем виде они определяются по формуле
xn
= zn
,
i=n-1,n-2,...,1 . (1.7)
Этот процесс называют обратной подстановкой или обратным ходом. Число операций, требуемых для выполнения как прямой, так и обратной подстановок, равно примерно n2/2, а в сумме для решения требуется n2 операций. Из уравнений (1.6) и (1.7) следует, что при такой системе расчетов векторы B, Z и X могут быть размещены в одних и тех же ячейках памяти ЭВМ.
Займемся выводом алгоритма LU-разложения. С этой целью рассмотрим матрицу А размера (4х4). Предположим, что разложение существует, запишем произведение матриц L и U
Сравним это произведение с матрицей А. Видно, что первый столбец разложения остается неизменным и li1 = ai1, i=1,2,3,4. Заметим также, что первая строка произведения может быть использована для определения элементов первой строки матрицы U из решения уравнений l11U1j=a1j, j=2,3,4. Поскольку во втором столбце элементы U12 и li1 известны, li2 = ai2-li1U12, i=2,3,4. Так как теперь известны l21, l22 и U1j, можно использовать вторую строку матрицы для расчета U2j, j=3,4:
U2j = ( a2j - l21U1j)/ l22 , j=3,4.
Далее, чередуя строки и столбцы, можно аналогичным образом найти остальные элементы матриц L и U. В общем случае элементы матрицы L находятся из соотношения:
(1.8)
с
оответственно
для элементов матрицы U:
(1.9)
Уравнения (1.8) и (1.9) описывают алгоритм разложения на треугольные матрицы, называемый алгоритмом Краута. Его выполнение осуществляется при задании k=1,2,...,n и использовании формул (1.8) и (1.9). Заметим, что требуемые в этих соотношениях значения элементов матриц L и U рассчитываются на предыдущих этапах процесса. Далее, каждый элемент aij матрицы А требуется для вычисления только соответствующих элементов матриц L и U. Так как нулевые элементы матриц L и U, а также единичную диагональ матрицы U запоминать не нужно, в процессе вычислений матрицы L и U могут быть записаны на месте матрицы А, причем L расположена в нижнем треугольнике (i j), а U - соответственно в верхнем треугольнике (i<j) матрицы А. Обобщив выше изложенное, опишем алгоритм LU-разложения следующим образом:
Шаг 1. Положим k=1 и перейдем к шагу 3.
Шаг 2. Используя (3.1.8), рассчитываем k-й столбец матрицы L. Если k=n, закончим процедуру разложения.
Шаг 3. Используя (3.1.9), рассчитываем k-ю строку матрицы U.
Шаг 4. Положим k=k+1 и перейдем к шагу 2.
Можно получить другую форму алгоритма разложения, если последовательно строку за строкой рассматривать произведение матриц L и U. Вначале определим первую строку матрицы U, а затем элементы l21 и l22 и вторую строку матрицы U и т.д. При таком алгоритме матрице А рассматривается построчно. Преимущества такого подхода особенно проявляется при матрицах большого размера. Этот алгоритм называется декомпозиция строка за строкой. Аналогичный алгоритм можно построить при последовательном пере выборе столбцов матрицы А.
Н
аряду
с рассмотренными выше в [2] приведем еще
один метод, имеющий название LU-Гаусса.
Однако последний менее предпочтительный
по сравнению с методами Краута и
декомпозиции.
Важные черты метода LU-разложения состоят в следующем:
1. Легко вычисляется определитель матрицы А