RuntimeWarning: invalid value encountered in den arccos

Ich bin neu in Python benutzen, aber immer zusammen mit es Recht gut. Ich erhalte die Fehlermeldung siehe unten und nicht sicher, was das problem genau ist, wie ich glaube, dass die Werte korrekt sind und angegeben werden. Was denkst du, was das problem genau ist? Ich versuche graph von t = 0 bis t=PM, und die Formel, die Sie unten sehen, ist der Winkel arccos.

Nicht finden konnte, die Problembehandlung dieses arccos Fehler online. Ausführen Von 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))
  • arccos ist nur in dem definierten Bereich [-1,1]. Siehe "Domäne" in der numpy-docs. Sie füttern es eine Zahl > 1.
  • Ich kam hier her, weil manchmal die Eingabe arccos war nur wenig größer als 1 ist. (aufgrund der numerischen Genauigkeit). Ich löste es mit dem np.arccos(np.minimum(1, array))
  • Alternative zu @gota, welche Konten für negative Werte zu: np.arccos(np.around(array,4))
InformationsquelleAutor Ali R. | 2016-02-10
Schreibe einen Kommentar