我真的很困惑什么是错误的。对于第一部分,如果答案始终为0.0,则公式的分离部分均为0。 这有什么不对?
import numpy as np
def concpt(E,E0,theta):
rad= theta*(np.pi/180)
M=np.cos(rad)
print(M)
thrcondtion= 0.5*E*E0*(1-M)
if thrcondtion>= 1:
x=(1-(1/(E*E0*(1-M))))**0.5
print(x)
RESULT= (3/16)*(1-(x**2))* (((3-(x**4))*(np.log((1+x)/(1-x))))-(2*x*(2-(x**2))))
print(RESULT)
return RESULT
else:
print("invalid")
答案 0 :(得分:1)
尝试:
>>> print(3/16)
在Python提示符下。
会打印
0
因为计算是使用整数完成的,因为3
和16
都是整数。你需要例如3.0 / 16
在那里获得0.1875
。