我刚开始使用Python,但相处得还不错。我不断得到错误,你看到下面,不确定是什么问题,正如我认为的价值观是正确的和声明。你认为问题到底是什么?我试图从t=0到t=PM作图,下面的公式是角arccos。
联机找不到此arccos错误的疑难解答。运行Python3.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))
np.arccos()
函数只能接受介于-1
和1
之间的值(包括)。见:https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.arccos.html
如果你简化成
(这是数组中传递给arccos的第一个元素),您将得到相同的警告
为什么?
arccos()
试图解决其中的cos(x) = 90
。但是,这样的值没有意义,因为它是outside of the possible domain for arccos[-1,1]
还要注意,至少在最新版本的numpy中,这个计算返回
nan
相关问题 更多 >
编程相关推荐