Я пытаюсь создать программу, которая решает линейные системы, используя метод исключения Гаусса.Программа должна состоять из двух частей.Фаза форварда и фаза обратного замещения.
Сейчас я работаю над фазой форварда.Однако я не могу понять метод лечения диагональных элементов.
Я пытался реализовать if-statments, который должен выполнять операцию строки для элемента ниже элемента на диагонали.
function A = mygausselm(A)
[m,n] = size(A);
for k=1:n-1 %columns
for i=1:m-1 %rows
L = A(i+1,k)/A(k,k);
A(i+1,:)= A(i+1,:)- L*A(k,:);
end
end
end
Взять матрицу:
[ 1 2 3 ]
A= [ 4 3 2 ]
[ 7 5 4 ]
Ожидаемый результат должен быть после операций со строками
[ * * * ]
A= [ 0 * * ]
[ 0 0 * ]