<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Inverse Hyperbolic Functions Overview</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="../../../index.html" title="Math Toolkit">
<link rel="up" href="../inv_hyper.html" title="Inverse Hyperbolic Functions">
<link rel="prev" href="../inv_hyper.html" title="Inverse Hyperbolic Functions">
<link rel="next" href="acosh.html" title="acosh">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../inv_hyper.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../inv_hyper.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="acosh.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="math_toolkit.special.inv_hyper.inv_hyper_over"></a><a class="link" href="inv_hyper_over.html" title="Inverse Hyperbolic Functions Overview"> Inverse
        Hyperbolic Functions Overview</a>
</h4></div></div></div>
<p>
          The exponential funtion is defined, for all objects for which this makes
          sense, as the power series <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb1.png"></span>,
          with <span class="emphasis"><em><code class="literal">n! = 1x2x3x4x5...xn</code></em></span> (and
          <span class="emphasis"><em><code class="literal">0! = 1</code></em></span> by definition) being the
          factorial of <span class="emphasis"><em><code class="literal">n</code></em></span>. In particular,
          the exponential function is well defined for real numbers, complex number,
          quaternions, octonions, and matrices of complex numbers, among others.
        </p>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="emphasis"><em><span class="bold"><strong>Graph of exp on R</strong></span></em></span>
          </p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="inlinemediaobject"><img src="../../../../graphs/exp_on_r.png" alt="exp_on_r"></span>
          </p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="emphasis"><em><span class="bold"><strong>Real and Imaginary parts of exp on C</strong></span></em></span>
          </p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="inlinemediaobject"><img src="../../../../graphs/im_exp_on_c.png" alt="im_exp_on_c"></span>
          </p></blockquote></div>
<p>
          The hyperbolic functions are defined as power series which can be computed
          (for reals, complex, quaternions and octonions) as:
        </p>
<p>
          Hyperbolic cosine: <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb5.png"></span>
        </p>
<p>
          Hyperbolic sine: <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb6.png"></span>
        </p>
<p>
          Hyperbolic tangent: <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb7.png"></span>
        </p>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="emphasis"><em><span class="bold"><strong>Trigonometric functions on R (cos: purple;
            sin: red; tan: blue)</strong></span></em></span>
          </p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="inlinemediaobject"><img src="../../../../graphs/trigonometric.png" alt="trigonometric"></span>
          </p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="emphasis"><em><span class="bold"><strong>Hyperbolic functions on r (cosh: purple;
            sinh: red; tanh: blue)</strong></span></em></span>
          </p></blockquote></div>
<div class="blockquote"><blockquote class="blockquote"><p>
            <span class="inlinemediaobject"><img src="../../../../graphs/hyperbolic.png" alt="hyperbolic"></span>
          </p></blockquote></div>
<p>
          The hyperbolic sine is one to one on the set of real numbers, with range
          the full set of reals, while the hyperbolic tangent is also one to one
          on the set of real numbers but with range <code class="literal">[0;+&#8734;[</code>, and
          therefore both have inverses. The hyperbolic cosine is one to one from
          <code class="literal">]-&#8734;;+1[</code> onto <code class="literal">]-&#8734;;-1[</code> (and from <code class="literal">]+1;+&#8734;[</code>
          onto <code class="literal">]-&#8734;;-1[</code>); the inverse function we use here is defined
          on <code class="literal">]-&#8734;;-1[</code> with range <code class="literal">]-&#8734;;+1[</code>.
        </p>
<p>
          The inverse of the hyperbolic tangent is called the Argument hyperbolic
          tangent, and can be computed as <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb15.png"></span>.
        </p>
<p>
          The inverse of the hyperbolic sine is called the Argument hyperbolic sine,
          and can be computed (for <code class="literal">[-1;-1+&#949;[</code>) as <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb17.png"></span>.
        </p>
<p>
          The inverse of the hyperbolic cosine is called the Argument hyperbolic
          cosine, and can be computed as <span class="inlinemediaobject"><img src="../../../../equations/special_functions_blurb18.png"></span>.
        </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2006 , 2007, 2008, 2009, 2010 John Maddock, Paul A. Bristow,
      Hubert Holin, Xiaogang Zhang, Bruno Lalande, Johan R&#229;de, Gautam Sewani and
      Thijs van den Berg<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../inv_hyper.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../inv_hyper.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="acosh.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
