SlideShare a Scribd company logo
1 of 38
СЛАУ специального вида
     Методы численного решения СЛАУ


      Кафедра теоретической механики

Самарский государственный аэрокосмический университет
            им. академика С. П. Королёва
    (национальный исследовательский университет)
                yudintsev@termech.ru


                17 марта 2012 г.
Содержание




1   Трехдиагональные системы. Метод Прогонки


2   Симметричные матрицы


3   Симметричные, положительно определенные системы


4   Источники




    Кафедра ТМ (СГАУ)      СЛАУ специального вида   17 марта 2012 г.   2 / 32
Трехдиагональные системы. Метод Прогонки


Ленточные матрицы

Определение 1.
Матрица A называется ленточной, если её элементы aij удовлетворяют
условиям aij = 0 при l < i − j и j − i > m для некоторых
неотрицательных чисел l , m.

l + m + 1 – ширина ленточной матрицы
Определение 2.
Если m = 0, то матрица A – левая ленточная
Если l = 0, то матрица A – правая ленточная

Определение 3.
Если l = m = 1,то матрица A называется трехдиагональной.


   Кафедра ТМ (СГАУ)               СЛАУ специального вида   17 марта 2012 г.   3 / 32
Трехдиагональные системы. Метод Прогонки


Ленточные матрицы



                                               1, 4 1, 5 1, 6

                      2, 1                          2, 5 2, 6

                      3, 1 3, 2                            3, 6

                             4, 2 4, 3

                                     5, 3 5, 4

                                               6, 4 6, 5



  Кафедра ТМ (СГАУ)               СЛАУ специального вида          17 марта 2012 г.   4 / 32
Трехдиагональные системы. Метод Прогонки


Трехдиагональные системы


 a11 a12 0          0     0     0                0       x1      b1
                                                                
                                        ...
a21 a22 a23 0            0     0       ...      0   x2   b2 
                                                                
 0 a32 a33 a34 0               0       ...      0   x3   b3 
                                                                
 0     0 a43 a44 a45           0       ...      0   x4  =  b4 
                                                                
. . . . . . . . . . . . . . . ...      ...     ...  ...   ... 
                                                                
 0 ... 0           0     0 an−1,n−2 an−1,n−1 an−1,n  xn−1  bn−1 
  0 ... 0           0     0     0     an,n−1   an,n      xn      bn

Задачи, приводящие к необходимости решения СЛАУ с
трехдиагональной матрицей
    Сплайн-интерполяция
    Задачи аэро-гидро динамики

   Кафедра ТМ (СГАУ)               СЛАУ специального вида   17 марта 2012 г.   5 / 32
Трехдиагональные системы. Метод Прогонки


Метод прогонки


  1 −ξ0       0   0   0   0          0      x0
                                                   
                              ...                   ν0
 A1 −C1 B1       0   0   0   ...    0   x1   F1 
                                                   
0
      A2 −C2 B2      0   0   ...    0   x2   F2 
                                                    
0
       0    A3 −C3 B3    0   ...    0   x3  =  F3 
                                                    
. . . . . . ... ... ... ...  ...   ...  ...   ... 
                                                   
0     ...    0   0   0 An−1 −Cn−1 Bn−1  xn−1  Fn−1 
  0    ...    0   0   0   0   −ξn    1      xn      νn


                Aj xj−1 − Cj xj + Bj xj+1 = Fj , j = 1, 2, . . . n − 1.                    (1)
                                                             x0 = ξ0 x1 + ν0               (2)
                                                       xn = ξn xn−1 + νn                   (3)


    Кафедра ТМ (СГАУ)               СЛАУ специального вида              17 марта 2012 г.   6 / 32
Трехдиагональные системы. Метод Прогонки


Метод прогонки
Алгоритм [1]


  1    Подставим x0 из (2) в (1)

                             A1 (ξ0 x1 + ν0 ) − C1 x1 + B1 x2 = F1                       (4)

                                                      B1             A1 ν0 − F1
                 x1 = ξ1 x2 + ν1 , где ξ1 =                   , ν1 =                     (5)
                                                   C1 − A1 ξ0        C1 − A1 ξ0
  2    Подставим x1 из (5) в следующее уравнение (1), получим
       уравнение, связывающее x2 и x3 :

                                           x2 = ξ2 x3 + ν2                               (6)

       или для k
                              xk−1 = ξk−1 xk + νk−1 , k < n − 1                          (7)


      Кафедра ТМ (СГАУ)               СЛАУ специального вида          17 марта 2012 г.   7 / 32
Трехдиагональные системы. Метод Прогонки


Метод прогонки
Алгоритм [1]


  1    Подставим x0 из (2) в (1)

                             A1 (ξ0 x1 + ν0 ) − C1 x1 + B1 x2 = F1                       (4)

                                                      B1             A1 ν0 − F1
                 x1 = ξ1 x2 + ν1 , где ξ1 =                   , ν1 =                     (5)
                                                   C1 − A1 ξ0        C1 − A1 ξ0
  2    Подставим x1 из (5) в следующее уравнение (1), получим
       уравнение, связывающее x2 и x3 :

                                           x2 = ξ2 x3 + ν2                               (6)

       или для k
                              xk−1 = ξk−1 xk + νk−1 , k < n − 1                          (7)


      Кафедра ТМ (СГАУ)               СЛАУ специального вида          17 марта 2012 г.   7 / 32
Трехдиагональные системы. Метод Прогонки


Алгоритм
 3    Подставим xk−1 в k-ое уравнение системы (1)

                         Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk                  (8)

 4    Разрешаем уравнение (8) относительно xk

                                        xk = ξk xk+1 + νk                             (9)

      где
                                     Bk              Ak νk−1 − Fk
                          ξk =                , νk =                                 (10)
                                 Ck − Ak ξk−1        Ck − Ak ξk−1
 5    Подставим (9) для k = n − 1 в (3) :

                                 xn = ξn (ξn−1 xn + νn−1 ) + νn                      (11)

 6    xn → (9) → xn−1 → xn−2 . . . → x1
     Кафедра ТМ (СГАУ)               СЛАУ специального вида       17 марта 2012 г.    8 / 32
Трехдиагональные системы. Метод Прогонки


Алгоритм
 3    Подставим xk−1 в k-ое уравнение системы (1)

                         Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk                  (8)

 4    Разрешаем уравнение (8) относительно xk

                                        xk = ξk xk+1 + νk                             (9)

      где
                                     Bk              Ak νk−1 − Fk
                          ξk =                , νk =                                 (10)
                                 Ck − Ak ξk−1        Ck − Ak ξk−1
 5    Подставим (9) для k = n − 1 в (3) :

                                 xn = ξn (ξn−1 xn + νn−1 ) + νn                      (11)

 6    xn → (9) → xn−1 → xn−2 . . . → x1
     Кафедра ТМ (СГАУ)               СЛАУ специального вида       17 марта 2012 г.    8 / 32
Трехдиагональные системы. Метод Прогонки


Алгоритм
 3    Подставим xk−1 в k-ое уравнение системы (1)

                         Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk                  (8)

 4    Разрешаем уравнение (8) относительно xk

                                        xk = ξk xk+1 + νk                             (9)

      где
                                     Bk              Ak νk−1 − Fk
                          ξk =                , νk =                                 (10)
                                 Ck − Ak ξk−1        Ck − Ak ξk−1
 5    Подставим (9) для k = n − 1 в (3) :

                                 xn = ξn (ξn−1 xn + νn−1 ) + νn                      (11)

 6    xn → (9) → xn−1 → xn−2 . . . → x1
     Кафедра ТМ (СГАУ)               СЛАУ специального вида       17 марта 2012 г.    8 / 32
Трехдиагональные системы. Метод Прогонки


