• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>Airy Bi Function</title>
5<link rel="stylesheet" href="../../math.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../index.html" title="Math Toolkit 2.12.0">
8<link rel="up" href="../airy.html" title="Airy Functions">
9<link rel="prev" href="ai.html" title="Airy Ai Function">
10<link rel="next" href="aip.html" title="Airy Ai' Function">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13<table cellpadding="2" width="100%"><tr>
14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
15<td align="center"><a href="../../../../../../index.html">Home</a></td>
16<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
20</tr></table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="ai.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../airy.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="aip.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h3 class="title">
27<a name="math_toolkit.airy.bi"></a><a class="link" href="bi.html" title="Airy Bi Function">Airy Bi Function</a>
28</h3></div></div></div>
29<h5>
30<a name="math_toolkit.airy.bi.h0"></a>
31        <span class="phrase"><a name="math_toolkit.airy.bi.synopsis"></a></span><a class="link" href="bi.html#math_toolkit.airy.bi.synopsis">Synopsis</a>
32      </h5>
33<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">special_functions</span><span class="special">/</span><span class="identifier">airy</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
34</pre>
35<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span> <span class="special">{</span>
36
37 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
38 <a class="link" href="../result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">airy_bi</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">x</span><span class="special">);</span>
39
40 <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Policy</span><span class="special">&gt;</span>
41 <a class="link" href="../result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">airy_bi</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Policy</span><span class="special">&amp;);</span>
42
43<span class="special">}}</span> <span class="comment">// namespaces</span>
44</pre>
45<h5>
46<a name="math_toolkit.airy.bi.h1"></a>
47        <span class="phrase"><a name="math_toolkit.airy.bi.description"></a></span><a class="link" href="bi.html#math_toolkit.airy.bi.description">Description</a>
48      </h5>
49<p>
50        The function <a class="link" href="bi.html" title="Airy Bi Function">airy_bi</a> calculates
51        the Airy function Bi which is the second solution to the differential equation:
52      </p>
53<div class="blockquote"><blockquote class="blockquote"><p>
54          <span class="inlinemediaobject"><img src="../../../equations/airy.svg"></span>
55
56        </p></blockquote></div>
57<p>
58        The final <a class="link" href="../../policy.html" title="Chapter 21. Policies: Controlling Precision, Error Handling etc">Policy</a> argument is optional and can
59        be used to control the behaviour of the function: how it handles errors,
60        what level of precision to use etc. Refer to the <a class="link" href="../../policy.html" title="Chapter 21. Policies: Controlling Precision, Error Handling etc">policy
61        documentation for more details</a>.
62      </p>
63<p>
64        The following graph illustrates how this function changes as <span class="emphasis"><em>x</em></span>
65        changes: for negative <span class="emphasis"><em>x</em></span> the function is cyclic, while
66        for positive <span class="emphasis"><em>x</em></span> the value tends to infinity:
67      </p>
68<div class="blockquote"><blockquote class="blockquote"><p>
69          <span class="inlinemediaobject"><img src="../../../graphs/airy_bi.svg" align="middle"></span>
70
71        </p></blockquote></div>
72<h5>
73<a name="math_toolkit.airy.bi.h2"></a>
74        <span class="phrase"><a name="math_toolkit.airy.bi.accuracy"></a></span><a class="link" href="bi.html#math_toolkit.airy.bi.accuracy">Accuracy</a>
75      </h5>
76<p>
77        This function is implemented entirely in terms of the Bessel functions <a class="link" href="../bessel/mbessel.html" title="Modified Bessel Functions of the First and Second Kinds">cyl_bessel_i</a> and <a class="link" href="../bessel/bessel_first.html" title="Bessel Functions of the First and Second Kinds">cyl_bessel_j</a>
78        - refer to those functions for detailed accuracy information.
79      </p>
80<p>
81        In general though, the relative error is low (less than 100 ε) for <span class="emphasis"><em>x
82        &gt; 0</em></span> while only the absolute error is low for <span class="emphasis"><em>x &lt;
83        0</em></span> as the following error plot illustrate:
84      </p>
85<div class="blockquote"><blockquote class="blockquote"><p>
86          <span class="inlinemediaobject"><img src="../../../graphs/bi__double.svg" align="middle"></span>
87
88        </p></blockquote></div>
89<h5>
90<a name="math_toolkit.airy.bi.h3"></a>
91        <span class="phrase"><a name="math_toolkit.airy.bi.testing"></a></span><a class="link" href="bi.html#math_toolkit.airy.bi.testing">Testing</a>
92      </h5>
93<p>
94        Since this function is implemented in terms of other special functions, there
95        are only a few basic sanity checks, using test values from <a href="http://functions.wolfram.com" target="_top">functions.wolfram.com</a>.
96      </p>
97<h5>
98<a name="math_toolkit.airy.bi.h4"></a>
99        <span class="phrase"><a name="math_toolkit.airy.bi.implementation"></a></span><a class="link" href="bi.html#math_toolkit.airy.bi.implementation">Implementation</a>
100      </h5>
101<p>
102        This function is implemented in terms of the Bessel functions using the relations:
103      </p>
104<div class="blockquote"><blockquote class="blockquote"><p>
105          <span class="inlinemediaobject"><img src="../../../equations/airy_bi.svg"></span>
106
107        </p></blockquote></div>
108</div>
109<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
110<td align="left"></td>
111<td align="right"><div class="copyright-footer">Copyright © 2006-2019 Nikhar
112      Agrawal, Anton Bikineev, Paul A. Bristow, Marco Guazzone, Christopher Kormanyos,
113      Hubert Holin, Bruno Lalande, John Maddock, Jeremy Murphy, Matthew Pulver, Johan
114      Råde, Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg,
115      Daryle Walker and Xiaogang Zhang<p>
116        Distributed under the Boost Software License, Version 1.0. (See accompanying
117        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>)
118      </p>
119</div></td>
120</tr></table>
121<hr>
122<div class="spirit-nav">
123<a accesskey="p" href="ai.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../airy.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="aip.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
124</div>
125</body>
126</html>
127