Рубрики
Без рубрики

Исключение Гаусса в Python: Иллюстрация и реализация

Исключение Гаусса в Python также известно как сокращение строк. Это алгоритм линейной алгебры, используемый для решения системы линейных уравнений.

Автор оригинала: Team Python Pool.

Исключение Гаусса в Python также известно как сокращение строк. Это алгоритм линейной алгебры, используемый для решения системы линейных уравнений.

Привет, кодеры!! В этой статье мы познакомимся с устранением гаусса в python. Сначала мы поймем, что это значит, изучим его алгоритм, а затем реализуем его на Python. Итак, начнем!

Что такое исключение Гаусса?

Исключение Гаусса также известно как сокращение строк. Это алгоритм линейной алгебры, используемый для решения системы линейных уравнений. В основном последовательность операций выполняется над матрицей коэффициентов. Задействованные операции таковы:

  • Замена двух рядов
  • Умножение строки на ненулевое число
  • Добавление кратного одной строки к другой строке

Эти операции выполняются до тех пор, пока нижний левый угол матрицы не будет заполнен нулями, насколько это возможно.

Иллюстрация исключения Гаусса на примере:

Рассмотрим следующую систему линейных уравнений:

  • 2x + y–………………….L1
  • -3x – y + 2z = -11…………..L2
  • -2x + y + 2z = -3…………..L3

Дополненная матрица приведенной выше системы уравнений будет иметь вид:

Иллюстрация исключения Гаусса на примере

Наша задача-сделать так, чтобы нижний левый угол матрицы был как можно больше заполнен нулями. Для этого мы выполним последовательность операций.

L2 + 3/2L1 -> L2

L3 + L1 -> L3

Когда мы выполняем приведенное выше уравнение на дополненной матрице, мы получаем:

расширенная матрица гауссовского исключения python

расширенная матрица гауссовского исключения python

L3 + -4L2 -> L3

L3 + -4L2 -> L3

Когда мы выполняем вышеописанную операцию, мы получаем в результате вышеописанную расширенную матрицу. Как вы можете видеть, матрица теперь имеет форму эшелона (треугольная форма).

L2 + 1/2 L3 -> L2

L1 – L3 -> L1

При выполнении описанной выше операции мы получаем следующую матрицу:

матрица гауссова исключения python

Мы все еще можем добавить больше нулей в эту матрицу, поэтому давайте продолжим.

Мы все еще можем добавить больше нулей в эту матрицу, поэтому давайте продолжим.

-L3 -> L3

Когда мы выполняем вышеуказанные операции, мы получаем следующую матрицу:

Когда мы выполняем вышеуказанные операции, мы получаем следующую матрицу:

L1 – L2 -> L1

1/2 L2 -> L1

В результате приведенной выше операции строки мы получаем следующий результат:

код исключения гаусса python

Поскольку мы не можем уменьшить матрицу дальше, мы остановим алгоритм. Решением вышеприведенных уравнений являются:

  • икс
  • y
  • z = -1

Реализация в Python:

import numpy as np
import sys
(input('Enter number of unknowns: ')).zeros((n,n+1)).zeros(n)
print('Enter Augmented Matrix Coefficients:')
for i in range(n):
    for j in range(n+1):
       (input( 'a['+str(i)+']['+Divide by zero detected!')
        
    for j in range(i+1, n):
       [j][i]/a[i][i]
        
        for k in range(n+1):
           [j][k] - ratio * a[i][k]
[n-1][n]/a[n-1][n-1]

for i in range(n-2,-1,-1):
   [i][n]
    
    for j in range(i+1,n):
       [i] - a[i][j]*x[j]
    
   [i]/a[i][i]

print('\nThe solution is: ')
for i in range(n):
    print('X%d = %0.2f' %(i,x[i]),)

Вывод и объяснение:

Реализация в Python

Итак, это будет вывод вышеприведенного кода. Дайте мне знать

  • Сначала мы импортировали необходимые библиотеки, которые будем использовать в нашей программе.
  • Затем мы спросили пользователя о количестве неизвестных переменных, которые мы храним в переменной “n”.
  • После этого мы создали массив numpy ‘a’ размером nx(n+1) и инициализировали его нулем. Мы будем хранить нашу дополненную матрицу в этом массиве.
  • Другой массив ” x ” размера n также создается и инициализируется нулем. Мы будем использовать этот массив для хранения вектора решения.
  • Другой массив ” x ” размера n также создается и инициализируется нулем. Мы будем использовать этот массив для хранения вектора решения.
  • После этого мы применили метод исключения Гаусса.
  • Если какой-либо из коэффициентов равен 0, то при делении возникает ошибка
  • После этого мы применяем href=”http://www.math.usm.edu/lambers/mat 610/sum 10/lecture 4.pdf”> метод обратной подстановки для получения желаемого результата. href=”http://www.math.usm.edu/lambers/mat 610/sum 10/lecture 4.pdf”> метод обратной подстановки для получения желаемого результата.

Должен Читать

  • Топ-10 алгоритмов для науки о данных
  • Таблица Matplotlib в Python С примерами
  • Сложение матриц в Python | Сложение двух матриц

Вывод:

На этом мы заканчиваем нашу статью. Надеюсь, вы узнали об устранении Гаусса и его реализации в Python.

Однако, если у вас есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.

Счастливого Пифонирования!