Алгоритм
 3    Подставим xk−1 в k-ое уравнение системы (1)

                         Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk                  (8)

 4    Разрешаем уравнение (8) относительно xk

                                        xk = ξk xk+1 + νk                             (9)

      где
                                     Bk              Ak νk−1 − Fk
                          ξk =                , νk =                                 (10)
                                 Ck − Ak ξk−1        Ck − Ak ξk−1
 5    Подставим (9) для k = n − 1 в (3) :

                                 xn = ξn (ξn−1 xn + νn−1 ) + νn                      (11)

 6    xn → (9) → xn−1 → xn−2 . . . → x1
     Кафедра ТМ (СГАУ)               СЛАУ специального вида       17 марта 2012 г.    8 / 32
Трехдиагональные системы. Метод Прогонки


Алгоритм
Прогоночные формулы


    Прямой ход прогонки

                            Bk              Ak νk−1 − Fk
     ξ0 , ν0 → ξk =                  , νk =              , k = 1, . . . n − 1
                        Ck − Ak ξk−1        Ck − Ak ξk−1

                                                νn + ξn νn−1
                                     xn =
                                                 1 − ξn ξn−1
    Обратный ход прогонки

                       xk = ξk xk+1 + νk , k = n − 1, n − 2, . . . 0

    Количество арифметических операций с плафающей точкой
    (флопов), необходимых для решения СЛАУ методом прогонки
    пропорционален размеру матрицы ∼ 2n
   Кафедра ТМ (СГАУ)               СЛАУ специального вида       17 марта 2012 г.   9 / 32
Трехдиагональные системы. Метод Прогонки


Алгоритм
Прогоночные формулы


    Прямой ход прогонки

                            Bk              Ak νk−1 − Fk
     ξ0 , ν0 → ξk =                  , νk =              , k = 1, . . . n − 1
                        Ck − Ak ξk−1        Ck − Ak ξk−1

                                                νn + ξn νn−1
                                     xn =
                                                 1 − ξn ξn−1
    Обратный ход прогонки

                       xk = ξk xk+1 + νk , k = n − 1, n − 2, . . . 0

    Количество арифметических операций с плафающей точкой
    (флопов), необходимых для решения СЛАУ методом прогонки
    пропорционален размеру матрицы ∼ 2n
   Кафедра ТМ (СГАУ)               СЛАУ специального вида       17 марта 2012 г.   9 / 32
Трехдиагональные системы. Метод Прогонки


Трехдиагональные системы
Условие существования решения




Определение 4.
Прогонка называется корректной, если знаменатели в прогоночных
формулах не обращаются в нуль.

Определение 5.
Прогонка называется устойчивой, если |ξi | < 1 для всех i = 0, 1, . . . n




    Кафедра ТМ (СГАУ)               СЛАУ специального вида   17 марта 2012 г.   10 / 32
Трехдиагональные системы. Метод Прогонки


Трехдиагональные системы
Условие существования решения

Theorem
Прогонка устойчива и корректна если [2]

                    |Cj | ≥ |Aj | + |Bj | ≥ |Aj | ≥ 0, |ξ0 | < 1, |ξn | ≤ 1

Доказательство.
Пусть для некоторого j, |ξj−1 | < 1. Рассмотрим выражение Cj − ξj−1 Aj .

                    |Cj − ξj−1 Aj | ≥ |Cj | − |ξj−1 ||Aj | > |Cj | − |Aj | ≥ 0

Поэтому

                         |Bj |           |Cj | − |Aj |
          |ξj | =                   ≤                      < 1, |Cj − ξj−1 Aj | = 0,
                    |Cj − ξj−1 Aj |   |Cj | − |ξj−1 ||Aj |
          |1 − ξn ξn−1 | ≥ 1 − |ξn ||ξn−1 | > 0

    Кафедра ТМ (СГАУ)                 СЛАУ специального вида             17 марта 2012 г.   11 / 32
Трехдиагональные системы. Метод Прогонки


Задание 5.1
Решить задачу глобальной сплайн-интерполяции. На плоскости задана серия
точек: (x0 , y0 ), . . . , (xn , yn ), xi = xj для i = j. Необходимо провести через эти
точки кубический сплайн, плавно соединив заданные точки без разрывов
значений функции, а также первой и второй производных.




    Кафедра ТМ (СГАУ)               СЛАУ специального вида        17 марта 2012 г.   12 / 32
Трехдиагональные системы. Метод Прогонки


Задание 5.1


Условия непрерывности:
    S(xi ) = yi - условие интерполяции (сплайн проходит через заданные
    точки);
    S(xi − 0) = S(xi + 0) - непрерывность;
    S (xi − 0) = S (xi + 0) - непрерывность первой производной;
    S (xi − 0) = S (xi + 0) - непрерывность второй производной;
Всего, для n интервалов 4n − 2 условий. Каждый кубический сплайн Sk (x)
имеет 4 неизвестных коэффициента (4n для всех интервалов). Недостающие
два условия можно определить задав значение первой или второй
производной на концах заданного интервала интерполяции: в точках x0 , xn .



   Кафедра ТМ (СГАУ)               СЛАУ специального вида   17 марта 2012 г.   13 / 32
Трехдиагональные системы. Метод Прогонки


Задание 5.1
Указанные выше условия приводят к необходимости решения следующей
СЛАУ с трехдиагональной матрицей относительно неизвестных
qi , i = 1, n − 1:
          hi      hi + hi+1        hi+1   yi+1 − yi   yi − yi−1
   qi−1      + qi           + qi+1      =           −           , i = 1, n − 1,
          6           3             6       hi+1          hi
с дополнительными условиями на границах интервала интерполяции:

                                       q0 = qn = 0

После того неизвестные величины найдены, сплайн 3 степени для каждого
интервала [xi−1 , xi ] записывается следующим образом:

                (xi − x)3      (x − xi−1 )3         yi−1        hi
  S(x) = qi−1             + qi              +            − qi−1      (xi − x)+
                    6hi            6hi               hi         6
                                                               yi       hi
                                                          +        − qi     (x − xi−1 )
                                                              hi        6

   Кафедра ТМ (СГАУ)               СЛАУ специального вида           17 марта 2012 г.   14 / 32
Трехдиагональные системы. Метод Прогонки


Задание 5.1


Необходимо реализовать следующий алгоритм работы программы:
    загрузить из файла таблицу с узлам интерполяции: пары (xi , yi ) в
    каждой строке, разделенные пробелами;
    сформировать трехдиагональную матрицу коэффициентов уравнения;
    решить систему линейных уравнений, построить сплайны;
    вывести в файл пары (xj , yj ) так, чтобы между узлами интерполяции
    было не менее 5 дополнительных точек.
    Построить график полученной кусочной функции и показать на
    графике точки исходной таблицы xi , yi .




   Кафедра ТМ (СГАУ)               СЛАУ специального вида   17 марта 2012 г.   15 / 32
Симметричные матрицы


LDM T - разложение

                                   A = LU = LDMT
Theorem
Если все ведущие главные подматрицы A невырожденны, тогда
существуют единственные нижние унитреугольные матрицы L и M, и
единственная диагональная матрица D, такие, что A = LDMT

Доказательство.
 1    LU разложение существует и оно единственно.
 2    Пусть D = diag (d1 , d2 , . . . , dn ), di = uii = 0. Матрица D
      невырожденная.
 3    A = LU = LD(D−1 U)
 4    D−1 U = MT – верхняя унитреугольная матрица.


     Кафедра ТМ (СГАУ)              СЛАУ специального вида    17 марта 2012 г.   16 / 32
Симметричные матрицы


