Математика

Численные методы


          МЕТОДИ РОЗВ’ЯЗАННЯ СИСТЕМ ЛІНІЙНИХ АЛГЕБРАЇЧНИХ РІВНЯНЬ.


    Розглянемо чисельні методи розв’язання систем лінійних алгебраїчних
рівнянь
     Ax=f                                                      T
           (1)
де  A - матриця  m*m,  x = ( x1, x2 , ... ,xm ) - шуканий  вектор,
                                            Т
 f =(f1, f2, ... , fm) -заданий вектор.
    Припускаємо, що [pic]та визначник матриці  А  відмінний від  нуля,  так
що існує єдиний розв’язок  х.  З  курсу  алгебри  відомо,  що  систему   (1)
можна розв’язати за формулами Крамера*. Для великих m цей  спосіб  практично
нереалізований тому, що потребує порядку m! aрифметичних  дій.  Тому  широко
використовуються інші методи розв’язання, наприклад, метод   Гаусса**,  який
потребує  [pic] дій.
    Методи чисельного розв’язання системи  (1) поділяються на дві групи:
           -прямі методи;
           -ітераційні методи.
     У прямих (або точних) методах розв’язок  x системи (1) відшукується за
скінченну кількість арифметичних дій. Внаслідок похибок  заокруглення  прямі
методи насправді не приводять до точного розв’язку системи (1) і назвати  їх
точними можливо лише залишаючи осторонь похибки заокруглення.
    Ітераційні методи (їх також називають методами  послідовних  наближень)
полягають у тому, що розв’язок  x  системи (1)  відшукується як границя  при
[pic]  послідовних  наближень            [pic]де  n-  номер   ітерації.   Як
правило, за скінченну кількість ітерацій ця границя не досягається.
    ______________________

          *  Крамер Габрієль (1704-1752)- швейцарський математик.
     ** Гаус Карл Фридрих (1777-1855)- німецький математик, астроном,
фізик, геодезист, професор Гетінгенського університету.



                               МЕТОД  ГАУССА  .

    Запишемо систему (1) у розгорнутому вигляді:
               а11x1+a12x2+...+a1mxm=f1 ,

               a21x1+a22x2+...+a2mxm =f2   ,
                           (2)
               ......................................
               am1x1+am2x2+...+ammxm =fm .

    Метод Гаусса  розв’язання системи (2) полягає у послідовному вилученні
невідомих  x1, x2, ..., xm-1  з  цієї системи.
    Припустимо, що  a11[pic]0 . Поділив перше рівняння на  a11, одержимо
                      x1+c12x2       +...+c1m       xm        =y1         ,
                (3)

де : c1j=a1j /a11 ;  j=2,m ;   y1=f1/a11 .
    Розглянемо тепер рівняння системи (2), що залишилися


                 ai1x1+ai2x2+...+aimxm=fi   ;    i= 2,m  .
(4)



         Помножимо  (3)  на  ai1   та  віднімемо одержане рівняння з і-го
рівняння  системи (4), i=2,m.
    У результаті одержимо наступну систему рівнянь:

              x1+c12x2+...+c1jxj+...+c1mxm =y1 ,


                    (1)                      (1)           (1)
   (1)
                   a22x2+... +a2jxj+...+a2mxm=f2 ,
                   ............................................
             (5)
                              (1)                      (1)           (1)
            (1)
                   am2x2+...+amjxj+...+ammxm=fm .

Tут позначено:
             (1)                             (1)
           aij=aij-c1jai1;  fi=fi -y1ai1;  i,j=2,m .
 (6)

 Матриця системи  (5)  має вигляд:
                   [pic].
Матриці такої стуктури  заведено позначати так:
                              [pic]

де хрестиками позначені ненульові елементи.
    У системі  (5)  невідоме  х  міститься тільки в першому рівнянні,  тому
у подальшому достатньо мати справу із скороченою системою рівнянь:
                                                                        (1)
(1)                    (1)                 (1)
                           a22x2 +...+a2jxj +...+a2mxm =f2 ,

