File: class_quant_lib_1_1_evolution_description.html

package info (click to toggle)
quantlib-refman-html 0.9.0-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 60,592 kB
  • ctags: 7,595
  • sloc: makefile: 30
file content (126 lines) | stat: -rw-r--r-- 8,837 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
123
124
125
126
<!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>QuantLib: EvolutionDescription Class 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="212" height="47" 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 0.9.0</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="overview.html">Project overview</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="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.5.4 -->
<div class="nav">
<a class="el" href="namespace_quant_lib.html">QuantLib</a>::<a class="el" href="class_quant_lib_1_1_evolution_description.html">EvolutionDescription</a></div>
<h1>EvolutionDescription Class Reference</h1><!-- doxytag: class="QuantLib::EvolutionDescription" --><code>#include &lt;ql/models/marketmodels/evolutiondescription.hpp&gt;</code>
<p>

<p>
<a href="class_quant_lib_1_1_evolution_description-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Market-model evolution description. 
<p>
This class stores:<ol type=1>
<li>evolutionTimes = the times defining the rates that are to be evolved,</li><li>rateTimes = the times at which the rates need to be known,</li><li>relevanceRates = which rates need to be known at each time.</li></ol>
<p>
This class is really just a tuple of evolution and rate times;<ul>
<li>there will be n+1 rate times expressing payment and reset times of forward rates.</li><li>there will be any number of evolution times.</li><li>we also store which part of the rates are relevant for pricing via relevance rates. The important part for the i-th step will then range from relevanceRates[i].first to relevanceRates[i].second. Default values for relevance rates will be 0 and n.</li><li>example for n = 5: <pre>
           |-----|-----|-----|-----|-----|      (size = 6)
           t0    t1    t2    t3    t4    t5     rateTimes
           f0    f1    f2    f3    f4           forwardRates
           d0    d1    d2    d3    d4    d5     discountBonds
           d0/d0 d1/d0 d2/d0 d3/d0 d4/d0 d5/d0  discountRatios
           sr0   sr1   sr2   sr3   sr4          coterminalSwaps
        </pre> </li></ul>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ecf292561e16fe6df3c652f7b07ee82c"></a><!-- doxytag: member="QuantLib::EvolutionDescription::EvolutionDescription" ref="ecf292561e16fe6df3c652f7b07ee82c" args="(const std::vector&lt; Time &gt; &amp;rateTimes, const std::vector&lt; Time &gt; &amp;evolutionTimes=std::vector&lt; Time &gt;(), const std::vector&lt; std::pair&lt; Size, Size &gt; &gt; &amp;relevanceRates=std::vector&lt; range &gt;())" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>EvolutionDescription</b> (const std::vector&lt; <a class="el" href="group__types.html#g14fb8fca43a68f4168654e1f9f7e22f7">Time</a> &gt; &amp;rateTimes, const std::vector&lt; <a class="el" href="group__types.html#g14fb8fca43a68f4168654e1f9f7e22f7">Time</a> &gt; &amp;evolutionTimes=std::vector&lt; <a class="el" href="group__types.html#g14fb8fca43a68f4168654e1f9f7e22f7">Time</a> &gt;(), const std::vector&lt; std::pair&lt; <a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a>, <a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a> &gt; &gt; &amp;relevanceRates=std::vector&lt; range &gt;())</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b2d70b43df80ed4117064171d7a09cc3"></a><!-- doxytag: member="QuantLib::EvolutionDescription::rateTimes" ref="b2d70b43df80ed4117064171d7a09cc3" args="() const " -->
const std::vector&lt; <a class="el" href="group__types.html#g14fb8fca43a68f4168654e1f9f7e22f7">Time</a> &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>rateTimes</b> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="354ca1793c355a773e185886211db03a"></a><!-- doxytag: member="QuantLib::EvolutionDescription::rateTaus" ref="354ca1793c355a773e185886211db03a" args="() const " -->
const std::vector&lt; <a class="el" href="group__types.html#g14fb8fca43a68f4168654e1f9f7e22f7">Time</a> &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>rateTaus</b> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0dac97b4b0bffee5390d8e79f635963a"></a><!-- doxytag: member="QuantLib::EvolutionDescription::evolutionTimes" ref="0dac97b4b0bffee5390d8e79f635963a" args="() const " -->
const std::vector&lt; <a class="el" href="group__types.html#g14fb8fca43a68f4168654e1f9f7e22f7">Time</a> &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>evolutionTimes</b> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bca2bff1bd358cec29095d1073726857"></a><!-- doxytag: member="QuantLib::EvolutionDescription::firstAliveRate" ref="bca2bff1bd358cec29095d1073726857" args="() const " -->
const std::vector&lt; <a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a> &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>firstAliveRate</b> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0fb9d12ce3c6ee872a153fe766ea9489"></a><!-- doxytag: member="QuantLib::EvolutionDescription::relevanceRates" ref="0fb9d12ce3c6ee872a153fe766ea9489" args="() const " -->
const std::vector&lt; std::pair<br>
&lt; <a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a>, <a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a> &gt; &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>relevanceRates</b> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b4f4847a3bfe9c8a8ea499a4e20643cf"></a><!-- doxytag: member="QuantLib::EvolutionDescription::numberOfRates" ref="b4f4847a3bfe9c8a8ea499a4e20643cf" args="() const " -->
<a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>numberOfRates</b> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed640b8d340edab41683b6aadd89665b"></a><!-- doxytag: member="QuantLib::EvolutionDescription::numberOfSteps" ref="ed640b8d340edab41683b6aadd89665b" args="() const " -->
<a class="el" href="group__types.html#gf38bdb4c54463b1f456655efa95b5c77">Size</a>&nbsp;</td><td class="memItemRight" valign="bottom"><b>numberOfSteps</b> () const </td></tr>

</table>

</div>

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

</div>

</body>
</html>