LDM T - разложение
Алгоритм

       Пусть известны j − 1 столбцов матрицы L, j − 1 элементов
       диагональной матрицы D и j − 1 строк матрицы M:
                                                                                            
      1     0    0      .    0       d1       0     0    .    0    1      m21      m31     . mn1
   l21     1    0      .    0    0         d2    0    .    0 0        1       m32     . mn2 
                                                                                            
   l31    l32   1      .    0    0         0     d3   .    0 0        0        1      . mn3 
                                                                                            
   l41    l42   l43    .    0    0         0     0    .    0 0        0        0      . mn4 
                                                                                            
  . . .                          . . .                       . . .                          
    ln1    ln2   ln3    . lnn        0         0    0    . dnn     0       0         0     . mnn

       Приравняем j-е столбцы уравнения A = LDMT
                                     A(1 : n, j) = Lv, v = DMT ej

       Решение нижней треугольной системы ( верхняя“ часть системы –
                                              ”
       строки с 1 по j) относительно v(1 : j)
                       L(1 : j, 1 : j) · v(1 : j) = A(1 : j, j) → v(1 : j) = . . .

      Кафедра ТМ (СГАУ)                     СЛАУ специального вида              17 марта 2012 г.   17 / 32
Симметричные матрицы


LDM T - разложение
Алгоритм

         Пусть известны j − 1 столбцов матрицы L, j − 1 элементов
         диагональной матрицы D и j − 1 строк матрицы M:
                                                                      
    1      0     0     .     0       d1     d1 m21    d1 m31    . d1 mn1
 l21      1     0     .     0    0         d2      d2 m32    . d2 mn2 
                                                                      
 l31      l32   1     .     0    0          0        d3      . d3 mn3 
                                                                      
 l41      l42   l43   .     0    0          0         0      .    0 
                                                                      
. . .                            . . .                                
  ln1      ln2   ln3   . lnn         0        0         0       .  dnn

         Приравняем j-е столбцы уравнения A = LDMT
                                        A(1 : n, j) = Lv, v = DMT ej

         Решение нижней треугольной системы ( верхняя“ часть системы –
                                                ”
         строки с 1 по j) относительно v(1 : j)
                           L(1 : j, 1 : j) · v(1 : j) = A(1 : j, j) → v(1 : j) = . . .

        Кафедра ТМ (СГАУ)                   СЛАУ специального вида            17 марта 2012 г.   17 / 32
Симметричные матрицы


LDM T - разложение
Алгоритм [3]

     Определение dj = vj
     Определение mji = vi /di , i = 1, . . . j − 1
     Определение j-го столбца матрицы L (решение “нижней” части
     системы):
                        L(j + 1 : n, 1 : j) · v(1 : j) = A(j + 1 : n, j)
     L(j + 1 : n, j) · v (j) = A(j + 1 : n, j) − L(j + 1 : n, 1 : j − 1) · v(1 : j − 1)
for j=1:n
  Решить L(1:j,1:j) v(1:j) = A(1:j,j) для v(1:j)
  for i=1:j-1
    M(j,i)= v(i)/d(i)
  end
  d(j)=v(j)
  L(j+1:n,j)=(A(j+1:n,j)-L(j+1:n,1:j-1)v(1:j-1))/v(j)
end
    Кафедра ТМ (СГАУ)               СЛАУ специального вида         17 марта 2012 г.   18 / 32
Симметричные матрицы


LDM T - разложение




   LDMT разложение матрицы A, как и LU разложение, требует
   около 2n3 /3 арифметических операций с плавающей точкой
   (флопов).
   Разложение симметричной матрицы, можно выполнить в 2 раза
   меньшим количеством операций n3 /3.




  Кафедра ТМ (СГАУ)              СЛАУ специального вида   17 марта 2012 г.   19 / 32
Симметричные матрицы


LDLT - разложение

Theorem
Если A – симметричная невырожденная матрица, то в разложении
A = LDMT L = M.

Доказательство.
  1    Рассмотрим матрицу

                                   M−1 A(M−1 )T = M−1 LD

       Эта матрица является и симметричной (левая часть) и нижней
       треугольной (правая часть), следовательно она диагональна.
  2    Матрица D невырождена, поэтому M−1 L – диагональна
  3    В то же время M−1 L нижняя унитреугольная, следовательно M−1 L = E



      Кафедра ТМ (СГАУ)              СЛАУ специального вида   17 марта 2012 г.   20 / 32
Симметричные матрицы


LDLT - разложение
Алгоритм



                                                                                 
      1    0   0       .  0     d1 0 0                .    0    1 l21 l31       . ln1
   l21    1   0       .  0   0 d2 0                .    0 0     1 l32      . ln2 
                                                                                 
   l31 l32    1       .  0   0 0 d3                .    0 0     0 1        . 0
                                                                                 
   l41 l42 l43        .  0  0 0 0                  .    0 0     0 0        . 0
                                                                                 
  . . .                      . . .                        . . .                  
    ln1 ln2 ln3        . lnn     0 0 0                . dnn     0    0 0        . lnn
                                                    
                                           d1 lj,1
                                         ... 
                                      v=            
                                        dj−1 lj,j−1 
                                            dj
                   v (j) = A(j, j) − L(j, 1 : j − 1) · v(1 : j − 1)

   Кафедра ТМ (СГАУ)                  СЛАУ специального вида        17 марта 2012 г.    21 / 32
Симметричные матрицы


LDLT - разложение
Алгоритм [3]




for j=1:n
  for i=1:j-1
    v(i) = L(j,i)*d(i)
  end
  v(j)=A(j,j)-L(j,1:j-1)*v(1:j-1)
  d(j)=v(j)
  L(j+1:n,j)=(A(j+1:n,j)-L(j+1:n,1:j-1)*v(1:j-1))/v(j)
end




    Кафедра ТМ (СГАУ)              СЛАУ специального вида   17 марта 2012 г.   22 / 32
Симметричные матрицы


LDLT - разложение

Пример

                         A = LDLT
                                       
          10 20 30      1 0 0 10 0 0 1 2 3
         20 45 80  = 2 1 0  0 5 0 0 1 4
          30 80 171     3 4 1     0 0 1 0 0 1

Решение СЛАУ
                                             v

                                   L D LT x = b,
                                         u

                  Lu = b → Dv = u → LT x = v → x


  Кафедра ТМ (СГАУ)              СЛАУ специального вида   17 марта 2012 г.   23 / 32
Симметричные, положительно определенные системы


Положительно определенная матрица
Для вещественной положительно-определенной матрицы

                              ∀ x ∈ Rn , x = 0 : xT Ax > 0

Theorem
Если матрица A ∈ Rn×n является положительно определенной и
матрица X ∈ Rn×k имеет ранг k, то матрица B = XT AX ∈ Rk×k также
положительно определена [3].

Следствия:
  1 Если A – положительно определенная матрица, то все её главные

    подматрицы положительно определенные, все диагональные
    элементы положительны.
  2 Если A – положительно определенная матрица, то разложение

    A = LDMT существует и матрица D = diag (d1 , d2 , d3 , . . . dn )
    имеет положительные диагональные элементы.
    Кафедра ТМ (СГАУ)                СЛАУ специального вида   17 марта 2012 г.   24 / 32
Симметричные, положительно определенные системы


Положительно определенная матрица
Задачи механики




      Общий вид матричного уравнения движения механической
      системы
                       H(q)¨ + C(q, q) = Q(q, q)
                            q       ˙         ˙
      H(q) – обобщенная матрица масс
      Кинетическая энергия системы (для стационарных связей)

                                          1
                                  T = T2 = qT H(q)q ≥ 0
                                            ˙     ˙
                                          2
      H(q) – симметричная положительно определенная матрица



    Кафедра ТМ (СГАУ)                СЛАУ специального вида   17 марта 2012 г.   25 / 32
Симметричные, положительно определенные системы


Метод Холецкого
Для симметричной положительно определенной матрицы справедлива
теорема:
Theorem
Если матрица A ∈ Rn×n является симметричной положительно
определенной, то существует единственная нижняя треугольная
матрица G ∈ Rn×n с положительными диагональными элементами,
такая, что A = GGT .

