我在python中定义了这些函数:
def Density(rho0,r,Rc,Rd):
if r < Rc :
return rho0
elif r> Rc :
return rho0*np.exp(-(r-Rc)/Rd)
def Thickness_H(H0,r,Rh):
return H0*np.exp(r/Rh)
现在我想使用这两个函数使用这两个函数来编写最终的等式:
新功能看起来像这样(我不知道如何将第一和第二功能放入下面的功能中):
def Density_distribution(H0,Rh,r,z,rho0,Rc,Rd):
return firstfunction*np.exp(-z/secondfunction)
并绘制它:
r = np.linspace(0.,10., 100)
p =Density_distribution(H0,Rh,r,z,rho0,Rc,Rd)
plt.plot(r, p)
plt.show()
感谢您的帮助
答案 0 :(得分:1)
只需调用函数即可在任何语句中获取其返回值:
def Density_distribution(H0, Rh, r, z, rho0, Rc, Rd):
return Density(rho0, r, Rc, Rd) * np.exp(-z / Thickness_H(H0, r, Rh))
如果您在rho0
中收到Density_distribution
参数作为字符串,只需在调用float
函数之前将其转换为Density
:
def Density_distribution(H0, Rh, r, z, rho0, Rc, Rd):
return Density(float(rho0), r, Rc, Rd) * np.exp(-z / Thickness_H(H0, r, Rh))