[1]:
from Orr_Sommerfeld import OS
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
matplotlib.rcParams['text.usetex'] = True
%matplotlib inline
Boundary Layer Flow
\begin{align*} f^{(3)}(\eta)+\frac{f^{(2)}(\eta)f(\eta)}{2}=0 \end{align*}
Parametros de entrada
[2]:
fc=1.7207876573 # factor de conversion
N=200
_,y=OS.cheb(N)
y=y[1:-1]
Np=2 # Boundary Layer
[3]:
lamBL1,u,v,w=OS.Orr_Sommerfeld_Temporal(N,800/fc,0.25/fc,0.2/fc,0,Np)
[4]:
lamBL2,_,_,_=OS.Orr_Sommerfeld_Temporal(N,800/fc,0.125/fc,0.3/fc,0,Np)
[5]:
# validacion libro Shmid
# alpha=0.125 beta=0.3
espectro4R=np.array([0.42986402,0.67108511,0.43734404,0.86076659])
espectro4I=np.array([-0.01526073,-0.31529294,-0.36626806,-0.46712319])
#alpha=0.25 beta=0.2
espectro3R=np.array([0.39065421,0.54772364,0.33866341,0.79181869,0.65749147])
espectro3I=np.array([+0.00287572,-0.23434181,-0.31005379,-0.37872068,-0.40505900])
Validación espectro
[6]:
x_ = [ele.real for ele in lamBL1]
y_ = [ele.imag for ele in lamBL1]
plt.scatter(x_, y_,)
plt.scatter(espectro3R,espectro3I,label="Schmid",s=25,marker="^")
plt.ylabel('Img($\lambda$)')
plt.xlabel('Re($\lambda$)')
plt.title(r'$Re_{\delta^*}=800$ ; $\alpha_{\delta^*}=0.25$ ; $\beta_{\delta^*}=0.2$')
plt.ylim(-1,0.1)
plt.xlim(0.2,1)
plt.grid()
plt.legend()
plt.show()
x_ = [ele.real for ele in lamBL2]
y_ = [ele.imag for ele in lamBL2]
nn=1
plt.scatter(x_, y_,)
plt.scatter(espectro4R,espectro4I,label="Schmid",s=25,marker="^")
plt.ylabel('Img($\lambda$)')
plt.xlabel('Re($\lambda$)')
plt.title(r'$Re_{\delta^*}=800$ ; $\alpha_{\delta^*}=0.125$ ; $\beta_{\delta^*}=0.3$')
plt.ylim(-1,0.1)
plt.xlim(0.2,1)
plt.grid()
plt.legend()
plt.show()
Autofunciones
[7]:
plt.plot(u.real,OS.mapping(y,Np),label= "$u_r(y)$")
plt.plot(u.imag,OS.mapping(y,Np),label= "$u_i(y)$")
plt.xlabel('$v$')
plt.ylabel('$y$')
plt.title('Perfil de la perturbación $u_{2D}(y)$')
plt.grid()
plt.legend()
plt.show()
plt.plot(v.real,OS.mapping(y,Np),label= "$v_r(y)$")
plt.plot(v.imag,OS.mapping(y,Np),label= "$v_i(y)$")
plt.xlabel('$v$')
plt.ylabel('$y$')
plt.title('Perfil de la perturbación $v_{2D}(y)$')
plt.grid()
plt.legend()
plt.show()
[ ]: