In [1]:
from sympy import *
init_printing() #muestra símbolos más agradab
R=lambda n,d: Rational(n,d)
In [2]:
x,y,a,b,c,d,xi,eta=symbols('x,y,a,b,c,d,xi,eta',real=true)
In [4]:
#cargamos la función
f=x*y**4/3-R(2,3)*y/x+R(1,3)/x**3/y**2
f
Out[4]:
Hacemos el anzats para encontrar $\xi=ax+c$ y $\eta=bx+d$
In [5]:
xi=a*x+c
eta=b*y+d
xi, eta
Out[5]:
In [6]:
(eta.diff(x)+(eta.diff(y)-xi.diff(x))*f-xi*f.diff(x)-eta*f.diff(y)).factor()
Out[6]:
Luego, $c=d=0$, $b=-\frac23 a$, podemos tomar $a=1$
In [21]:
L=(eta.diff(x)+(eta.diff(y)-xi.diff(x))*f-xi*f.diff(x)-eta*f.diff(y)).factor()
#L.subs({c:0,d:0})
L=(2*a*x**3*y**4 + 2*a*x*y + 3*b*x**3*y**4 + 3*b*x*y + c*x**2*y**4 + 3*c*y + 4*d*x**3*y**3 + 2*d*x)
poly(L,x,y)
Out[21]:
Encontremos las coordenadas polares
In [6]:
y=Function('y')(x)
xi=x
eta=-R(2,3)*y
xi, eta
Out[6]:
In [7]:
dsolve(Eq(y.diff(x),eta/xi),y)
Out[7]:
In [8]:
y=symbols('y')
r=x**2*y**3
r
Out[8]:
In [9]:
s=integrate(xi**(-1),x)
s
Out[9]:
In [10]:
s=log(abs(x))
r, s
Out[10]:
Encontremos la ecuación $\frac{dr}{ds}=??$
In [11]:
y=Function('y')(x)
r=x**2*y**3
s=log(abs(x))
f=x*y**4/3-R(2,3)*y/x+R(1,3)/x**3/y**2
r,s,f
Out[11]:
In [12]:
(r.diff(x)/s.diff(x)).subs(y.diff(x),f).simplify()
Out[12]:
Resolvamos $\frac{dr}{ds}=1+r^2$
In [13]:
r=symbols('r')
s=symbols('s')
C=symbols('C')
solEcuacionPolares=Eq(integrate((1+r**2)**(-1),r),s+C)
solEcuacionPolares
Out[13]:
Expresemos la ecuación en coordenadas cartesianas
In [14]:
solEcuacionCart=solEcuacionPolares.subs(r,x**2*y**3).subs(s,log(abs(x)))
solEcuacionCart
Out[14]:
In [15]:
ec1=Eq(solEcuacionCart.lhs.diff(x),solEcuacionCart.rhs.diff(x))
ec1
Out[15]:
In [16]:
ec2=Eq(ec1.lhs,1/x)
ec2
Out[16]:
In [17]:
solve(ec2,y.diff(x))
Out[17]:
In [ ]: