Resolver ecuaciones simultáneas con sympy
Este documento es un tutorial sobre cómo utilizar el módulo Sympy para resolver ecuaciones simultáneas. Dado que Sympy hace esto tan bien, no hay necesidad de implementarlo dentro de confiabilidad , pero los usuarios pueden encontrar útil este tutorial ya que los problemas que involucran la física de fallas a menudo requerirán la solución de ecuaciones simultáneas. Sympy no se instala de forma predeterminada cuando instala confiabilidad , por lo que los usuarios que sigan este tutorial deberán asegurarse de que Sympy esté instalado en su máquina. Los siguientes tres ejemplos deberían ser suficientes para ilustrar cómo utilizar Sympy para resolver ecuaciones simultáneas. Hay más ejemplos disponibles en la documentación de Sympy .
Ecuación 1: x+y= 5
Ecuación 2: x**2 + y**2 =17
Si fuesemos a resolver el sistema de ecuaciones por medtodos tradicionales en papel podriamos utilizar por ejemplo el metodo de sustitucion
en 1: x =5-y; luego sustituyendo en 2 tenemos:
(5-y)**2 + y**2 =17
25 -10y + y**2 +y**2 =17
2y**2 -10y +25 -17 = 0
2y**2 - 10y + 8 = 0
y**2 -5y +4 = 0
y = +/- ((25- 4*4 )**1/2)/2
y = 3/2
Ahora haciendo uso de Sympy:
>>import sympy as sym >>x,y = sym.symbols('x,y') >>eq1 = sym.Eq(x+y,5) >>eq2 = sym.Eq(x**2+y**2,17) >>result = sym.solve([eq1,eq2],(x,y)) >>print(result) ''' [(1, 4), (4, 1)] #these are the solutions for x,y. There are 2 solutions because the equations represent a line passing through a circle. '''
No hay comentarios:
Publicar un comentario