首页 > 解决方案 > 我如何在轴 M 上找到 cp 和 cp_p_g 的交点?

问题描述

import numpy as np
import matplotlib.pyplot as plt 

Cp_0=-0.464   
M=np.arange(0.3,1,0.1) #Mach number for range<0.3-1>
Cp=(2/(1.4*M**2))*(((1+0.2*M**2)/(1.2))**3.5-1) #Aerodynamic relation for isentropic flow
Cp_p_g=Cp_0/((1-M**2)**0.5) #prandtl-Glauert rule

plt.plot(M,Cp)
plt.plot(M,Cp_p_g)
plt.grid("major")
plt.title('NACA**-***') #Title varies on the NACA profiles that we work
plt.xlabel("M")
plt.ylabel("Cp")

cp 和 cp_p_g 曲线

为了更好地理解问题,我添加了两条曲线 cp 和 cp_p_g 的图

标签: pythonnumpymatplotlib

解决方案


您可以使用细化 x-meshgrid linspace,然后查找两条曲线的差异

M = np.linspace(0.3, 1, 200)

# Remaining code

idx = np.argmin(np.abs(Cp_p_g-Cp))

plt.axvline(M[idx], c='k', ls='--')
plt.axhline(Cp_p_g[idx], c='k', ls='--')

在此处输入图像描述


推荐阅读