In [1]:
from sympy import *
init_printing()
In [2]:
xn=symbols('\hat{x}',real=True)
yn=Function('\hat{y}',real=True)(xn)
dsolve(yn.diff()-(yn**2-xn**2)/2/xn/yn,yn)
Out[2]:
In [3]:
c1=symbols('c1',real=True)
eps=symbols('epsilon',real=True)
xn=Function('\hat{x}',real=True)(eps)
yn=sqrt(xn*(c1-xn))
yn
Out[3]:
In [4]:
dsolve(xn.diff()-2*xn*yn,xn)
Out[4]:
Calculamos a mano la primitiva y encontramos que es
$$\int\frac{1}{y\sqrt{y(c_1-y)}}dy=-\frac{2}{c_1}\sqrt{\frac{c_1-y}{y}}$$
In [5]:
c2=symbols('c2',real=True)
exp2=-2/c1*sqrt((c1-xn)/xn)
exp2
Out[5]:
Hay que despejar $$- \frac{2}{c_{1}} \sqrt{\frac{c_{1} - \hat{x}{\left (\epsilon \right )}}{\hat{x}{\left (\epsilon \right )}}}=c_2+2\epsilon$$
Notar que si asumimos $x>0$ entonces $c_1>0$ y $c_2+2\epsilon<0$. Pasa algo raro, sympy no sabe desdejar!!!!!! Lo resuelvo de manera media rara
In [6]:
(solve(exp2+2*eps+c2,xn)[0]).subs({eps:-eps,c2:-c2})
Out[6]:
In [7]:
xn=4*c1/(c1**2*(-c2 - 2*eps)**2 + 4)
xn
Out[7]:
Al $\hat{y}$ lo despejé yo, sympy no toma en consideración el problema del signo
In [8]:
yn=-2*c1**2*(c2 + 2*eps)/(c1**2*(c2 + 2*eps)**2 + 4)
yn
Out[8]:
In [9]:
(xn.diff(eps)-2*xn*yn).simplify()
Out[9]:
In [10]:
(yn.diff(eps)-(yn**2-xn**2)).simplify()
Out[10]:
In [11]:
x,y=symbols('x,y',positive=True)
C1,C2=solve([xn.subs(eps,0)-x,yn.subs(eps,0)-y],[c1,c2])[0]
C1,C2
Out[11]:
In [12]:
xn=xn.subs({c1:C1,c2:C2}).simplify()
yn=yn.subs({c1:C1,c2:C2}).simplify()
xn,yn
Out[12]:
In [14]:
eps1,eps2=symbols('epsilon_1,epsilon_2',real=True)
Sus={x:xn.subs(eps,eps1),y:yn.subs(eps,eps1)}
(xn.subs(eps,eps2).subs(Sus)-xn.subs(eps,eps1+eps2)).simplify()
Out[14]:
In [ ]: