Skip to main content

Librería para resolver sistemas de ecuaciones lineales y no lineales

Project description

Corto #1 -- Publicación de librería en PyPI

Descripción:

Proyecto: Crear una librería en Python y publicarla de manera que se pueda instalar en otros equipos a través del comando pip install.

Función: La librería es capaz de resolver sistemas de ecuaciones lineales y no lineales a través de los siguientes métodos:

  • Eliminación de Gauss
  • Gauss-Jordan
  • Cramer
  • Descomposición LU
  • Jacobi
  • Gauss-Seidel
  • Bisección

Requisitos

Python 3.x

No se requieren librerías externas

Instalación desde PyPI

pip install rg22069uno

Método de Gauss

Pasos para utilizar el método de Gauss:

  1. Importar la función desde el módulo
from rg22069uno import gauss
  1. Definir la ecuación a resolver
A = [
    [2, 1, -1],
    [-3, -1, 2],
    [-2, 1, 2]
]

b = [8, -11, -3]
  1. Llamar a la función gauss
resultado = gauss(A, b)
  1. Imprimir resultado
#Imprimir solo el resultado
print(resultado)

#Imprimir el resultado con nombre de variables
if isinstance(resultado, list):
    for i, val in enumerate(resultado):
        print(f"x{i + 1}: {val}")
else:
    print(resultado)

Método de Gauss-Jordan

Pasos para utilizar el método de Gauss-Jordan:

  1. Importar la función desde el módulo
from rg22069uno import gaussJordan
  1. Definir la ecuación a resolver
A = [
    [2, -1, 1],
    [1, 2, -1],
    [3, -1, 4]
]

b = [5, 3, 10]
  1. Llamar a la función gaussJordan
resultado = gaussJordan(A, b)
  1. Imprimir resultado
#Imprimir solo el resultado
print(resultado)

#Imprimir el resultado con nombre de variables
if isinstance(resultado, list):
    for i, val in enumerate(resultado):
        print(f"x{i + 1}: {val}")
else:
    print(resultado)

Método de Cramer

Pasos para utilizar el método de Cramer:

  1. Importar la función desde el módulo
from rg22069uno import cramer
  1. Definir la ecuación a resolver
A = [
    [1, 1, 1],
    [2, -1, 2],
    [3, 2, 3]
]

b = [6, 7, 12]
  1. Llamar a la función cramer
resultado = cramer(A, b)
  1. Imprimir resultado
#Imprimir solo el resultado
print(resultado)

#Imprimir el resultado con nombre de variables
if isinstance(resultado, list):
    for i, val in enumerate(resultado):
        print(f"x{i + 1}: {val}")
else:
    print(resultado)

Método de Descomposición LU

Pasos para utilizar el método de Descomposición LU:

  1. Importar la función desde el módulo
from rg22069uno import descomposicionLU
  1. Definir la ecuación a resolver
A = [
    [4, -2, 1],
    [1, 3, -2],
    [2, -1, 4]
]

b = [7, 5, 10]
  1. Llamar a la función descomposicionLU
resultado = descomposicionLU(A, b)
  1. Imprimir resultado
#Imprimir solo el resultado
print(resultado)

#Imprimir el resultado con nombre de variables
if isinstance(resultado, list):
    for i, val in enumerate(resultado):
        print(f"x{i + 1}: {val}")
else:
    print(resultado)

Método de Jacobi

Pasos para utilizar el método de Jacobi:

  1. Importar la función desde el módulo
from rg22069uno import jacobi
  1. Definir la ecuación a resolver
A = [
    [4, -2, 1],
    [2, 3, 2],
    [1, -1, 4]
]

b = [10, 12, 5]
  1. Llamar a la función jacobi
resultado = jacobi(A, b)
  1. Imprimir resultado
#Imprimir solo el resultado
print(resultado)

#Imprimir el resultado con nombre de variables
if isinstance(resultado, list):
    for i, val in enumerate(resultado):
        print(f"x{i + 1}: {val}")
else:
    print(resultado)

Método de Gauss-Seidel

Pasos para utilizar el método de Gauss-Seidel:

  1. Importar la función desde el módulo
from rg22069uno import gaussSeidel
  1. Definir la ecuación a resolver
A = [
    [3, -1, 1],
    [1, 2, 2],
    [2, -3, 4]
]

b = [10, 11, 5]
  1. Llamar a la función gaussSeidel
resultado = gaussSeidel(A, b)
  1. Imprimir resultado
#Imprimir solo el resultado
print(resultado)

#Imprimir el resultado con nombre de variables
if isinstance(resultado, list):
    for i, val in enumerate(resultado):
        print(f"x{i + 1}: {val}")
else:
    print(resultado)

Método de Bisección

Pasos para utilizar el método de Bisección:

  1. Importar la función desde el módulo
from rg22069uno import biseccion
  1. Definir la función a resolver
f = lambda x: x**3 - 4*x**2 + 5*x - 2
  1. Llamar a la función biseccion
raiz, iteraciones = biseccion(f, 1, 2, tol=1e-6, max_iter=1000, verbose=True)
  1. Imprimir resultado
print(f"Raíz aproximada: {raiz:.6f}, Iteraciones: {iteraciones}")

Licencia

Este proyecto está bajo la Licencia MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rg22059uno-0.1.0.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rg22059uno-0.1.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file rg22059uno-0.1.0.tar.gz.

File metadata

  • Download URL: rg22059uno-0.1.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for rg22059uno-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e25c4701d9a8300a00dc3851c6252346bf08cbc72029bbc562746e1a069ffcc0
MD5 77a82b09defa0801812f8a81e74853b3
BLAKE2b-256 0b320806bbf947c0f99afcc493b771b20b856cde437e667216c313a9038523b6

See more details on using hashes here.

File details

Details for the file rg22059uno-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: rg22059uno-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for rg22059uno-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e817be016d2ac3643d95b5ead92c63eb6c03e42ca4543685becef6c73ba8c07c
MD5 ef186e113556ef02b03ecf144a2e6a86
BLAKE2b-256 466016fe70221243a0162528abde2a892178ecc448a864e9a9a0cc768fedc02e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page