..............................................                 (7)
                                    (1)                                 (1)
(1)                 (1)
                           am2x2 +...+amjxj +...+ammxm =fm  .


Тим самим ми здійснили перший крок методу Гаусса . Коли [pic], то з  системи
 (7)  зовсім аналогічно можна  вилучити  невідоме x2 і  прийти  до  системи,
еквівалентній (2),що має матрицю такої структури:
                          [pic]
При цьому перше рівняння системи  (5)  залишається без зміни.
Вилучая таким же чином невідомі  х 3,  х4 ,... ,x m-1 , приходимо  остаточно
 до системи рівнянь виду:
                            x1 +c12x2 +...+c1,m-1xm-1+c1mxm =y1,
                                       x2   +...+c2,m-1xm-1+c2mxm   =y2   ,


................................
                                                        xm-1+cm-1,mxm=ym-1,
                                                                      xm=ym
 ,

що еквівалентна початковій системі  (2) .
    Матриця цієї системи
                         [pic]
містить  нулі  усюди  нижче  головної   діагоналі.   Матриці   такого   виду
називаються  верхніми  трикутними  матрицями.  Нижньою  трикутною   матрицею
називається така матриця, у якої дорівнюють нулю усі елементи, що  містяться
вище головної діагоналі.
    Побудова системи  (8)  складає прямий хід  методу Гаусса. Зворотнiй хід
