FORCE0(A, i, j, n) – процедура, возвращающая копию матрицы A, в которой (i,j)-й элемент за один щаг превращается в 0 путем вычитания ведущей (n-й) строки, умноженной на соответствующий масштабирующий коэффициент, равный отношению элементов j-го столбца строк i и n. Ее определение имеет вид:
A
¦ ¦ i,j ¦ ¦
VECTOR¦IF¦m_ = i, A - ·A , A ¦, m_, DIMENSION(A)¦
¦ ¦ i A n m_¦ ¦
n,j
Например, обнуление -того элемента матрицы A, определенную выше, в строке i=2 и столбце j=1 по ведущей строке n=1 , будет выполнено, если вызвать на исполнение эту процедуру следующей строкой:
FORCE0 (A, 2, 1, 1)
a11 a12 a13
¦ ¦
¦ a12·a21 a13·a21 ¦
¦ 0 a22 - a23 - ¦
¦ a11 a11 ¦
¦ ¦
a31 a32 a33
Применив эту процедуру для i=3, можно обнулить элемент в первом столбце третьей строки. Сцепление первой и преобразованных второй и третьей строк в единую матрицу можно представить следующим оператором:
APPEND(A ,VECTOR(FORCE0(A,i,1,1) ,i,2,DIMENSION(A)))
1 i
Здесь первый фактический параметр представляет неизмененная первая строка матрицы A , а второй – матрицу с двумя векторными компонентами: преобразованными второй и третьей строкой. Исполнение этого оператора дает матрицу
a11 a12 a13
¦ a12·a21 a13·a21 ¦
¦ 0 a22 - a23 - ¦
¦ a11 a11 ¦
¦ a12·a31 a13·a31 ¦
¦ 0 a32 - a33 - ¦
a11 a11
Для получения верхнетреугольной матрицы методом исключения Гаусса в полученной матрице необходимо к нулю свести элемент второго столбца (j=2) в третьей строке(i=3) , принимая в качестве ведущей строки вторую строку (n=2). В качестве первого фактического параметра (матрицы) в процедуре FORCE0() можно подставить либо конкретное значение матрицы, либо ее имя, которому это значение присвоено ранее, либо весь оператор, исполнение которого возвращает значение нужного значения матрицы, как показано в следующей строке :
FORCE0(APPEND(A , VECTOR(FORCE0(A, i, 1, 1) , i, 2,~
1 i ~DIMENSION(A))), 3, 2, 2)
Значок волнистой тильды ~ при выводе текста алгебраического окна на принтер означает переход каждой строки текста оператора или операнда на другую строку. Выполнив записанную выше процедуру для матрицы A с символьными компонентами, получим результат Гауссова исключения в символьном представлении следующего вида:
a11 a12 a13
¦ ¦
¦ a12·a21 a13·a21 ¦
¦ 0 a22 - a23 - ¦
¦ a11 a11 ¦
¦ ¦
¦ (a12·a23 - a13·a22)·(a22·a31 - a21·a32) a23·a32 ¦
¦ 0 0 - + a33 ¦
a22·(a11·a22 - a12·a21) a22
Числовой пример выполнения прямого хода метода исключения Гаусса покажем на линейной системе 3-х уравнений с тремя неизвестными:
x + 4·y + 5·z = 6
¦ 2·x + y + 2·z = 3 ¦
3·x + 7·y + 8·z = 9
В векторной форме эта система представляется так:
1 4 5 x 6
¦ 2 1 2 ¦ ¦ y ¦ = ¦ 3 ¦
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.