Librería para resolver sistemas lineales y no lineales
Project description
PF23019UNO-Libreria de Métodos Numéricos
Esta librería implementa métodos numéricos para resolver sistemas de ecuaciones lineales y no lineales.
Instalación
pip install PF23019UNO
## Métodos Implementados
### Sistemas Lineales
- Eliminación de Gauss
- Gauss-Jordan
- Regla de Crammer
- Descomposición LU
- Método de Jacobi
- Método de Gauss-Seidel
### Sistemas No Lineales
- Método de Bisección
## Ejemplo de Uso
# Resolver un sistema de ecuaciones lineales
import numpy as np
from PF23019UNO import eliminacion_gauss # o el método que desees usar
if __name__ == "__main__":
print("Problema de ejemplo:")
A = [
[3, 1, -1],
[2, 4, 1],
[-1, 2, 5]
]
b = [4, 1, 1]
A = np.array(A, dtype=float)
b = np.array(b, dtype=float)
print(f"Matriz A:\n{A}\n")
print(f"Vector b:\n{b}\n")
solucion = eliminacion_gauss(A, b)
print(f"\nSolución final (Gauss): {solucion}\n")
##Encontrar la raíz de una función no lineal con bisección
from PF23019UNO import biseccion
if __name__ == "__main__":
f = lambda x: x**2 - 4 # Raíz en x = 2 y x = -2
a = 0
b = 5
try:
raiz = biseccion(f, a, b)
print(f"La raíz aproximada es: {raiz:.8f}")
except ValueError as e:
print(f"Error: {e}")
### Documentación de Funciones
eliminacion_gauss(A, b)
Resuelve un sistema 𝐴𝑥=𝑏
Ax=b usando eliminación hacia adelante y sustitución hacia atrás.
gauss_jordan(A, b)
Convierte la matriz aumentada en forma reducida para obtener directamente la solución.
crammer(A, b)
Aplica la regla de Cramer utilizando determinantes para resolver el sistema.
descomposicion_LU(A, b)
Utiliza descomposición LU (requiere implementación con SciPy o personalizada).
jacobi(A, b, x0=None, tol=1e-10, max_iter=1000)
Método iterativo para encontrar una solución aproximada.
gauss_seidel(A, b, x0=None, tol=1e-10, max_iter=1000)
Versión optimizada del método de Jacobi que usa los valores actualizados en cada paso.
biseccion(f, a, b, tol=1e-10, max_iter=1000)
Encuentra una raíz de la función f en el intervalo [a,b] usando el método de bisección.
## Autor
Josue David Parada Flores-PF23019 - Métodos Numéricos
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pf23019uno-1.1.tar.gz
(4.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pf23019uno-1.1.tar.gz.
File metadata
- Download URL: pf23019uno-1.1.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
985cf583693e0c2973df1e603756ea4b65c9b8332c5817620a94e9825ab218db
|
|
| MD5 |
e726ff21447241d49a121777edf24863
|
|
| BLAKE2b-256 |
5b301d8500127d5514da23ead7f23091f406562295b13046439e3cdb80d12e49
|
File details
Details for the file pf23019uno-1.1-py3-none-any.whl.
File metadata
- Download URL: pf23019uno-1.1-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0420b934b7633a076807ae399031da27969d077846b41e9a38da0e52573124e9
|
|
| MD5 |
5d281633653d479b72601745de7479c6
|
|
| BLAKE2b-256 |
c79b2cd9c4666089f6bf6a973cd3d58bff1f3d981530b8581168b6d8ef795a44
|