next up previous contents
Next: Нелинейные решатели Up: Простые примеры PETSc Previous: Матрицы   Contents

Линейные решатели

После создания матриц и векторов, определяющих линейную систему Ax = b, пользователь может применить SLES для решения системы следующей последовательностью команд:

SLESCreate (MPI_Comm comm ,SLES *sles);

SLESSetOperators (SLES sles,Mat A,Mat PrecA,

    MatStructure flag);

SLESSetFromOptions (SLES sles);

SLESSolve (SLES sles,Vec b,Vec x,int *its);

SLESDestroy (SLES sles);

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



2004-06-22