arccos(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj])
The inverse of cos
so that, if y = cos(x)
, then x = arccos(y)
.
arccos
is a multivalued function: for each x
there are infinitely many numbers :None:None:`z`
such that cos(z) = x
. The convention is to return the angle :None:None:`z`
whose real part lies in :None:None:`[0, pi]`
.
For real-valued input data types, arccos
always returns real output. For each value that cannot be expressed as a real number or infinity, it yields nan
and sets the :None:None:`invalid`
floating point error flag.
For complex-valued input, arccos
is a complex analytic function that has branch cuts [-inf, -1]
and :None:None:`[1, inf]`
and is continuous from above on the former and from below on the latter.
The inverse cos
is also known as :None:None:`acos`
or cos^-1.
x
-coordinate on the unit circle. For real arguments, the domain is [-1, 1].
A location into which the result is stored. If provided, it must have a shape that the inputs broadcast to. If not provided or None, a freshly-allocated array is returned. A tuple (possible only as a keyword argument) must have length equal to the number of outputs.
This condition is broadcast over the input. At locations where the condition is True, the :None:None:`out`
array will be set to the ufunc result. Elsewhere, the :None:None:`out`
array will retain its original value. Note that if an uninitialized :None:None:`out`
array is created via the default out=None
, locations within it where the condition is False will remain uninitialized.
For other keyword-only arguments, see the ufunc docs <ufuncs.kwargs>
.
The angle of the ray intersecting the unit circle at the given x
-coordinate in radians [0, pi]. This is a scalar if x
is a scalar.
Trigonometric inverse cosine, element-wise.
We expect the arccos of 1 to be 0, and of -1 to be pi:
This example is valid syntax, but we were not able to check execution>>> np.arccos([1, -1]) array([ 0. , 3.14159265])
Plot arccos:
This example is valid syntax, but we were not able to check execution>>> import matplotlib.pyplot as pltSee :
... x = np.linspace(-1, 1, num=100)
... plt.plot(x, np.arccos(x))
... plt.axis('tight')
... plt.show()
The following pages refer to to this document either explicitly or contain code examples using this.
numpy.ma.core.arccos
numpy.ma.core.arcsin
numpy.ma.core.arcsinh
Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.
Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)
SVG is more flexible but power hungry; and does not scale well to 50 + nodes.
All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them