полягає у відшуканні невідомих   х1, ... ,хm     з  системи   (8).  Тому  що
матриця системи має трикутний вигляд,  можна  послідовно,  починаючи  з  хm,
відшукати всі невідомі. Дійсно, xm=ym,
x m-1 =ym-1  -cm-1,m x m   i т. д.
Загальні форми зворотнього ходу мають вигляд:
                                       m

                 xi =yi - ( cijxj ;  i=m-1,1;   xm =ym .
          (10)

                                         j=i+1
    При реалізації на ЕОМ  прямого ходу методу  Гаусса  немає  необхідності
діяти із  змінними   x1  ,x2  ,...  ,xm.  Досить  вказати  алгоритм,за  яким
початкова матриця А перетворюється до трикутного  вигляду  (9),  та  вказати
відповідне перетворення правих частин системи.
    Одержимо ці загальні формули.
    Нехай вже здійснені перші  к-1 кроків, тобто  вже вилучені змінні
x1 , x2,..., xk-1 .
    Тоді маємо систему:
                 x1+c12 x2 +...+c1,k-1xk-1+ c1kxk+....+c1mxm =y1 ,
                           x2 +...+c2,k-1xk-1+ c2kxk+....+c2mxm =y2 ,

    ..............................................
                                            xk-1+ck-1,kxk+...+ck-1,mxm=yk-1
    ,              (11)

     (k-1)                  (k-1)       (k-1)
                                                     akkxk+...+akmxm =fk ,

                 ............................

     (k-1)                  (k-1)        (k-1)
                                                     amkxk+...+ammxm =fm .

Розглянемо  К-те рівняння цієї системи:



                            (k-1)                 (k-1)          (k-1)

                   akkxk+...+akmxm=fk    ,

та припустимо, що  [pic]  .  Поділивши  обидві  частини  цього  рівняння  на
[pic] , одержимо

                                  xk+ck,k+1xk+1+...+ckmxm=yk               ,
                 (12)

              (k-1)   (k-1)
(k-1)     (k-1)
де  ckj=akj / akk  ;  j=k+1,m ;    yk=fk   /  akk  .

    Далі  помножимо  рівняння  (12)  на   [pic]   та   віднімемо   одержане
співвідношення з  i-го рівняння системи (11).  У  результаті  остання  група
рівнянь системи (11) набуває наступного вигляду:

                   x k+ck,k+1xk+1 +...+ ckmxm=yk,

                                  (k)                                   (k)
                 (k)
                      ak+1,k+1xk+1+...+ ak+1,mxm=fk+1,
                      .......................................

                                   (k)
(k)                  (k)
                       am,k+1xk+1+... +  ammxm=fm ,

     (k)       (k-1)    (k-1)                                          (k)
  (k-1)  (k-1)
де: aij =aij  -   aikckj  ;   i,j=k+1,m ;   fi= fi  -  aikyk  ;    i=k+1,m
.
    Таким  чином,  у  прямому  ході  методу  Гаусса   коефіцієнти   рівнянь
перетворюються за наступним правилом

                    (0)
             akj =akj ;   k,j=1,m  ;

                             (k-1)    (k-1)
             ckj=akj  /akk ;    j=k+1,m ;    k=1,m  ;
 (13)

                   (k)       (k-1)    (k-1)
             aij =aij  - aikckj  ;    i,j=k+1,m ;   k=1,m  .
   (14)

Обчислення правих частин системи (8) здійснюється за формулами:

               (0)                (k-1)     (k-1)
              fk=fk  ;   yk = fk   / akk  ;    k=1,m   ;
        (15)

                   (k)     (k-1)    (k-1)

              fi = fi   - aikyk ;   k=1,m  .
           (16)

    Коефіціенти  cij  і праві частини  yi ;  i=1,m ;  j=i+1,m  зберігаються
у  пам’яті  ЕОМ  і  використовуються  при  здійсненні  зворотнього  ходу  за
формулами (10).
    Основним обмеженням методу є припущення, що усі елементи [pic] , на які
здійснюється  ділення,  відрізняються  від  нуля.  Число    [pic]називається
провідним елементом на К-му кроці вилучення. Навіть, якщо  деякий  провідний
елемент не  дорівнює  нулеві,  а  просто  є  близьким  до  нуля,  в  процесі
обчислень може мати місце  нагромадження  похибок.  Вихід  з  цієї  ситуації
полягає в тому, шо як провідний елемент вибирається не  [pic]     ,  а  інше
число ( тобто на  К-му кроці вилучається не xk, а інша змінна xj  ,   [pic])
. Така стратегія вибору провідних елементів здійснюється в методі  Гаусса  з
вибором головного елементу, який буде розглянуто пізніш.
       А  тепер  підрахуємо  число  арифметичних  дій,  що  необхідні   для
розв’язання системи за допомогою методу Гаусса. Оскільки виконання  операцій
множення і ділення на ЕОМ потребує  набагато   більше  часу,  ніж  виконання
додавання і віднімання, обмежимось підрахуванням  числа  множень  і  ділень.

    1.Обчислення коефіцієнтів [pic]  за формулами (13) потребує:
              [pic](m-k)=1+2+...+(m-1)=  [pic]   ділень .
    2.Обчислення усіх коефіцієнтів   [pic]  за формулами (14) потребує
                                   [pic]
множень (тут ми  використовуємо  легко  перевіряєму  за  індукцією  рівність
[pic]  ).
    Таким чином, обчислення ненульових елементів [pic] трикутної матриці  С
 потребує
                      [pic]
    операцій множення і ділення.
    3.Обчислення правих частин yk    за формулами  (15) потребує m
ділень,  а відшукання  [pic]  за формулами (16)
                       [pic]
множень. Разом, обчислення правих частин перетвореної системи (8) потребує
                        [pic]
дій множення і ділення.
    Усього для реалізації прямого ходу методу Гаусса необхідно виконати
                          [pic]
дій.
     4.Для реалізації зворотнього ходу  методу  Гаусса  за  формулами  (10)
необхідно
                           [pic]
множень.
    Всього, для реалізації методу Гаусса необхідно виконати
                           [pic]
дій множення і ділення, причому основний час  витрачається  на  прямий  хід.
Для великих  m  число дій множення і ділення  у  методі  Гаусса  близьке  до
[pic]   За витратами  часу  та  необхідній  машинній  пам’яті  метод  Гаусса
придатний для розв’язання систем рівнянь (2) загального вигляду з  кількістю
змінних  m порядку 100.




смотреть на рефераты похожие на "Численные методы"