首页 > 解决方案 > 函数中样条和多条线之间的交点

问题描述

在以前工作的一些答案中,我无法通过一些链接找到有关样条曲线与从 def 创建的多条线之间的交点的文档。我想抓住系统需求曲线和泵曲线相交的点。我尝试了几种方法;但是,numpy 数组是空列表。我有正确的 8 个列表,其中没有任何内容

有关于样条曲线和曲线之间的交叉点的文档,其中 x 值必须增加(在我的情况下是这样),但我无法阅读这些文档。

对于我的代码...这是我尝试过的

我创建了一条样条曲线,并想找到我创建的曲线的交点。我尝试在我的 for 循环中使用 np.intersect1d 并创建了我希望是 1 长的 8 数组;但是,它们是空数组...帮助将不胜感激

plt.figure()
xnew = np.linspace(Flow_Rate.min(),Flow_Rate.max(),300)
power_smooth = spline(Flow_Rate,Pump_Head,xnew)
plt.plot(xnew,power_smooth)
plt.show()
Changing_diameter = [0.06985, .0762, .08255, .0889, .09525, .1016, .10795, .1143]

def H_l(x):    
    reyn = ((density*(x*(1.6667*10**-5))/Area)*d_diameter)/(v_vis)
    return Length/d_diameter*(x/Area)**2/(2*g)*64./reyn

Head = H_l(Q_si)
Changing_head = []


for i in range(len(Changing_diameter)):
    d_diameter = Changing_diameter[i]
    Head = H_l(Q_si)
    Changing_head = []
    plt.xlim(-5,100)
    plt.ylim(-5,50)
    plt.plot(Q_imp,Head,label=d_diameter)
    np.array(Q_imp)
    np.array(Head)
    print(np.intersect1d(Q_imp, Head, assume_unique = False))

plt.legend()
plt.show()

我的预期结果将是一个只有一个项目长的列表,其中只有样条线和创建的曲线之间的交点

标签: pythonnumpymatplotlibspline

解决方案


推荐阅读