Документ взят из кэша поисковой машины. Адрес оригинального документа : http://num-anal.srcc.msu.ru/par_prog/org/basegen.htm
Дата изменения: Mon Oct 28 17:00:18 2013
Дата индексирования: Thu Feb 27 20:58:29 2014
Кодировка: Windows-1251
Параллельные программы. Введение в раздел Комплекса для решения обобщенной симметричной проблемы собственных значений

Краткое описание содержания раздела Комплекса для решения
обобщенной симметричной проблемы собственных значений

Пусть A и B являются вещественными симметричными или эрмитовыми матрицами порядка  n, а матрица B является также положительно определенной.

Обобщенная симметричная проблема собственных значений (GSEP) состоит в нахождении собственных значений  l  и соответствующих собственных векторов  z,  не равных нулю, удовлетворяющих одному из видов уравнений.

(1)           A z   =   l B z ,

(2)         A B z  =  l z ,

(3)         B A z  =  l z .

При этом для всех видов уравнений (1), (2) или (3) искомые значения  l  всегда являются вещественными.

Вычисляемые матрицы Z, содержащие столбцы собственных векторов, удовлетворяют следующим уравнениям (условиям ?).

    ZT A Z   =   L   (или  ZH A Z  =  L  -  для эрмитовых матриц),
                             при решении уравнений вида (1) или (3),

  Z-1 A Z-T  =  I     (или  Z-1 A Z-H = I  -  для эрмитовых матриц),
                              при решении уравнения вида (2),

где  L - диагональная матрица с расположенными на диагонали
             собственными значениями.

Матрицы  Z  удовлетворяют также уравнениям

     ZT B Z  =  I   (или  ZH B Z  =  I  -  для эрмитовых матриц),
                          при решении уравнений вида (1) или (2),
  ZT B-1 Z  =  I  (или  ZH B-1 Z  =  I  -  для эрмитовых матриц),
                          при решении уравнения вида (3).

Подробнее, вычисление состоит из следующих этапов.

1. Каждый из указанных видов обобщенной проблемы собственных значений (1), (2) или (3) может быть приведен к стандартной (линейной) симметричной проблеме собственных значений, посредством использования разложения Холецкого для матрицы B:

     B = L LT   или   B = UT U  -  для вещественного симметричного случая,
     B = L LH   или   B = UH U  -  для случая эрмитовых матриц.

Тогда при   B = L LT   мы получаем

  A z  =  l B z     = >     (L-1 A L-T) (LT z)  =  l  (LT z)  .

При этом собственные значения уравнения  A z = l B z  являются также собственными значениями уравнения  C y = l y,  где  симметричная матрица  C = L-1 A L-T ,  а   y = LT z .

В случае эрмитовых матриц  C = L-1 A L-H ,  а  y = LH z .

2. Выполняется решение полученной стандартной (линейной) проблемы собственных значений, с использованием целевых подпрограмм имеющихся в разделе Комплекса для решения линейной симметричной проблемы собственных значений (см.).

3. Восстановление собственных векторов для обобщенной проблемы собственных значений z из полученных собственных векторов для линейной проблемы собственных значений y может быть выполнено просто использованием соответствующих подпрограмм из пакета BLAS уровня 2 или 3.

В таблице ниже показано, как каждая из трех видов проблем собственных значений может быть сведена к стандартной форме  C y = l y,  и как собственные векторы  z  исходной проблемы могут быть получены из собственных векторов  y  стандартной (линейной) проблемы.

В таблице представлены только вещественные случаи, для комплексных случаев транспонированные матрицы должны быть заменены на комплексно - сопряженные транспонированные.

  ----------------------------------------------------------------------------------------------------
                                                                                                      Восстановление
          Вид                                                                                            исходных
      проблемы            Разложение               Сведение                   собственных
                                                                                                             векторов
  -----------------------------------------------------------------------------------------------------
      Az = l Bz               B = LLT                  C = L-1 AL-T                    z = L-T y
                                    B = UT U                 C = U-T AU-1                   z = U-1 y
  -----------------------------------------------------------------------------------------------------
      ABz = l z               B = LLT                 C = LT AL                         z = L-T y
                                    B = UT U                C = UA UT                        z = U-1 y
  -----------------------------------------------------------------------------------------------------
      BAz = l z              B = LLT                  C = LT AL                         z = L y
                                   B = UT U                 C = UA UT                        z = UT y
  -----------------------------------------------------------------------------------------------------

Разложение Холецкого матрицы B выполняется с помощью базовой подпрограммы PDPOTRF.

Используя это разложение, приведение обобщенной проблемы собственных значений к стандартной линейной форме выполняется с помощью базовых подпрограмм PDSYNGST (PDHEGST).

Далее используется, необходимая для конкретного случая, одна из целевых подпрограмм Комплекса для решения линейной проблемы собственных значений ( PDSYEV1, PZHEGV1, PDSYEV2, PZHEGV2, PDSYEV3, PZHEGV3, PDSYEV4, PZHEGV4, PDSYEV5, PZHEGV5, PDSYEV6, PZHEGV6 ) см..

При необходимости вычисления собственных векторов, восстановление собственных векторов для обобщенной проблемы собственных значений по собственным векторам линейной проблемы собственных значений производится с помощью базовых подпрограмм PDTRSM ( для уравнений вида (1) или (2) ) или PDTRMM ( для уравнений вида (3) ).

Общие правила работы с параллельными процессами и распределения матриц по этим процессам аналогичны тому, как это описано для задач решения систем линейных алгебраических уравнений (см.)