File: class_quant_lib_1_1_trapezoid_integral.html

package info (click to toggle)
quantlib-refman-html 1.2-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 84,552 kB
  • ctags: 5,132
  • sloc: makefile: 33
file content (122 lines) | stat: -rw-r--r-- 6,660 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta name="robots" content="none">
<title>TrapezoidIntegral&lt; IntegrationPolicy &gt; Class Template Reference</title>
<link rel="stylesheet" href="quantlib.css" type="text/css">
<link rel="stylesheet" href="print.css" type="text/css" media="print">
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">
</head>
<body>

<div id="container">
<div id="header">
<img class="titleimage"
 src="QL-title.jpg" width="185" height="50" border="0"
 alt="QuantLib">
<br>
<h3 class="subtitle">A free/open-source library for quantitative finance</h3>
</div>
<div id="menu">

<h3 class="navbartitle">Version 1.2</h3>

<hr>

<h3 class="navbartitle">Getting started</h3>
<ul class="navbarlist">
<li class="navlink"><a href="index.html">Introduction</a></li>
<li class="navlink"><a href="where.html">Where to get QuantLib</a></li>
<li class="navlink"><a href="install.html">Installation</a></li>
<li class="navlink"><a href="config.html">Configuration</a></li>
<li class="navlink"><a href="usage.html">Usage</a></li>
<li class="navlink"><a href="history.html">Version history</a></li>
<li class="navlink"><a href="resources.html">Additional resources</a></li>
<li class="navlink"><a href="group.html">The QuantLib group</a></li>
<li class="navlink"><a href="license.html">Copyright and license</a></li>
</ul>

<hr>

<h3 class="navbartitle">Reference manual</h3>
<ul class="navbarlist">
<li class="navlink"><a href="modules.html">Modules</a></li>
<li class="navlink"><a href="hierarchy.html">Class Hierarchy</a></li>
<li class="navlink"><a href="annotated.html">Compound List</a></li>
<li class="navlink"><a href="files.html">File List</a></li>
<li class="navlink"><a href="functions.html">Compound Members</a></li>
<li class="navlink"><a href="globals.html">File Members</a></li>
<li class="navlink"><a href="todo.html">Todo List</a></li>
<li class="navlink"><a href="bug.html">Known Bugs</a></li>
<li class="navlink"><a href="caveats.html">Caveats</a></li>
<li class="navlink"><a href="test.html">Test Suite</a></li>
<li class="navlink"><a href="examples.html">Examples</a></li>
</ul>
</div>

<div id="content">
<!--Doxygen-generated content-->

<!-- Generated by Doxygen 1.7.6.1 -->
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><b>QuantLib</b>      </li>
      <li class="navelem"><a class="el" href="class_quant_lib_1_1_trapezoid_integral.html">TrapezoidIntegral</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">TrapezoidIntegral&lt; IntegrationPolicy &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="QuantLib::TrapezoidIntegral" --><!-- doxytag: inherits="QuantLib::Integrator" -->
<p>Integral of a one-dimensional function.  
 <a href="class_quant_lib_1_1_trapezoid_integral.html#details">More...</a></p>

<p><code>#include &lt;ql/math/integrals/trapezoidintegral.hpp&gt;</code></p>

<p>Inherits Integrator.</p>

<p><a href="class_quant_lib_1_1_trapezoid_integral-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a561fa1ee6b2567042a2c6ccaf256b452"></a><!-- doxytag: member="QuantLib::TrapezoidIntegral::TrapezoidIntegral" ref="a561fa1ee6b2567042a2c6ccaf256b452" args="(Real accuracy, Size maxIterations)" -->
&#160;</td><td class="memItemRight" valign="bottom"><b>TrapezoidIntegral</b> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> accuracy, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> maxIterations)</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a7b69e9c96cb1f7b182caef74747c6c"></a><!-- doxytag: member="QuantLib::TrapezoidIntegral::integrate" ref="a5a7b69e9c96cb1f7b182caef74747c6c" args="(const boost::function&lt; Real(Real)&gt; &amp;f, Real a, Real b) const " -->
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>integrate</b> (const boost::function&lt; <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a>(<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a>)&gt; &amp;f, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> a, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> b) const </td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;class IntegrationPolicy&gt;<br/>
class QuantLib::TrapezoidIntegral&lt; IntegrationPolicy &gt;</h3>

<p>Integral of a one-dimensional function. </p>
<p>Given a target accuracy <img class="formulaInl" alt="$ \epsilon $" src="form_203.png"/>, the integral of a function <img class="formulaInl" alt="$ f $" src="form_37.png"/> between <img class="formulaInl" alt="$ a $" src="form_47.png"/> and <img class="formulaInl" alt="$ b $" src="form_48.png"/> is calculated by means of the trapezoid formula </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[ \int_{a}^{b} f \mathrm{d}x = \frac{1}{2} f(x_{0}) + f(x_{1}) + f(x_{2}) + \dots + f(x_{N-1}) + \frac{1}{2} f(x_{N}) \]" src="form_204.png"/>
</p>
<p> where <img class="formulaInl" alt="$ x_0 = a $" src="form_205.png"/>, <img class="formulaInl" alt="$ x_N = b $" src="form_206.png"/>, and <img class="formulaInl" alt="$ x_i = a+i \Delta x $" src="form_207.png"/> with <img class="formulaInl" alt="$ \Delta x = (b-a)/N $" src="form_208.png"/>. The number <img class="formulaInl" alt="$ N $" src="form_32.png"/> of intervals is repeatedly increased until the target accuracy is reached.</p>
<dl class="test"><dt><b><a class="el" href="test.html#_test000041">Tests:</a></b></dt><dd>the correctness of the result is tested by checking it against known good values. </dd></dl>
</div></div><!-- contents -->

</div>

<div class="footer">
<div class="endmatter">
Documentation generated by
<a href="http://www.doxygen.org">Doxygen</a> 1.7.6.1
</div>
</div>

</div>

</body>
</html>