我是使用Python的新手,但相处得很好。我一直收到你在下面看到的错误,并且不确定问题究竟是什么,因为我认为价值是正确的和陈述的。您认为问题到底是什么?我试图从t = 0到t = PM绘制图形,下面看到的公式是角度arccos。
无法在线查找此arccos错误的故障排除方法。运行Python 3.5。
import numpy as np
import matplotlib
from matplotlib import pyplot
from __future__ import division
rE = 1.50*(10**11)
rM = 3.84*(10**8)
PE = 3.16*(10**7)
PM = 2.36*(10**6)
t = np.linspace(0, PM, 200)
# anaconda/lib/python3.5/site-packages/ipykernel/__main__.py:1: RuntimeWarning: invalid value encountered in arccos
y = 0.5*(np.arccos(2*(np.pi)*t*((1/PM)-(1/PE))+90))
答案 0 :(得分:7)
好吧,如果你这样做
np.arccos(90)
(这是你的第一个元素),你会得到同样的警告 - 大大简化你的例子。
为什么? arccos function是 x , cos(x)= 90 。从基本的三位一体,你可以看出no such value。
答案 1 :(得分:3)
np.arccos()
功能只能在-1
和1
之间取值。
请参阅:https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.arccos.html