ArcSec[z]
gives the arc secant
of the complex number
.
ArcSec
ArcSec[z]
gives the arc secant
of the complex number
.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
- All results are given in radians.
- For real
outside the interval
to
, the results are always in the range
to
, excluding
. - For certain special arguments, ArcSec automatically evaluates to exact values.
- ArcSec can be evaluated to arbitrary numerical precision.
- ArcSec automatically threads over lists.
- ArcSec[z] has a branch cut discontinuity in the complex
plane running from
to
. - ArcSec can be used with Interval and CenteredInterval objects. »
Background & Context
- ArcSec is the inverse secant function. For a real number
, ArcSec[x] represents the radian angle measure,
,
, such that
. - ArcSec automatically threads over lists. For certain special arguments, ArcSec automatically evaluates to exact values. When given exact numeric expressions as arguments, ArcSec may be evaluated to arbitrary numeric precision. Operations useful for manipulation of symbolic expressions involving ArcSec include FunctionExpand, TrigToExp, TrigExpand, Simplify, and FullSimplify.
- ArcSec is defined for complex argument
via
. ArcSec[z] has a branch cut discontinuity in the complex
plane. - Related mathematical functions include Sec, ArcCsc, and ArcSech.
Examples
open all close allBasic Examples (5)
ArcSec[2]Divide by Degree to get results in degrees:
ArcSec[2] / Degree//FullSimplifyPlot over a subset of the reals:
Plot[ArcSec[x], {x, -5, 5}]Plot over a subset of the complexes:
ComplexPlot3D[ArcSec[z], {z, -4 - 2I, 4 + 2I}, PlotLegends -> Automatic]Asymptotic expansion at Infinity:
Series[ArcSec[x], {x, ∞, 5}]Asymptotic expansion at a singular point:
Series[ArcSec[x], {x, 1, 3}, Assumptions -> x > 1]//SimplifyScope (41)
Numerical Evaluation (6)
ArcSec[5.0]N[ArcSec[5], 50]The precision of the output tracks the precision of the input:
ArcSec[5.00000000000000000000000000000000000000000]Evaluate for complex arguments:
ArcSec[0.5 + 2.3I]Evaluate ArcSec efficiently at high precision:
ArcSec[5`500]//TimingArcSec[5`100000];//TimingCompute worst-case guaranteed intervals using Interval and CenteredInterval objects:
ArcSec[Interval[{2, 5}]]ArcSec[CenteredInterval[-3, 1 / 100]]ArcSec[CenteredInterval[2 + 3I, (1 + I) / 100]]Or compute average-case statistical intervals using Around:
ArcSec[Around[(2/Sqrt[3]), 0.1]]Compute the elementwise values of an array:
ArcSec[{{Sqrt[2], -Sqrt[2]}, {0, -Sqrt[2]}}]Or compute the matrix ArcSec function using MatrixFunction:
MatrixFunction[ArcSec[#]&, {{Sqrt[2], -Sqrt[2]}, {0, -Sqrt[2]}}]Specific Values (5)
Values of ArcSec at fixed points:
Table[ArcSec[n], {n, -2, 2}]Simple exact values are generated automatically:
ArcSec[(2/Sqrt[3])]ArcSec[Infinity]ArcSec[ComplexInfinity]Zero of ArcSec:
ArcSec[1]Find the value of
satisfying equation
:
f[x_] := ArcSec[x] - (π/3);sol = Solve[f[x] == 0, x]xzero = x /. First[sol]Plot[f[x], {x, 1, 3}, Epilog -> Style[Point[{xzero, f[xzero]}], PointSize[Large], Red]]Visualization (3)
Plot the ArcSec function:
Plot[ArcSec[x], {x, -3, 3}]ComplexContourPlot[Re[ArcSec[z]], {z, -2 - 2I, 2 + 2I}, IconizedObject[«PlotOptions»]]ComplexContourPlot[Im[ArcSec[z]], {z, -2 - 2I, 2 + 2I}, IconizedObject[«PlotOptions»]]Table[PolarPlot[ArcSec[k ϕ], {ϕ, -5π, 5π}, Sequence[Frame -> True, PlotLabel -> "k=" <> ToString[k], PlotRange -> {{-2, 3}, {-3, 2}}]], {k, 1, 4}]Function Properties (10)
ArcSec is defined for all real values except from the interval
:
FunctionDomain[ArcSec[x], x]FunctionDomain[ArcSec[z], z, Complexes]ArcSec lies between
and
:
FunctionRange[ArcSec[x], x, y]Function range for arguments from the complex domain:
FunctionRange[ArcSec[z], z, y, Complexes]ArcSec is not an analytic function:
FunctionAnalytic[ArcSec[x], x]FunctionMeromorphic[ArcSec[x], x]ArcSec is monotonic in a specific range:
FunctionMonotonicity[ArcSec[x], x]FunctionMonotonicity[{ArcSec[x], x ≤ -1 }, x]FunctionMonotonicity[{ArcSec[x], x ≥ 1}, x]Plot[ArcSec[x], {x, 1, 3}]ArcSec is injective:
FunctionInjective[ArcSec[x], x]Plot[{ArcSec[x], 1 / 2}, {x, -5, 5}]ArcSec is not surjective:
FunctionSurjective[ArcSec[x], x]Plot[{ArcSec[x], π / 2}, {x, -5, 5}]ArcSec is non-negative on its real domain:
FunctionSign[{ArcSec[x], x ≤ -1 || x ≥ 1}, x]It has both singularity and discontinuity for x in [-1,1]:
FunctionSingularities[ArcSec[x], x]FunctionDiscontinuities[ArcSec[x], x]ArcSec is neither convex nor concave:
FunctionConvexity[ArcSec[x], x]TraditionalForm formatting:
ArcSec[x]//TraditionalFormDifferentiation (3)
D[ArcSec[x], x]Table[D[ArcSec[x], {x, n}], {n, 1, 4}]//FullSimplifyPlot[Evaluate[%], {x, -3, 3}, PlotLegends -> {"First Derivative", "Second Derivative", "Third Derivative", "Fourth Derivative"}]D[ArcSec[x], {x, n}]Integration (3)
Indefinite integral of ArcSec:
Integrate[ArcSec[x], x]Definite integral over the interval
:
Integrate[ArcSec[x], {x, 1, 2}]Integrate[x ArcSec[x], x]Integrate[z ^ k ArcSec[z], z]Series Expansions (3)
Find the Taylor expansion using Series:
Series[ArcSec[x], {x, 2, 4}]Plot the first three approximations for ArcSec around
:
terms = Normal@Table[Series[ArcSec[x], {x, 2, m}], {m, 1, 3}];
Plot[{ArcSec[x], terms}, {x, 1, 3}, PlotRange -> {{1, 3}, {0, 2}}]Find series expansions at branch points and branch cuts:
Series[ArcSec[x], {x, 1, 1}]//FullSimplifySeries[ArcSec[x], {x, -1 / 2, 1}]ArcSec can be applied to power series:
ArcSec[x + x ^ 2 + O[x, Infinity] ^ 4]Function Identities and Simplifications (3)
Simplify expressions involving ArcSec:
FullSimplify[ArcSec[Sqrt[(1/1 - x^2)]], 0 ≤ x ≤ 1]Use TrigToExp to express in terms of logarithm:
ArcSec[z]//TrigToExpUse ExpToTrig to convert back:
ExpToTrig[%]//FullSimplifyExpand assuming real variables
and
:
ComplexExpand[ArcSec[x + I y]]Function Representations (5)
Represent using ArcCos:
ArcCos[(1/z)]//FullSimplifyRepresentation through inverse Jacobi functions:
InverseJacobiCD[(1/z), 0]//FullSimplifyInverseJacobiCN[(1/z), 0]//FullSimplifyRepresent using Hypergeometric2F1:
(π/2) - (Hypergeometric2F1[(1/2), (1/2), (3/2), (1/x^2)]/x)//FullSimplifyArcSec can be represented in terms of MeijerG:
MeijerGReduce[ArcSec[x], x]Activate[%]//FullSimplifyArcSec can be represented as a DifferentialRoot:
DifferentialRootReduce[ArcSec[x], x]Applications (3)
Branch cut of ArcSec runs along the real axis:
Plot3D[Im[ArcSec[x + I y]], {x, -2, 2}, {y, -2, 2}]Solve a differential equation:
DSolve[Cos[y[x]] (1 - x Cos[y[x]]) + x Log[x] Sin[y[x]] Derivative[1][y][x] == 0, y[x], x]//QuietVisualize multiple complex trigonometric functions using Parallelize to speed up computations:
$TrigFunctions = {Sin, Cos, Sec, Csc, Tan, Cot, ArcSin, ArcCos, ArcSec, ArcCsc, ArcTan, ArcCot};Parallelize@Table[Plot3D[Abs[f[x + I y]], {x, -2, 2}, {y, -2, 2}, MeshFunctions -> Function@@@{{{x, y, z}, Re[f[x + I y]]}, {{x, y, z}, Im[f[x + I y]]}}, MeshShading -> {{Orange, None}, {None, Green}}, PlotLabel -> f, Ticks -> None, ImageSize -> 100], {f, $TrigFunctions}]Properties & Relations (5)
Compose with inverse functions:
{ArcSec[Sec[z]], Sec[ArcSec[z]]}Use PowerExpand to disregard multivaluedness of the ArcSec:
PowerExpand[%]Alternatively, evaluate under additional assumptions:
Refine[ArcSec[Sec[z]], 0 < z < Pi / 2]Use TrigToExp to express in terms of logarithm:
ArcSec[z]//TrigToExpUse ExpToTrig to convert back:
ExpToTrig[%]ArcSec gives the angle in radians, while ArcSecDegrees gives the same angle in degrees:
ArcSec[2]ArcSecDegrees[2]Use FunctionExpand to convert trigs of arctrigs into an algebraic function:
FunctionExpand[Tan[5ArcSec[z]]]Simplify[%]Use Reduce to solve equations involving ArcSec:
Reduce[ArcSec[z] + ArcSec[z + 1] == Pi / 2, z]//QuietSee Also
Sec ArcCsc ArcSecDegrees ArcSech Degree TrigToExp TrigExpand
Function Repository: ArcSecDegree
Tech Notes
Related Guides
Related Links
History
Introduced in 1988 (1.0) | Updated in 2021 (13.0)
Text
Wolfram Research (1988), ArcSec, Wolfram Language function, https://reference.wolfram.com/language/ref/ArcSec.html (updated 2021).
CMS
Wolfram Language. 1988. "ArcSec." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2021. https://reference.wolfram.com/language/ref/ArcSec.html.
APA
Wolfram Language. (1988). ArcSec. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ArcSec.html
BibTeX
@misc{reference.wolfram_2026_arcsec, author="Wolfram Research", title="{ArcSec}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/ArcSec.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_arcsec, organization={Wolfram Research}, title={ArcSec}, year={2021}, url={https://reference.wolfram.com/language/ref/ArcSec.html}, note=[Accessed: 12-June-2026]}