Cómo resolver ecuaciones lineales en Python sin Numpy – Resuelto

Introducción

En este artículo aprenderemos cómo resolver ecuaciones lineales en Python sin la necesidad de utilizar la librería NumPy. Aprenderemos a resolver ecuaciones de la forma Ax = b, donde A es una matriz de coeficientes, x es el vector de incógnitas y b es el vector de constantes.

Implementación en Python

Para resolver ecuaciones lineales en Python sin NumPy, podemos utilizar la librería estándar de Python junto con algunas funciones y métodos propios de Python.

Primero, definimos la matriz de coeficientes A y el vector de constantes b. Luego, utilizamos el método de eliminación de Gauss para resolver el sistema de ecuaciones.

def gauss_elimination(A, b):

n = len(A)

for i in range(n):

# Pivoteo parcial

max_row = i

for k in range(i+1, n):

if abs(A[k][i]) > abs(A[max_row][i]):

max_row = k

A[i], A[max_row] = A[max_row], A[i]

b[i], b[max_row] = b[max_row], b[i]

# Eliminación hacia adelante

for k in range(i+1, n):

factor = A[k][i] / A[i][i]

for j in range(i, n):

A[k][j] -= factor * A[i][j]

b[k] -= factor * b[i]

# Sustitución hacia atrás

x = [0] * n

for i in range(n-1, -1, -1):

x[i] = (b[i] - sum(A[i][j] * x[j] for j in range(i+1, n))) / A[i][i]

return x

# Ejemplo de uso

A = [[2, 1, -1], [-3, -1, 2], [-2, 1, 2]]

b = [8, -11, -3]

solution = gauss_elimination(A, b)

print(solution)

En el ejemplo anterior, definimos la matriz de coeficientes A y el vector de constantes b. Luego, llamamos a la función gauss_elimination para resolver el sistema de ecuaciones y obtener la solución.

Con este método, podemos resolver ecuaciones lineales en Python sin la necesidad de utilizar la librería NumPy. ¡Espero que este artículo haya sido útil!