Доказательство.
Т.к. A симметричная, то существует LDLT разложение. Т.к. элементы
dk положительны √ следствие), то матрица
              √    (2         √
G = L · diag ( d1 , d2 , . . . dn ) вещественная, нижняя треугольная с
положительными диагональными элементами и выполняется
соотношение A = GGT .

    Кафедра ТМ (СГАУ)                СЛАУ специального вида   17 марта 2012 г.   26 / 32
Симметричные, положительно определенные системы


Метод Холецкого
Алгоритм

Пусть известны первые j − 1 столбцов матрицы G. Приравнивая j-е
столбцы уравнения A = GGT :
                                             j
                               A(:, j) =          G (j, k)G(:, k)
                                           k=1

                       2
                                                               
                     g11         g11 g21           g11 g31
              A =  g11 g21      2      2
                                g21 + g22     g21 g31 + g22 g32 
                                               2      2
                    g11 g31 g21 g31 + g22 g32 g31 + g32 + g332

j столбец
                                                      
          a12            g11 g21               g11           0
         a22  =       2      2
                        g21 + g22      = g21 g21  + g22 g22 
          a32       g21 g31 + g22 g32          g31          g32

    Кафедра ТМ (СГАУ)                СЛАУ специального вида         17 марта 2012 г.   27 / 32
Симметричные, положительно определенные системы


Метод Холецкого
Алгоритм




                                           j
                             A(:, j) =         G (j, k)G(:, k) →
                                         k=1
                                                       j−1
                  G (j, j)G(:, j) = v = A(:, j) −             G (j, k)G(:, k)
                                                       k=1

  1    Вычисление вектора v по известным j − 1 столбцам матрицы G.
  2    Вычисление G(j : n, j) = v(j : n)/            v (j).




      Кафедра ТМ (СГАУ)              СЛАУ специального вида             17 марта 2012 г.   28 / 32
Симметричные, положительно определенные системы


Разложение Холецкого
Алгоритм [3]




for j=1:n
  v(j:n)=A(j:n,j)
  for k=1:j-1
    v(j:n)=v(j:n)-G(j,k)*G(j:n,k)
  end
  G(j:n,j)=v(j:n)/sqrt(v(j))
end




    Кафедра ТМ (СГАУ)                СЛАУ специального вида   17 марта 2012 г.   29 / 32
Симметричные, положительно определенные системы


Метод Холецкого
Решение СЛАУ




                                 Ax = b → G GT x = b
                                                     u

                             Gu = b → GT x = u → x =




    Кафедра ТМ (СГАУ)                СЛАУ специального вида   17 марта 2012 г.   30 / 32
Симметричные, положительно определенные системы


Задание 6




Напишите функцию
   x = SolveHol(A,b)
решения системы линейных уравнений с положительно-определенной
симетричной матрицей коэффициентов A.




    Кафедра ТМ (СГАУ)                СЛАУ специального вида   17 марта 2012 г.   31 / 32
Источники


Список использованных источников



   В. Ф. Волков.
   Численные методы.
   Издательство физико-математической литературы, 2001.
   В. Е. Распопов and М. М. Клунникова.
   Лекции по курсу «Численные методы».
   Сибирский федеральный университет, 2007.
   Дж. Голуб and Ч. Ван Лоун.
   Матричные вычисления.
   Мир, 1999.




  Кафедра ТМ (СГАУ)     СЛАУ специального вида   17 марта 2012 г.   32 / 32

More Related Content

What's hot

Многочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближенийМногочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближений
Theoretical mechanics department
 
20111023 circuit complexity_seminar_lecture04_mihajlin
20111023 circuit complexity_seminar_lecture04_mihajlin20111023 circuit complexity_seminar_lecture04_mihajlin
20111023 circuit complexity_seminar_lecture04_mihajlin
Computer Science Club
 
Мысль №5
Мысль №5Мысль №5
Мысль №5
rasparin
 

What's hot (20)

Линейные многошаговые методы
Линейные многошаговые методыЛинейные многошаговые методы
Линейные многошаговые методы
 
Лекция №7 "Машина опорных векторов"
Лекция №7 "Машина опорных векторов" Лекция №7 "Машина опорных векторов"
Лекция №7 "Машина опорных векторов"
 
Лекция №6 "Линейные модели для классификации и регрессии"
Лекция №6 "Линейные модели для классификации и регрессии" Лекция №6 "Линейные модели для классификации и регрессии"
Лекция №6 "Линейные модели для классификации и регрессии"
 
Лекция №9 "Алгоритмические композиции. Начало"
Лекция №9 "Алгоритмические композиции. Начало"Лекция №9 "Алгоритмические композиции. Начало"
Лекция №9 "Алгоритмические композиции. Начало"
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
 
Лекция №4 "Задача классификации"
Лекция №4 "Задача классификации"Лекция №4 "Задача классификации"
Лекция №4 "Задача классификации"
 
Метод конечных разностей
Метод конечных разностейМетод конечных разностей
Метод конечных разностей
 
Многочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближенийМногочлены наилучших среднеквадратичных приближений
Многочлены наилучших среднеквадратичных приближений
 
Лекция №12 "Ограниченная машина Больцмана"
Лекция №12 "Ограниченная машина Больцмана" Лекция №12 "Ограниченная машина Больцмана"
Лекция №12 "Ограниченная машина Больцмана"
 
Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства"
 
20111023 circuit complexity_seminar_lecture04_mihajlin
20111023 circuit complexity_seminar_lecture04_mihajlin20111023 circuit complexity_seminar_lecture04_mihajlin
20111023 circuit complexity_seminar_lecture04_mihajlin
 
Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение" Лекция №10 "Алгоритмические композиции. Завершение"
Лекция №10 "Алгоритмические композиции. Завершение"
 
Лекция №5 "Обработка текстов, Naive Bayes"
Лекция №5 "Обработка текстов, Naive Bayes" Лекция №5 "Обработка текстов, Naive Bayes"
Лекция №5 "Обработка текстов, Naive Bayes"
 
L6: Метод опорных векторов
L6: Метод опорных векторовL6: Метод опорных векторов
L6: Метод опорных векторов
 
Мысль №5
Мысль №5Мысль №5
Мысль №5
 
L5: Л5 Байесовские алгоритмы
L5: Л5 Байесовские алгоритмыL5: Л5 Байесовские алгоритмы
L5: Л5 Байесовские алгоритмы
 
Integral1
Integral1Integral1
Integral1
 
Pr i-1
Pr i-1Pr i-1
Pr i-1
 
Определенные интегралы
Определенные интегралыОпределенные интегралы
Определенные интегралы
 
L2: Задача классификации и регрессии. Метрики ошибок
L2: Задача классификации и регрессии. Метрики ошибокL2: Задача классификации и регрессии. Метрики ошибок
L2: Задача классификации и регрессии. Метрики ошибок
 

Viewers also liked

Curriculum Daniele Rina
Curriculum Daniele RinaCurriculum Daniele Rina
Curriculum Daniele Rina
DanieleRina
 
CandiaLetterOfReccomendation
CandiaLetterOfReccomendationCandiaLetterOfReccomendation
CandiaLetterOfReccomendation
Melissa Cabigao
 
Oktoberfest Flyer - Carol Kinlock 2015 - Small
Oktoberfest Flyer - Carol Kinlock 2015 - SmallOktoberfest Flyer - Carol Kinlock 2015 - Small
Oktoberfest Flyer - Carol Kinlock 2015 - Small
Steve Del Pilar
 

Viewers also liked (12)

Going In-Cogni-To - Mains
Going In-Cogni-To - MainsGoing In-Cogni-To - Mains
Going In-Cogni-To - Mains
 
Curriculum Daniele Rina
Curriculum Daniele RinaCurriculum Daniele Rina
Curriculum Daniele Rina
 
CandiaLetterOfReccomendation
CandiaLetterOfReccomendationCandiaLetterOfReccomendation
CandiaLetterOfReccomendation
 
Oktoberfest Flyer - Carol Kinlock 2015 - Small
Oktoberfest Flyer - Carol Kinlock 2015 - SmallOktoberfest Flyer - Carol Kinlock 2015 - Small
Oktoberfest Flyer - Carol Kinlock 2015 - Small
 
Paving roads
Paving roadsPaving roads
Paving roads
 
More efficiency thanks to Open Data?
More efficiency thanks to Open Data? More efficiency thanks to Open Data?
More efficiency thanks to Open Data?
 
Birthday Effect
Birthday EffectBirthday Effect
Birthday Effect
 
Procedural Content Generation
Procedural Content GenerationProcedural Content Generation
Procedural Content Generation
 
Whole Life vs IUL
Whole Life vs IULWhole Life vs IUL
Whole Life vs IUL
 
Game Balancing
Game BalancingGame Balancing
Game Balancing
 
Line
LineLine
Line
 
TPS 16 Kadia
TPS 16 KadiaTPS 16 Kadia
TPS 16 Kadia
 

Similar to Решение систем линейных уравнений: трехдиагональные, симметричные и положительно определённые системы

Численные методы решения СЛАУ. Метод Гаусса.
Численные методы решения СЛАУ. Метод Гаусса.Численные методы решения СЛАУ. Метод Гаусса.
Численные методы решения СЛАУ. Метод Гаусса.
Theoretical mechanics department
 
Определенные интеграллы
Определенные интеграллыОпределенные интеграллы
Определенные интеграллы
daryaartuh
 
Конкурс презентаций - Голичева
Конкурс презентаций - ГоличеваКонкурс презентаций - Голичева
Конкурс презентаций - Голичева
galkina
 
решение тригонометрических уравнений
решение тригонометрических уравненийрешение тригонометрических уравнений
решение тригонометрических уравнений
Людмила Щецова
 
Gdz 11 algebra_sapozhnikov_2001
Gdz 11 algebra_sapozhnikov_2001Gdz 11 algebra_sapozhnikov_2001
Gdz 11 algebra_sapozhnikov_2001
Lucky Alex
 
алгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задач
алгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задачалгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задач
алгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задач
You DZ
 
79 решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...
79  решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...79  решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...
79 решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...
rosgdz
 
Gdz 11 algebra_dorofeev_2008
Gdz 11 algebra_dorofeev_2008Gdz 11 algebra_dorofeev_2008
Gdz 11 algebra_dorofeev_2008
Lucky Alex
 
80 решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с
80  решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с80  решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с
80 решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с
rosgdz
 
алгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решения
алгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решенияалгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решения
алгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решения
You DZ
 
11кл дорофеев_решения
  11кл  дорофеев_решения  11кл  дорофеев_решения
11кл дорофеев_решения
Razon Ej
 

Similar to Решение систем линейных уравнений: трехдиагональные, симметричные и положительно определённые системы (20)

Численные методы решения СЛАУ. Метод Гаусса.
Численные методы решения СЛАУ. Метод Гаусса.Численные методы решения СЛАУ. Метод Гаусса.
Численные методы решения СЛАУ. Метод Гаусса.
 
Определенный интеграл
Определенный интегралОпределенный интеграл
Определенный интеграл
 
Определенные интеграллы
Определенные интеграллыОпределенные интеграллы
Определенные интеграллы
 
задание 17 (c3) неравенства Vopvet
задание 17 (c3)   неравенства Vopvetзадание 17 (c3)   неравенства Vopvet
задание 17 (c3) неравенства Vopvet
 
Конкурс презентаций - Голичева
Конкурс презентаций - ГоличеваКонкурс презентаций - Голичева
Конкурс презентаций - Голичева
 
Ustnoe reshenie kvadratnogo_uravneniya
Ustnoe reshenie kvadratnogo_uravneniyaUstnoe reshenie kvadratnogo_uravneniya
Ustnoe reshenie kvadratnogo_uravneniya
 
Trigonometricheskie uravneniya
Trigonometricheskie uravneniyaTrigonometricheskie uravneniya
Trigonometricheskie uravneniya
 
решение тригонометрических уравнений
решение тригонометрических уравненийрешение тригонометрических уравнений
решение тригонометрических уравнений
 
п.3.1.2 формулы для решения квадратных уравнений
п.3.1.2 формулы для решения квадратных уравненийп.3.1.2 формулы для решения квадратных уравнений
п.3.1.2 формулы для решения квадратных уравнений
 
Gdz 11 algebra_sapozhnikov_2001
Gdz 11 algebra_sapozhnikov_2001Gdz 11 algebra_sapozhnikov_2001
Gdz 11 algebra_sapozhnikov_2001
 
алгебра 11 кл ивлевконторольн
алгебра 11 кл ивлевконторольналгебра 11 кл ивлевконторольн
алгебра 11 кл ивлевконторольн
 
алгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задач
алгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задачалгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задач
алгебра и нач анализа 11кл дидактические матер ивлев и др_2001_решения задач
 
79 решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...
79  решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...79  решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...
79 решения задач к алгебра и нач анализа 11кл. дидактические мат. ивлев и др...
 
гдз – решение самостоятельных и контрольных работ по алгебре и началам анализ...
гдз – решение самостоятельных и контрольных работ по алгебре и началам анализ...гдз – решение самостоятельных и контрольных работ по алгебре и началам анализ...
гдз – решение самостоятельных и контрольных работ по алгебре и началам анализ...
 
ивлев алгебра 11 класс
ивлев алгебра 11 классивлев алгебра 11 класс
ивлев алгебра 11 класс
 
алгебра 11 кл ивлевконторольн
алгебра 11 кл ивлевконторольналгебра 11 кл ивлевконторольн
алгебра 11 кл ивлевконторольн
 
Gdz 11 algebra_dorofeev_2008
Gdz 11 algebra_dorofeev_2008Gdz 11 algebra_dorofeev_2008
Gdz 11 algebra_dorofeev_2008
 
80 решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с
80  решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с80  решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с
80 решение экзам. зад. по математике 11кл. к сб. зад. дорофеев, муравин -288с
 
алгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решения
алгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решенияалгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решения
алгебра и нач анализа реш экз зад 11кл из сборн заданий для экз дорофеев_решения
 
11кл дорофеев_решения
  11кл  дорофеев_решения  11кл  дорофеев_решения
11кл дорофеев_решения
 

More from Theoretical mechanics department

On problems of active space debris removal using tethered towing
On problems of active space debris removal using tethered towingOn problems of active space debris removal using tethered towing
On problems of active space debris removal using tethered towing
Theoretical mechanics department
 

More from Theoretical mechanics department (20)

Космический мусор
Космический мусорКосмический мусор
Космический мусор
 
Основы SciPy
Основы SciPyОсновы SciPy
Основы SciPy
 
Основы NumPy
Основы NumPyОсновы NumPy
Основы NumPy
 
Модификация механизма Йо-Йо
Модификация механизма Йо-ЙоМодификация механизма Йо-Йо
Модификация механизма Йо-Йо
 
Python. Объектно-ориентированное программирование
Python. Объектно-ориентированное программирование Python. Объектно-ориентированное программирование
Python. Объектно-ориентированное программирование
 
Python. Обработка ошибок
Python. Обработка ошибокPython. Обработка ошибок
Python. Обработка ошибок
 
Python: ввод и вывод
Python: ввод и выводPython: ввод и вывод
Python: ввод и вывод
 
Python: Модули и пакеты
Python: Модули и пакетыPython: Модули и пакеты
Python: Модули и пакеты
 
Основы Python. Функции
Основы Python. ФункцииОсновы Python. Функции
Основы Python. Функции
 
Основы языка Питон: типы данных, операторы
Основы языка Питон: типы данных, операторыОсновы языка Питон: типы данных, операторы
Основы языка Питон: типы данных, операторы
 
Машинная арифметика. Cтандарт IEEE-754
Машинная арифметика. Cтандарт IEEE-754Машинная арифметика. Cтандарт IEEE-754
Машинная арифметика. Cтандарт IEEE-754
 
Chaotic motions of tethered satellites with low thrust
Chaotic motions of tethered satellites with low thrust Chaotic motions of tethered satellites with low thrust
Chaotic motions of tethered satellites with low thrust
 
Docking with noncooperative spent orbital stage using probe-cone mechanism
Docking with noncooperative spent orbital stage using probe-cone mechanismDocking with noncooperative spent orbital stage using probe-cone mechanism
Docking with noncooperative spent orbital stage using probe-cone mechanism
 
Алгоритмы и языки программирования
Алгоритмы и языки программированияАлгоритмы и языки программирования
Алгоритмы и языки программирования
 
Deployers for nanosatellites
Deployers for nanosatellitesDeployers for nanosatellites
Deployers for nanosatellites
 
CubeSat separation dynamics
CubeSat separation dynamicsCubeSat separation dynamics
CubeSat separation dynamics
 
Chaotic Behavior of a Passive Satellite During Towing by a Tether
Chaotic Behavior of a Passive Satellite During Towing by a TetherChaotic Behavior of a Passive Satellite During Towing by a Tether
Chaotic Behavior of a Passive Satellite During Towing by a Tether
 
Транспортно-пусковой контейнер для наноспутников типоразмера 3U, 3U+
Транспортно-пусковой контейнер для наноспутников типоразмера 3U, 3U+Транспортно-пусковой контейнер для наноспутников типоразмера 3U, 3U+
Транспортно-пусковой контейнер для наноспутников типоразмера 3U, 3U+
 
On problems of active space debris removal using tethered towing
On problems of active space debris removal using tethered towingOn problems of active space debris removal using tethered towing
On problems of active space debris removal using tethered towing
 
Наноспутники формата кубсат
Наноспутники формата кубсатНаноспутники формата кубсат
Наноспутники формата кубсат
 

Решение систем линейных уравнений: трехдиагональные, симметричные и положительно определённые системы

  • 1. СЛАУ специального вида Методы численного решения СЛАУ Кафедра теоретической механики Самарский государственный аэрокосмический университет им. академика С. П. Королёва (национальный исследовательский университет) yudintsev@termech.ru 17 марта 2012 г.
  • 2. Содержание 1 Трехдиагональные системы. Метод Прогонки 2 Симметричные матрицы 3 Симметричные, положительно определенные системы 4 Источники Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 2 / 32
  • 3. Трехдиагональные системы. Метод Прогонки Ленточные матрицы Определение 1. Матрица A называется ленточной, если её элементы aij удовлетворяют условиям aij = 0 при l < i − j и j − i > m для некоторых неотрицательных чисел l , m. l + m + 1 – ширина ленточной матрицы Определение 2. Если m = 0, то матрица A – левая ленточная Если l = 0, то матрица A – правая ленточная Определение 3. Если l = m = 1,то матрица A называется трехдиагональной. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 3 / 32
  • 4. Трехдиагональные системы. Метод Прогонки Ленточные матрицы 1, 4 1, 5 1, 6 2, 1 2, 5 2, 6 3, 1 3, 2 3, 6 4, 2 4, 3 5, 3 5, 4 6, 4 6, 5 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 4 / 32
  • 5. Трехдиагональные системы. Метод Прогонки Трехдиагональные системы a11 a12 0 0 0 0 0 x1 b1      ... a21 a22 a23 0 0 0 ... 0   x2   b2        0 a32 a33 a34 0 0 ... 0   x3   b3        0 0 a43 a44 a45 0 ... 0   x4  =  b4       . . . . . . . . . . . . . . . ... ... ...  ...   ...        0 ... 0 0 0 an−1,n−2 an−1,n−1 an−1,n  xn−1  bn−1  0 ... 0 0 0 0 an,n−1 an,n xn bn Задачи, приводящие к необходимости решения СЛАУ с трехдиагональной матрицей Сплайн-интерполяция Задачи аэро-гидро динамики Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 5 / 32
  • 6. Трехдиагональные системы. Метод Прогонки Метод прогонки 1 −ξ0 0 0 0 0 0 x0      ... ν0  A1 −C1 B1 0 0 0 ... 0   x1   F1       0  A2 −C2 B2 0 0 ... 0   x2   F2      0  0 A3 −C3 B3 0 ... 0   x3  =  F3      . . . . . . ... ... ... ... ... ...  ...   ...       0 ... 0 0 0 An−1 −Cn−1 Bn−1  xn−1  Fn−1  0 ... 0 0 0 0 −ξn 1 xn νn Aj xj−1 − Cj xj + Bj xj+1 = Fj , j = 1, 2, . . . n − 1. (1) x0 = ξ0 x1 + ν0 (2) xn = ξn xn−1 + νn (3) Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 6 / 32
  • 7. Трехдиагональные системы. Метод Прогонки Метод прогонки Алгоритм [1] 1 Подставим x0 из (2) в (1) A1 (ξ0 x1 + ν0 ) − C1 x1 + B1 x2 = F1 (4) B1 A1 ν0 − F1 x1 = ξ1 x2 + ν1 , где ξ1 = , ν1 = (5) C1 − A1 ξ0 C1 − A1 ξ0 2 Подставим x1 из (5) в следующее уравнение (1), получим уравнение, связывающее x2 и x3 : x2 = ξ2 x3 + ν2 (6) или для k xk−1 = ξk−1 xk + νk−1 , k < n − 1 (7) Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 7 / 32
  • 8. Трехдиагональные системы. Метод Прогонки Метод прогонки Алгоритм [1] 1 Подставим x0 из (2) в (1) A1 (ξ0 x1 + ν0 ) − C1 x1 + B1 x2 = F1 (4) B1 A1 ν0 − F1 x1 = ξ1 x2 + ν1 , где ξ1 = , ν1 = (5) C1 − A1 ξ0 C1 − A1 ξ0 2 Подставим x1 из (5) в следующее уравнение (1), получим уравнение, связывающее x2 и x3 : x2 = ξ2 x3 + ν2 (6) или для k xk−1 = ξk−1 xk + νk−1 , k < n − 1 (7) Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 7 / 32
  • 9. Трехдиагональные системы. Метод Прогонки Алгоритм 3 Подставим xk−1 в k-ое уравнение системы (1) Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk (8) 4 Разрешаем уравнение (8) относительно xk xk = ξk xk+1 + νk (9) где Bk Ak νk−1 − Fk ξk = , νk = (10) Ck − Ak ξk−1 Ck − Ak ξk−1 5 Подставим (9) для k = n − 1 в (3) : xn = ξn (ξn−1 xn + νn−1 ) + νn (11) 6 xn → (9) → xn−1 → xn−2 . . . → x1 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 8 / 32
  • 10. Трехдиагональные системы. Метод Прогонки Алгоритм 3 Подставим xk−1 в k-ое уравнение системы (1) Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk (8) 4 Разрешаем уравнение (8) относительно xk xk = ξk xk+1 + νk (9) где Bk Ak νk−1 − Fk ξk = , νk = (10) Ck − Ak ξk−1 Ck − Ak ξk−1 5 Подставим (9) для k = n − 1 в (3) : xn = ξn (ξn−1 xn + νn−1 ) + νn (11) 6 xn → (9) → xn−1 → xn−2 . . . → x1 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 8 / 32
  • 11. Трехдиагональные системы. Метод Прогонки Алгоритм 3 Подставим xk−1 в k-ое уравнение системы (1) Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk (8) 4 Разрешаем уравнение (8) относительно xk xk = ξk xk+1 + νk (9) где Bk Ak νk−1 − Fk ξk = , νk = (10) Ck − Ak ξk−1 Ck − Ak ξk−1 5 Подставим (9) для k = n − 1 в (3) : xn = ξn (ξn−1 xn + νn−1 ) + νn (11) 6 xn → (9) → xn−1 → xn−2 . . . → x1 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 8 / 32
  • 12. Трехдиагональные системы. Метод Прогонки Алгоритм 3 Подставим xk−1 в k-ое уравнение системы (1) Ak (ξk−1 xk + νk−1 ) − Ck xk + Bk xk+1 = Fk (8) 4 Разрешаем уравнение (8) относительно xk xk = ξk xk+1 + νk (9) где Bk Ak νk−1 − Fk ξk = , νk = (10) Ck − Ak ξk−1 Ck − Ak ξk−1 5 Подставим (9) для k = n − 1 в (3) : xn = ξn (ξn−1 xn + νn−1 ) + νn (11) 6 xn → (9) → xn−1 → xn−2 . . . → x1 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 8 / 32
  • 13. Трехдиагональные системы. Метод Прогонки Алгоритм Прогоночные формулы Прямой ход прогонки Bk Ak νk−1 − Fk ξ0 , ν0 → ξk = , νk = , k = 1, . . . n − 1 Ck − Ak ξk−1 Ck − Ak ξk−1 νn + ξn νn−1 xn = 1 − ξn ξn−1 Обратный ход прогонки xk = ξk xk+1 + νk , k = n − 1, n − 2, . . . 0 Количество арифметических операций с плафающей точкой (флопов), необходимых для решения СЛАУ методом прогонки пропорционален размеру матрицы ∼ 2n Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 9 / 32
  • 14. Трехдиагональные системы. Метод Прогонки Алгоритм Прогоночные формулы Прямой ход прогонки Bk Ak νk−1 − Fk ξ0 , ν0 → ξk = , νk = , k = 1, . . . n − 1 Ck − Ak ξk−1 Ck − Ak ξk−1 νn + ξn νn−1 xn = 1 − ξn ξn−1 Обратный ход прогонки xk = ξk xk+1 + νk , k = n − 1, n − 2, . . . 0 Количество арифметических операций с плафающей точкой (флопов), необходимых для решения СЛАУ методом прогонки пропорционален размеру матрицы ∼ 2n Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 9 / 32
  • 15. Трехдиагональные системы. Метод Прогонки Трехдиагональные системы Условие существования решения Определение 4. Прогонка называется корректной, если знаменатели в прогоночных формулах не обращаются в нуль. Определение 5. Прогонка называется устойчивой, если |ξi | < 1 для всех i = 0, 1, . . . n Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 10 / 32
  • 16. Трехдиагональные системы. Метод Прогонки Трехдиагональные системы Условие существования решения Theorem Прогонка устойчива и корректна если [2] |Cj | ≥ |Aj | + |Bj | ≥ |Aj | ≥ 0, |ξ0 | < 1, |ξn | ≤ 1 Доказательство. Пусть для некоторого j, |ξj−1 | < 1. Рассмотрим выражение Cj − ξj−1 Aj . |Cj − ξj−1 Aj | ≥ |Cj | − |ξj−1 ||Aj | > |Cj | − |Aj | ≥ 0 Поэтому |Bj | |Cj | − |Aj | |ξj | = ≤ < 1, |Cj − ξj−1 Aj | = 0, |Cj − ξj−1 Aj | |Cj | − |ξj−1 ||Aj | |1 − ξn ξn−1 | ≥ 1 − |ξn ||ξn−1 | > 0 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 11 / 32
  • 17. Трехдиагональные системы. Метод Прогонки Задание 5.1 Решить задачу глобальной сплайн-интерполяции. На плоскости задана серия точек: (x0 , y0 ), . . . , (xn , yn ), xi = xj для i = j. Необходимо провести через эти точки кубический сплайн, плавно соединив заданные точки без разрывов значений функции, а также первой и второй производных. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 12 / 32
  • 18. Трехдиагональные системы. Метод Прогонки Задание 5.1 Условия непрерывности: S(xi ) = yi - условие интерполяции (сплайн проходит через заданные точки); S(xi − 0) = S(xi + 0) - непрерывность; S (xi − 0) = S (xi + 0) - непрерывность первой производной; S (xi − 0) = S (xi + 0) - непрерывность второй производной; Всего, для n интервалов 4n − 2 условий. Каждый кубический сплайн Sk (x) имеет 4 неизвестных коэффициента (4n для всех интервалов). Недостающие два условия можно определить задав значение первой или второй производной на концах заданного интервала интерполяции: в точках x0 , xn . Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 13 / 32
  • 19. Трехдиагональные системы. Метод Прогонки Задание 5.1 Указанные выше условия приводят к необходимости решения следующей СЛАУ с трехдиагональной матрицей относительно неизвестных qi , i = 1, n − 1: hi hi + hi+1 hi+1 yi+1 − yi yi − yi−1 qi−1 + qi + qi+1 = − , i = 1, n − 1, 6 3 6 hi+1 hi с дополнительными условиями на границах интервала интерполяции: q0 = qn = 0 После того неизвестные величины найдены, сплайн 3 степени для каждого интервала [xi−1 , xi ] записывается следующим образом: (xi − x)3 (x − xi−1 )3 yi−1 hi S(x) = qi−1 + qi + − qi−1 (xi − x)+ 6hi 6hi hi 6 yi hi + − qi (x − xi−1 ) hi 6 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 14 / 32
  • 20. Трехдиагональные системы. Метод Прогонки Задание 5.1 Необходимо реализовать следующий алгоритм работы программы: загрузить из файла таблицу с узлам интерполяции: пары (xi , yi ) в каждой строке, разделенные пробелами; сформировать трехдиагональную матрицу коэффициентов уравнения; решить систему линейных уравнений, построить сплайны; вывести в файл пары (xj , yj ) так, чтобы между узлами интерполяции было не менее 5 дополнительных точек. Построить график полученной кусочной функции и показать на графике точки исходной таблицы xi , yi . Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 15 / 32
  • 21. Симметричные матрицы LDM T - разложение A = LU = LDMT Theorem Если все ведущие главные подматрицы A невырожденны, тогда существуют единственные нижние унитреугольные матрицы L и M, и единственная диагональная матрица D, такие, что A = LDMT Доказательство. 1 LU разложение существует и оно единственно. 2 Пусть D = diag (d1 , d2 , . . . , dn ), di = uii = 0. Матрица D невырожденная. 3 A = LU = LD(D−1 U) 4 D−1 U = MT – верхняя унитреугольная матрица. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 16 / 32
  • 22. Симметричные матрицы LDM T - разложение Алгоритм Пусть известны j − 1 столбцов матрицы L, j − 1 элементов диагональной матрицы D и j − 1 строк матрицы M:      1 0 0 . 0 d1 0 0 . 0 1 m21 m31 . mn1  l21 1 0 . 0 0 d2 0 . 0 0 1 m32 . mn2        l31 l32 1 . 0 0 0 d3 . 0 0 0 1 . mn3        l41 l42 l43 . 0 0 0 0 . 0 0 0 0 . mn4       . . .  . . .  . . .  ln1 ln2 ln3 . lnn 0 0 0 . dnn 0 0 0 . mnn Приравняем j-е столбцы уравнения A = LDMT A(1 : n, j) = Lv, v = DMT ej Решение нижней треугольной системы ( верхняя“ часть системы – ” строки с 1 по j) относительно v(1 : j) L(1 : j, 1 : j) · v(1 : j) = A(1 : j, j) → v(1 : j) = . . . Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 17 / 32
  • 23. Симметричные матрицы LDM T - разложение Алгоритм Пусть известны j − 1 столбцов матрицы L, j − 1 элементов диагональной матрицы D и j − 1 строк матрицы M:     1 0 0 . 0 d1 d1 m21 d1 m31 . d1 mn1  l21 1 0 . 0 0 d2 d2 m32 . d2 mn2       l31 l32 1 . 0 0 0 d3 . d3 mn3       l41 l42 l43 . 0 0 0 0 . 0      . . .  . . .  ln1 ln2 ln3 . lnn 0 0 0 . dnn Приравняем j-е столбцы уравнения A = LDMT A(1 : n, j) = Lv, v = DMT ej Решение нижней треугольной системы ( верхняя“ часть системы – ” строки с 1 по j) относительно v(1 : j) L(1 : j, 1 : j) · v(1 : j) = A(1 : j, j) → v(1 : j) = . . . Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 17 / 32
  • 24. Симметричные матрицы LDM T - разложение Алгоритм [3] Определение dj = vj Определение mji = vi /di , i = 1, . . . j − 1 Определение j-го столбца матрицы L (решение “нижней” части системы): L(j + 1 : n, 1 : j) · v(1 : j) = A(j + 1 : n, j) L(j + 1 : n, j) · v (j) = A(j + 1 : n, j) − L(j + 1 : n, 1 : j − 1) · v(1 : j − 1) for j=1:n Решить L(1:j,1:j) v(1:j) = A(1:j,j) для v(1:j) for i=1:j-1 M(j,i)= v(i)/d(i) end d(j)=v(j) L(j+1:n,j)=(A(j+1:n,j)-L(j+1:n,1:j-1)v(1:j-1))/v(j) end Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 18 / 32
  • 25. Симметричные матрицы LDM T - разложение LDMT разложение матрицы A, как и LU разложение, требует около 2n3 /3 арифметических операций с плавающей точкой (флопов). Разложение симметричной матрицы, можно выполнить в 2 раза меньшим количеством операций n3 /3. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 19 / 32
  • 26. Симметричные матрицы LDLT - разложение Theorem Если A – симметричная невырожденная матрица, то в разложении A = LDMT L = M. Доказательство. 1 Рассмотрим матрицу M−1 A(M−1 )T = M−1 LD Эта матрица является и симметричной (левая часть) и нижней треугольной (правая часть), следовательно она диагональна. 2 Матрица D невырождена, поэтому M−1 L – диагональна 3 В то же время M−1 L нижняя унитреугольная, следовательно M−1 L = E Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 20 / 32
  • 27. Симметричные матрицы LDLT - разложение Алгоритм     1 0 0 . 0 d1 0 0 . 0 1 l21 l31 . ln1  l21 1 0 . 0   0 d2 0 . 0 0 1 l32 . ln2       l31 l32 1 . 0   0 0 d3 . 0 0 0 1 . 0      l41 l42 l43 . 0  0 0 0 . 0 0 0 0 . 0     . . .  . . .  . . .  ln1 ln2 ln3 . lnn 0 0 0 . dnn 0 0 0 . lnn   d1 lj,1  ...  v=  dj−1 lj,j−1  dj v (j) = A(j, j) − L(j, 1 : j − 1) · v(1 : j − 1) Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 21 / 32
  • 28. Симметричные матрицы LDLT - разложение Алгоритм [3] for j=1:n for i=1:j-1 v(i) = L(j,i)*d(i) end v(j)=A(j,j)-L(j,1:j-1)*v(1:j-1) d(j)=v(j) L(j+1:n,j)=(A(j+1:n,j)-L(j+1:n,1:j-1)*v(1:j-1))/v(j) end Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 22 / 32
  • 29. Симметричные матрицы LDLT - разложение Пример A = LDLT       10 20 30 1 0 0 10 0 0 1 2 3 20 45 80  = 2 1 0  0 5 0 0 1 4 30 80 171 3 4 1 0 0 1 0 0 1 Решение СЛАУ v L D LT x = b, u Lu = b → Dv = u → LT x = v → x Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 23 / 32
  • 30. Симметричные, положительно определенные системы Положительно определенная матрица Для вещественной положительно-определенной матрицы ∀ x ∈ Rn , x = 0 : xT Ax > 0 Theorem Если матрица A ∈ Rn×n является положительно определенной и матрица X ∈ Rn×k имеет ранг k, то матрица B = XT AX ∈ Rk×k также положительно определена [3]. Следствия: 1 Если A – положительно определенная матрица, то все её главные подматрицы положительно определенные, все диагональные элементы положительны. 2 Если A – положительно определенная матрица, то разложение A = LDMT существует и матрица D = diag (d1 , d2 , d3 , . . . dn ) имеет положительные диагональные элементы. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 24 / 32
  • 31. Симметричные, положительно определенные системы Положительно определенная матрица Задачи механики Общий вид матричного уравнения движения механической системы H(q)¨ + C(q, q) = Q(q, q) q ˙ ˙ H(q) – обобщенная матрица масс Кинетическая энергия системы (для стационарных связей) 1 T = T2 = qT H(q)q ≥ 0 ˙ ˙ 2 H(q) – симметричная положительно определенная матрица Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 25 / 32
  • 32. Симметричные, положительно определенные системы Метод Холецкого Для симметричной положительно определенной матрицы справедлива теорема: Theorem Если матрица A ∈ Rn×n является симметричной положительно определенной, то существует единственная нижняя треугольная матрица G ∈ Rn×n с положительными диагональными элементами, такая, что A = GGT . Доказательство. Т.к. A симметричная, то существует LDLT разложение. Т.к. элементы dk положительны √ следствие), то матрица √ (2 √ G = L · diag ( d1 , d2 , . . . dn ) вещественная, нижняя треугольная с положительными диагональными элементами и выполняется соотношение A = GGT . Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 26 / 32
  • 33. Симметричные, положительно определенные системы Метод Холецкого Алгоритм Пусть известны первые j − 1 столбцов матрицы G. Приравнивая j-е столбцы уравнения A = GGT : j A(:, j) = G (j, k)G(:, k) k=1 2   g11 g11 g21 g11 g31 A =  g11 g21 2 2 g21 + g22 g21 g31 + g22 g32  2 2 g11 g31 g21 g31 + g22 g32 g31 + g32 + g332 j столбец         a12 g11 g21 g11 0 a22  =  2 2 g21 + g22  = g21 g21  + g22 g22  a32 g21 g31 + g22 g32 g31 g32 Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 27 / 32
  • 34. Симметричные, положительно определенные системы Метод Холецкого Алгоритм j A(:, j) = G (j, k)G(:, k) → k=1 j−1 G (j, j)G(:, j) = v = A(:, j) − G (j, k)G(:, k) k=1 1 Вычисление вектора v по известным j − 1 столбцам матрицы G. 2 Вычисление G(j : n, j) = v(j : n)/ v (j). Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 28 / 32
  • 35. Симметричные, положительно определенные системы Разложение Холецкого Алгоритм [3] for j=1:n v(j:n)=A(j:n,j) for k=1:j-1 v(j:n)=v(j:n)-G(j,k)*G(j:n,k) end G(j:n,j)=v(j:n)/sqrt(v(j)) end Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 29 / 32
  • 36. Симметричные, положительно определенные системы Метод Холецкого Решение СЛАУ Ax = b → G GT x = b u Gu = b → GT x = u → x = Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 30 / 32
  • 37. Симметричные, положительно определенные системы Задание 6 Напишите функцию x = SolveHol(A,b) решения системы линейных уравнений с положительно-определенной симетричной матрицей коэффициентов A. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 31 / 32
  • 38. Источники Список использованных источников В. Ф. Волков. Численные методы. Издательство физико-математической литературы, 2001. В. Е. Распопов and М. М. Клунникова. Лекции по курсу «Численные методы». Сибирский федеральный университет, 2007. Дж. Голуб and Ч. Ван Лоун. Матричные вычисления. Мир, 1999. Кафедра ТМ (СГАУ) СЛАУ специального вида 17 марта 2012 г. 32 / 32