more docs

This commit is contained in:
Mario Mulansky 2011-08-22 20:21:31 +02:00
parent f52c1393bf
commit 66bf6f9965
16 changed files with 924 additions and 47 deletions

View File

@ -32,6 +32,8 @@
Stepper</a></span></dt>
<dt><span class="section"><a href="concepts/dense_output_stepper.html">Dense
Output Stepper</a></span></dt>
<dt><span class="section"><a href="concepts/state_algebra_operations.html">State
Algebra Operations</a></span></dt>
</dl></div>
<a name="odeint.concepts"></a>
</div>

View File

@ -26,7 +26,7 @@
functions</a>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.controlled_stepper.description"></a><h5>
<a name="id613856"></a>
<a name="id614018"></a>
<a class="link" href="controlled_stepper.html#boost_sandbox_numeric_odeint.concepts.controlled_stepper.description">Description</a>
</h5>
<p>
@ -37,7 +37,7 @@
of the solution the step might be rejected and a smaller step-size is suggested.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.controlled_stepper.notation"></a><h5>
<a name="id613897"></a>
<a name="id614059"></a>
<a class="link" href="controlled_stepper.html#boost_sandbox_numeric_odeint.concepts.controlled_stepper.notation">Notation</a>
</h5>
<div class="variablelist">
@ -77,7 +77,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.controlled_stepper.valid_expressions"></a><h5>
<a name="id614150"></a>
<a name="id614312"></a>
<a class="link" href="controlled_stepper.html#boost_sandbox_numeric_odeint.concepts.controlled_stepper.valid_expressions">Valid
Expressions</a>
</h5>
@ -178,7 +178,7 @@
</tbody>
</table></div>
<a name="boost_sandbox_numeric_odeint.concepts.controlled_stepper.models"></a><h5>
<a name="id614562"></a>
<a name="id614724"></a>
<a class="link" href="controlled_stepper.html#boost_sandbox_numeric_odeint.concepts.controlled_stepper.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">

View File

@ -7,13 +7,13 @@
<link rel="start" href="../../index.html" title="Chapter&#160;1.&#160;boost.sandbox.numeric.odeint">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="controlled_stepper.html" title="Controlled Stepper">
<link rel="next" href="../../odeint/reference.html" title="Reference">
<link rel="next" href="state_algebra_operations.html" title="State Algebra Operations">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="controlled_stepper.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../../odeint/reference.html"><img src="../../images/next.png" alt="Next"></a>
<a accesskey="p" href="controlled_stepper.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="state_algebra_operations.html"><img src="../../images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h3 class="title">
@ -26,7 +26,7 @@
functions</a>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.dense_output_stepper.description"></a><h5>
<a name="id614648"></a>
<a name="id614810"></a>
<a class="link" href="dense_output_stepper.html#boost_sandbox_numeric_odeint.concepts.dense_output_stepper.description">Description</a>
</h5>
<p>
@ -38,7 +38,7 @@
&lt;= t' &lt;= t+dt</em></span>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.dense_output_stepper.associated_types"></a><h5>
<a name="id614699"></a>
<a name="id614861"></a>
<a class="link" href="dense_output_stepper.html#boost_sandbox_numeric_odeint.concepts.dense_output_stepper.associated_types">Associated
types</a>
</h5>
@ -56,7 +56,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.dense_output_stepper.notation"></a><h5>
<a name="id614793"></a>
<a name="id614955"></a>
<a class="link" href="dense_output_stepper.html#boost_sandbox_numeric_odeint.concepts.dense_output_stepper.notation">Notation</a>
</h5>
<div class="variablelist">
@ -92,7 +92,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.dense_output_stepper.valid_expressions"></a><h5>
<a name="id615050"></a>
<a name="id615212"></a>
<a class="link" href="dense_output_stepper.html#boost_sandbox_numeric_odeint.concepts.dense_output_stepper.valid_expressions">Valid
Expressions</a>
</h5>
@ -284,7 +284,7 @@
</tbody>
</table></div>
<a name="boost_sandbox_numeric_odeint.concepts.dense_output_stepper.models"></a><h5>
<a name="id615864"></a>
<a name="id616025"></a>
<a class="link" href="dense_output_stepper.html#boost_sandbox_numeric_odeint.concepts.dense_output_stepper.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">
@ -307,7 +307,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="controlled_stepper.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../../odeint/reference.html"><img src="../../images/next.png" alt="Next"></a>
<a accesskey="p" href="controlled_stepper.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="state_algebra_operations.html"><img src="../../images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -25,7 +25,7 @@
be used within a ControlledErrorStepper.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.error_stepper.description"></a><h5>
<a name="id613005"></a>
<a name="id613166"></a>
<a class="link" href="error_stepper.html#boost_sandbox_numeric_odeint.concepts.error_stepper.description">Description</a>
</h5>
<p>
@ -40,7 +40,7 @@
or <a class="link" href="implicit_system.html" title="Implicit_System">Implicit_System</a>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.error_stepper.notation"></a><h5>
<a name="id613076"></a>
<a name="id613237"></a>
<a class="link" href="error_stepper.html#boost_sandbox_numeric_odeint.concepts.error_stepper.notation">Notation</a>
</h5>
<div class="variablelist">
@ -89,7 +89,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.error_stepper.valid_expressions"></a><h5>
<a name="id613393"></a>
<a name="id613554"></a>
<a class="link" href="error_stepper.html#boost_sandbox_numeric_odeint.concepts.error_stepper.valid_expressions">Valid
Expressions</a>
</h5>
@ -186,7 +186,7 @@
</tbody>
</table></div>
<a name="boost_sandbox_numeric_odeint.concepts.error_stepper.models"></a><h5>
<a name="id613784"></a>
<a name="id613946"></a>
<a class="link" href="error_stepper.html#boost_sandbox_numeric_odeint.concepts.error_stepper.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">

View File

@ -20,7 +20,7 @@
<a name="boost_sandbox_numeric_odeint.concepts.implicit_system"></a><a class="link" href="implicit_system.html" title="Implicit_System">Implicit_System</a>
</h3></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.implicit_system.description"></a><h5>
<a name="id611181"></a>
<a name="id611342"></a>
<a class="link" href="implicit_system.html#boost_sandbox_numeric_odeint.concepts.implicit_system.description">Description</a>
</h5>
<p>
@ -33,7 +33,7 @@
and the matrix is defined as <span class="emphasis"><em>ublas::matrix</em></span>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.implicit_system.notation"></a><h5>
<a name="id611238"></a>
<a name="id611400"></a>
<a class="link" href="implicit_system.html#boost_sandbox_numeric_odeint.concepts.implicit_system.notation">Notation</a>
</h5>
<div class="variablelist">
@ -70,7 +70,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.implicit_system.valid_expressions"></a><h5>
<a name="id611445"></a>
<a name="id611607"></a>
<a class="link" href="implicit_system.html#boost_sandbox_numeric_odeint.concepts.implicit_system.valid_expressions">Valid
Expressions</a>
</h5>

View File

@ -20,7 +20,7 @@
<a name="boost_sandbox_numeric_odeint.concepts.observer"></a><a class="link" href="observer.html" title="Observer">Observer</a>
</h3></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.observer.description"></a><h5>
<a name="id611782"></a>
<a name="id611943"></a>
<a class="link" href="observer.html#boost_sandbox_numeric_odeint.concepts.observer.description">Description</a>
</h5>
<p>
@ -33,7 +33,7 @@
function is used.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.observer.notation"></a><h5>
<a name="id611840"></a>
<a name="id612001"></a>
<a class="link" href="observer.html#boost_sandbox_numeric_odeint.concepts.observer.notation">Notation</a>
</h5>
<div class="variablelist">
@ -66,7 +66,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.observer.valid_expressions"></a><h5>
<a name="id612043"></a>
<a name="id612205"></a>
<a class="link" href="observer.html#boost_sandbox_numeric_odeint.concepts.observer.valid_expressions">Valid
Expressions</a>
</h5>

View File

@ -20,7 +20,7 @@
<a name="boost_sandbox_numeric_odeint.concepts.simple_symplectic_system"></a><a class="link" href="simple_symplectic_system.html" title="Simple_Symplectic_System">Simple_Symplectic_System</a>
</h3></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.simple_symplectic_system.description"></a><h5>
<a name="id610722"></a>
<a name="id610884"></a>
<a class="link" href="simple_symplectic_system.html#boost_sandbox_numeric_odeint.concepts.simple_symplectic_system.description">Description</a>
</h5>
<p>
@ -44,7 +44,7 @@
stepper. We call this concept <span class="emphasis"><em>Simple_Symplectic_System</em></span>
</p>
<a name="boost_sandbox_numeric_odeint.concepts.simple_symplectic_system.notation"></a><h5>
<a name="id610790"></a>
<a name="id610951"></a>
<a class="link" href="simple_symplectic_system.html#boost_sandbox_numeric_odeint.concepts.simple_symplectic_system.notation">Notation</a>
</h5>
<div class="variablelist">
@ -77,7 +77,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.simple_symplectic_system.valid_expressions"></a><h5>
<a name="id610903"></a>
<a name="id611065"></a>
<a class="link" href="simple_symplectic_system.html#boost_sandbox_numeric_odeint.concepts.simple_symplectic_system.valid_expressions">Valid
Expressions</a>
</h5>

View File

@ -0,0 +1,830 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>State Algebra Operations</title>
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="../../index.html" title="Chapter&#160;1.&#160;boost.sandbox.numeric.odeint">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="dense_output_stepper.html" title="Dense Output Stepper">
<link rel="next" href="../../odeint/reference.html" title="Reference">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="dense_output_stepper.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../../odeint/reference.html"><img src="../../images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations"></a><a class="link" href="state_algebra_operations.html" title="State Algebra Operations">State
Algebra Operations</a>
</h3></div></div></div>
<div class="toc"><dl>
<dt><span class="section"><a href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations">Operations</a></span></dt>
<dt><span class="section"><a href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra">Algebra</a></span></dt>
<dt><span class="section"><a href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.pre_defined_implementations">Pre-Defined
implementations</a></span></dt>
<dt><span class="section"><a href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.example_expressions">Example
expressions</a></span></dt>
</dl></div>
<div class="note"><table border="0" summary="Note">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../images/note.png"></td>
<th align="left">Note</th>
</tr>
<tr><td align="left" valign="top"><p>
The following does not apply to implicit steppers like implicit_euler or
rosenbrock 4 as there the <code class="computeroutput"><span class="identifier">state_type</span></code>
can not be changed from <code class="computeroutput"><span class="identifier">ublas</span><span class="special">::</span><span class="identifier">vector</span></code>
and no algebra/operations are used.
</p></td></tr>
</table></div>
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.description"></a><h5>
<a name="id616165"></a>
<a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.description">Description</a>
</h5>
<p>
The <code class="computeroutput"><span class="identifier">State</span></code>, <code class="computeroutput"><span class="identifier">Algebra</span></code> and <code class="computeroutput"><span class="identifier">Operations</span></code>
together define a concept describing how the mathematical vector operations
required for the stepper algorithms are performed. The typical vector operation
done within steppers is
</p>
<p>
<span class="emphasis"><em><span class="bold"><strong>y</strong></span> = &#931; &#945;<sub>i</sub> <span class="bold"><strong>x<sub>i</sub></strong></span></em></span>.
</p>
<p>
The <code class="computeroutput"><span class="identifier">State</span></code> represents the
state variable of an ODE, usually denoted with <span class="emphasis"><em>x</em></span>. Algorithmically,
the state is often realized as a <code class="computeroutput"><span class="identifier">vector</span><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">&gt;</span></code> or <code class="computeroutput"><span class="identifier">array</span><span class="special">&lt;</span> <span class="keyword">double</span> <span class="special">,</span> <span class="identifier">N</span> <span class="special">&gt;</span></code>,
however, the genericity of odeint enables you to basically use anything as
a state type. The algorithmic counterpart of such mathematical expressions
is divided into two parts. First, the <code class="computeroutput"><span class="identifier">Algebra</span></code>
is used to account for the vector character of the equation. In the case
of a <code class="computeroutput"><span class="identifier">vector</span></code> as state type
this means the <code class="computeroutput"><span class="identifier">Algebra</span></code> is
responsible for iteration over all vector elements. Second, the <code class="computeroutput"><span class="identifier">Operations</span></code> are used to represent the actual
operation applied to each of the vector elements. So the <code class="computeroutput"><span class="identifier">Algebra</span></code>
iterates over all elements of the <code class="computeroutput"><span class="identifier">State</span></code>s
and calls an operation taken from the <code class="computeroutput"><span class="identifier">Operations</span></code>
for each element. This is where <code class="computeroutput"><span class="identifier">State</span></code>,
<code class="computeroutput"><span class="identifier">Algebra</span></code> and <code class="computeroutput"><span class="identifier">Operations</span></code> have to work together to make
odeint running. Please have a look at the <code class="computeroutput"><span class="identifier">range_algebra</span></code>
and <code class="computeroutput"><span class="identifier">default_operations</span></code> to
see an example how this is implemented.
</p>
<p>
In the following we describe how <code class="computeroutput"><span class="identifier">State</span></code>,
<code class="computeroutput"><span class="identifier">Algebra</span></code> and <code class="computeroutput"><span class="identifier">Operations</span></code> are used together within the
stepper implementations.
</p>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations"></a><a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations" title="Operations">Operations</a>
</h4></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations.notation"></a><h6>
<a name="id616508"></a>
<a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations.notation">Notation</a>
</h6>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">Operations</span></code></span></dt>
<dd><p>
The operations type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">Value1</span></code>, ... ,
<code class="computeroutput"><span class="identifier">ValueN</span></code></span></dt>
<dd><p>
Types representing the value or time type of stepper
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">Scale</span></code></span></dt>
<dd><p>
Type of the scale operation
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">scale</span></code></span></dt>
<dd><p>
Object of type <code class="computeroutput"><span class="identifier">Scale</span></code>
</p></dd>
<dt><span class="term"><code class="literal">ScaleSum<span class="emphasis"><em>N</em></span></code></span></dt>
<dd><p>
Type that represents a general scale_sum operation, <code class="literal"><span class="emphasis"><em>N</em></span></code>
should be replaced by a number from 1 to 14.
</p></dd>
<dt><span class="term"><code class="literal">scale_sum<span class="emphasis"><em>N</em></span></code></span></dt>
<dd><p>
Object of type <code class="literal">ScaleSum<span class="emphasis"><em>N</em></span>, <code class="literal"><span class="emphasis"><em>N</em></span></code>
should be replaced by a number from 1 to 14.</code>
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">ScaleSumSwap2</span></code></span></dt>
<dd><p>
Type of the scale sum swap operation
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">scale_sum_swap2</span></code></span></dt>
<dd><p>
Object of type <code class="computeroutput"><span class="identifier">ScaleSumSwap2</span></code>
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">a1</span><span class="special">,</span>
<span class="identifier">a2</span><span class="special">,</span>
<span class="special">...</span></code></span></dt>
<dd><p>
Objects of type <code class="computeroutput"><span class="identifier">Value1</span></code>,
<code class="computeroutput"><span class="identifier">Value2</span></code>, ...
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">y</span><span class="special">,</span>
<span class="identifier">x1</span><span class="special">,</span>
<span class="identifier">x2</span><span class="special">,</span>
<span class="special">...</span></code></span></dt>
<dd><p>
Objects of <code class="computeroutput"><span class="identifier">State</span></code>'s
value type
</p></dd>
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations.valid_expressions"></a><h6>
<a name="id616881"></a>
<a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.operations.valid_expressions">Valid
Expressions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Expression
</p>
</th>
<th>
<p>
Type
</p>
</th>
<th>
<p>
Semantics
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
Get scale operation
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">Operations</span><span class="special">::</span><span class="identifier">scale</span><span class="special">&lt;</span>
<span class="identifier">Value</span> <span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">Scale</span></code>
</p>
</td>
<td>
<p>
Get <code class="computeroutput"><span class="identifier">Scale</span></code> from
<code class="computeroutput"><span class="identifier">Operations</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Scale</span></code> constructor
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">Scale</span><span class="special">&lt;</span>
<span class="identifier">Value</span> <span class="special">&gt;(</span>
<span class="identifier">a</span> <span class="special">)</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">Scale</span></code>
</p>
</td>
<td>
<p>
Constrcuts a <code class="computeroutput"><span class="identifier">Scale</span></code>
object
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Scale</span></code> operation
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">scale</span><span class="special">(</span>
<span class="identifier">x</span> <span class="special">)</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="keyword">void</span></code>
</p>
</td>
<td>
<p>
Calculates <code class="computeroutput"><span class="identifier">x</span> <span class="special">*=</span> <span class="identifier">a</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
Get general <code class="computeroutput"><span class="identifier">scale_sum</span></code>
operation
</p>
</td>
<td>
<p>
<code class="literal">Operations::scale_sum<span class="emphasis"><em>N</em></span>&lt; Value1
, ... , ValueN &gt;</code>
</p>
</td>
<td>
<p>
<code class="literal">ScaleSum<span class="emphasis"><em>N</em></span></code>
</p>
</td>
<td>
<p>
Get the <code class="literal">ScaleSum<span class="emphasis"><em>N</em></span></code> type
from <code class="computeroutput"><span class="identifier">Operations</span></code>,
<code class="literal"><span class="emphasis"><em>N</em></span></code> should be replaced
by a number from 1 to 14.
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">scale_sum</span></code> constructor
</p>
</td>
<td>
<p>
<code class="literal">ScaleSum<span class="emphasis"><em>N</em></span>&lt; Value1 , ... , ValueN
&gt;( a1 , ... , aN )</code>
</p>
</td>
<td>
<p>
<code class="literal">ScaleSum<span class="emphasis"><em>N</em></span></code>
</p>
</td>
<td>
<p>
Constructs a <code class="computeroutput"><span class="identifier">scale_sum</span></code>
object given <code class="literal"><span class="emphasis"><em>N</em></span></code> parameter
values with <code class="literal"><span class="emphasis"><em>N</em></span></code> between
1 and 14.
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">scale_sum</span></code> operation
</p>
</td>
<td>
<p>
<code class="literal">scale_sum<span class="emphasis"><em>N</em></span>( y , x1 , ... , xN )</code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="keyword">void</span></code>
</p>
</td>
<td>
<p>
Calculates <code class="computeroutput"><span class="identifier">y</span> <span class="special">=</span> <span class="identifier">a1</span><span class="special">*</span><span class="identifier">x1</span>
<span class="special">+</span> <span class="identifier">a2</span><span class="special">*</span><span class="identifier">x2</span>
<span class="special">+</span> <span class="special">...</span>
<span class="special">+</span> <span class="identifier">aN</span><span class="special">*</span><span class="identifier">xN</span></code>.
Note that this is an <code class="literal"><span class="emphasis"><em>N</em></span>+1</code>-ary
function call.
</p>
</td>
</tr>
<tr>
<td>
<p>
Get scale sum swap operation
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">Operations</span><span class="special">::</span><span class="identifier">scale_sum_swap2</span><span class="special">&lt;</span>
<span class="identifier">Value1</span> <span class="special">,</span>
<span class="identifier">Value2</span> <span class="special">&gt;</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">ScaleSumSwap2</span></code>
</p>
</td>
<td>
<p>
Get scale sum swap from operations
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">ScaleSumSwap2</span></code>
constructor
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">ScaleSumSwap2</span><span class="special">&lt;</span> <span class="identifier">Value1</span>
<span class="special">,</span> <span class="identifier">Value2</span>
<span class="special">&gt;(</span> <span class="identifier">a1</span>
<span class="special">,</span> <span class="identifier">a2</span>
<span class="special">)</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">ScaleSumSwap2</span></code>
</p>
</td>
<td>
<p>
Constructor
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">ScaleSumSwap2</span></code>
operation
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">scale_sum_swap2</span><span class="special">(</span> <span class="identifier">x1</span>
<span class="special">,</span> <span class="identifier">x2</span>
<span class="special">,</span> <span class="identifier">x3</span>
<span class="special">)</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="keyword">void</span></code>
</p>
</td>
<td>
<p>
Calculates <code class="computeroutput"><span class="identifier">tmp</span> <span class="special">=</span> <span class="identifier">x1</span></code>,
<code class="computeroutput"><span class="identifier">x1</span> <span class="special">=</span>
<span class="identifier">a1</span><span class="special">*</span><span class="identifier">x2</span> <span class="special">+</span>
<span class="identifier">a2</span><span class="special">*</span><span class="identifier">x3</span></code> and <code class="computeroutput"><span class="identifier">x2</span>
<span class="special">=</span> <span class="identifier">tmp</span></code>.
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra"></a><a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra" title="Algebra">Algebra</a>
</h4></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra.notation"></a><h6>
<a name="id617961"></a>
<a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra.notation">Notation</a>
</h6>
<div class="variablelist">
<p class="title"><b></b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">State</span></code></span></dt>
<dd><p>
The state type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">Algebra</span></code></span></dt>
<dd><p>
The algebra type
</p></dd>
<dt><span class="term"><code class="literal">Operation<span class="emphasis"><em>N</em></span></code></span></dt>
<dd><p>
An <code class="literal"><span class="emphasis"><em>N</em></span></code>-ary operation type,
<code class="literal"><span class="emphasis"><em>N</em></span></code> should be a number from
1 to 14.
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">algebra</span></code></span></dt>
<dd><p>
Object of type <code class="computeroutput"><span class="identifier">Algebra</span></code>
</p></dd>
<dt><span class="term"><code class="literal">operation<span class="emphasis"><em>N</em></span></code></span></dt>
<dd><p>
Object of type <code class="literal">Operation/N</code>
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">y</span><span class="special">,</span>
<span class="identifier">x1</span><span class="special">,</span>
<span class="identifier">x2</span><span class="special">,</span>
<span class="special">...</span></code></span></dt>
<dd><p>
Objects of type <code class="computeroutput"><span class="identifier">State</span></code>
</p></dd>
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra.valid_expressions"></a><h6>
<a name="id618181"></a>
<a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.algebra.valid_expressions">Valid
Expressions</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Expression
</p>
</th>
<th>
<p>
Type
</p>
</th>
<th>
<p>
Semantics
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
Vector Operation with arity 2
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">algebra</span><span class="special">.</span><span class="identifier">for_each2</span><span class="special">(</span>
<span class="identifier">y</span> <span class="special">,</span>
<span class="identifier">x</span> <span class="special">,</span>
<span class="identifier">operation2</span> <span class="special">)</span></code>
</p>
</td>
<td>
<p>
void
</p>
</td>
<td>
<p>
Calls <code class="computeroutput"><span class="identifier">operation2</span><span class="special">(</span> <span class="identifier">y_i</span>
<span class="special">,</span> <span class="identifier">x_i</span>
<span class="special">)</span></code> for each element <code class="computeroutput"><span class="identifier">y_i</span></code> of <code class="computeroutput"><span class="identifier">y</span></code>
and <code class="computeroutput"><span class="identifier">x_i</span></code> of <code class="computeroutput"><span class="identifier">x</span></code>.
</p>
</td>
</tr>
<tr>
<td>
<p>
Vector Operation with arity 3
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">algebra</span><span class="special">.</span><span class="identifier">for_each3</span><span class="special">(</span>
<span class="identifier">y</span> <span class="special">,</span>
<span class="identifier">x1</span> <span class="special">,</span>
<span class="identifier">x2</span> <span class="special">,</span>
<span class="identifier">operation3</span> <span class="special">)</span></code>
</p>
</td>
<td>
<p>
void
</p>
</td>
<td>
<p>
Calls <code class="computeroutput"><span class="identifier">operation3</span><span class="special">(</span> <span class="identifier">y_i</span>
<span class="special">,</span> <span class="identifier">x1_i</span>
<span class="special">,</span> <span class="identifier">x2_i</span>
<span class="special">)</span></code> for each element <code class="computeroutput"><span class="identifier">y_i</span></code> of <code class="computeroutput"><span class="identifier">y</span></code>
and <code class="computeroutput"><span class="identifier">x1_i</span></code> of
<code class="computeroutput"><span class="identifier">x1</span></code> and <code class="computeroutput"><span class="identifier">x2_i</span></code> of <code class="computeroutput"><span class="identifier">x2</span></code>.
</p>
</td>
</tr>
<tr>
<td>
<p>
Vector Operation with arity <code class="literal"><span class="emphasis"><em>N</em></span></code>
</p>
</td>
<td>
<p>
<code class="literal">algebra.for_each<span class="emphasis"><em>N</em></span>( y , x1 , ...
, xN , operation<span class="emphasis"><em>N</em></span> )</code>
</p>
</td>
<td>
<p>
void
</p>
</td>
<td>
<p>
Calls <code class="literal">operation<span class="emphasis"><em>N</em></span>( y_i , x1_i ,
... , xN_i )</code> for each element <code class="computeroutput"><span class="identifier">y_i</span></code>
of <code class="computeroutput"><span class="identifier">y</span></code> and <code class="computeroutput"><span class="identifier">x1_i</span></code> of <code class="computeroutput"><span class="identifier">x1</span></code>
and so on. <code class="literal"><span class="emphasis"><em>N</em></span></code> should be
replaced by a number between 1 and 14.
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.pre_defined_implementations"></a><a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.pre_defined_implementations" title="Pre-Defined implementations">Pre-Defined
implementations</a>
</h4></div></div></div>
<p>
As standard configuration odeint uses the <code class="computeroutput"><span class="identifier">range_algebra</span></code>
and <code class="computeroutput"><span class="identifier">default_operations</span></code>
which suffices most situations. However, a few more possibilities exist
either to gain better performance or to ensure interoperability with other
libraries. In the following we list the existing <code class="computeroutput"><span class="identifier">Algebra</span></code>/<code class="computeroutput"><span class="identifier">Operations</span></code> configurations that can be
used in the steppers.
</p>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<code class="computeroutput"><span class="identifier">State</span></code>
</p>
</th>
<th>
<p>
<code class="computeroutput"><span class="identifier">Algebra</span></code>
</p>
</th>
<th>
<p>
<code class="computeroutput"><span class="identifier">Operations</span></code>
</p>
</th>
<th>
<p>
Remarks
</p>
</th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
Anything supporting <a href="http://www.boost.org/doc/libs/release/libs/range/index.html" target="_top">Boost.Range</a>,
like <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span></code>, <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">list</span></code>,
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code>,... based on a <code class="computeroutput"><span class="identifier">value_type</span></code> that supports operators
+,* (typically <code class="computeroutput"><span class="keyword">double</span></code>)
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">range_algebra</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">default_operations</span></code>
</p>
</td>
<td>
<p>
Standard implementation, applicable for most typical situations.
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code> based on a <code class="computeroutput"><span class="identifier">value_type</span></code> that supports operators
+,*
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">array_algebra</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">default_operations</span></code>
</p>
</td>
<td>
<p>
Special implementation for boost::array with better performance
than <code class="computeroutput"><span class="identifier">range_algebra</span></code>
</p>
</td>
</tr>
<tr>
<td>
<p>
Anything that defines operators + within itself and * with scalar
(Mathematically spoken, anyhting that is a vector space).
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">vector_space_algebra</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">default_operations</span></code>
</p>
</td>
<td>
<p>
For the use of <a class="link" href="controlled_stepper.html" title="Controlled Stepper">Controlled
Stepper</a>, the template <code class="computeroutput"><span class="identifier">vector_space_reduce</span></code>
has to be instantiated.
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">thrust</span><span class="special">::</span><span class="identifier">device_vector</span></code>, <code class="computeroutput"><span class="identifier">thrust</span><span class="special">::</span><span class="identifier">host_vector</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">thrust_algebra</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">thrust_operations</span></code>
</p>
</td>
<td>
<p>
For running odeint on CUDA devices by using <a href="http://code.google.com/p/thrust/" target="_top">Thrust</a>
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code> or anything which allocates
the elements in a C-like manner
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">vector_space_algebra</span></code>
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">mkl_operations</span></code>
</p>
</td>
<td>
<p>
Using the <a href="http://software.intel.com/en-us/articles/intel-mkl/" target="_top">Intel
Math Kernel Library</a> in odeint for maximum performance.
Currently, only the RK4 stepper is supported.
</p>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="boost_sandbox_numeric_odeint.concepts.state_algebra_operations.example_expressions"></a><a class="link" href="state_algebra_operations.html#boost_sandbox_numeric_odeint.concepts.state_algebra_operations.example_expressions" title="Example expressions">Example
expressions</a>
</h4></div></div></div>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
Name
</p>
</th>
<th>
<p>
Expression
</p>
</th>
<th>
<p>
Type
</p>
</th>
<th>
<p>
Semantics
</p>
</th>
</tr></thead>
<tbody><tr>
<td>
<p>
Vector operation
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">algebra</span><span class="special">.</span><span class="identifier">for_each3</span><span class="special">(</span>
<span class="identifier">y</span> <span class="special">,</span>
<span class="identifier">x1</span> <span class="special">,</span>
<span class="identifier">x2</span> <span class="special">,</span>
<span class="identifier">Operations</span><span class="special">::</span><span class="identifier">scale_sum2</span><span class="special">&lt;</span>
<span class="identifier">Value1</span> <span class="special">,</span>
<span class="identifier">Value2</span> <span class="special">&gt;(</span>
<span class="identifier">a1</span> <span class="special">,</span>
<span class="identifier">a2</span> <span class="special">)</span>
<span class="special">)</span></code>
</p>
</td>
<td>
<p>
void
</p>
</td>
<td>
<p>
Calculates <span class="emphasis"><em><span class="bold"><strong>y</strong></span> = a1
<span class="bold"><strong>x1</strong></span> + a2 <span class="bold"><strong>x2</strong></span></em></span>
</p>
</td>
</tr></tbody>
</table></div>
</div>
</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; 2009 -2011 Karsten Ahnert and Mario Mulansky<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="dense_output_stepper.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../../odeint/reference.html"><img src="../../images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -25,7 +25,7 @@
functions</a>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.stepper.description"></a><h5>
<a name="id612222"></a>
<a name="id612383"></a>
<a class="link" href="stepper.html#boost_sandbox_numeric_odeint.concepts.stepper.description">Description</a>
</h5>
<p>
@ -41,7 +41,7 @@
Note that all error steppers are also basic steppers.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.stepper.refinement_of"></a><h5>
<a name="id612290"></a>
<a name="id612451"></a>
<a class="link" href="stepper.html#boost_sandbox_numeric_odeint.concepts.stepper.refinement_of">Refinement
of</a>
</h5>
@ -54,7 +54,7 @@
</li>
</ul></div>
<a name="boost_sandbox_numeric_odeint.concepts.stepper.notation"></a><h5>
<a name="id612327"></a>
<a name="id612489"></a>
<a class="link" href="stepper.html#boost_sandbox_numeric_odeint.concepts.stepper.notation">Notation</a>
</h5>
<div class="variablelist">
@ -95,7 +95,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.stepper.valid_expressions"></a><h5>
<a name="id612580"></a>
<a name="id612741"></a>
<a class="link" href="stepper.html#boost_sandbox_numeric_odeint.concepts.stepper.valid_expressions">Valid
Expressions</a>
</h5>
@ -187,7 +187,7 @@
</tbody>
</table></div>
<a name="boost_sandbox_numeric_odeint.concepts.stepper.models"></a><h5>
<a name="id612927"></a>
<a name="id613088"></a>
<a class="link" href="stepper.html#boost_sandbox_numeric_odeint.concepts.stepper.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">

View File

@ -20,7 +20,7 @@
<a name="boost_sandbox_numeric_odeint.concepts.symplectic_system"></a><a class="link" href="symplectic_system.html" title="Symplectic_System">Symplectic_System</a>
</h3></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.symplectic_system.description"></a><h5>
<a name="id609954"></a>
<a name="id610115"></a>
<a class="link" href="symplectic_system.html#boost_sandbox_numeric_odeint.concepts.symplectic_system.description">Description</a>
</h5>
<p>
@ -58,7 +58,7 @@
steppers like <code class="computeroutput"><span class="identifier">symplectic_rkn_sb3a_mclachlan</span></code>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.symplectic_system.notation"></a><h5>
<a name="id610071"></a>
<a name="id610232"></a>
<a class="link" href="symplectic_system.html#boost_sandbox_numeric_odeint.concepts.symplectic_system.notation">Notation</a>
</h5>
<div class="variablelist">
@ -107,7 +107,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.symplectic_system.valid_expressions"></a><h5>
<a name="id610333"></a>
<a name="id610495"></a>
<a class="link" href="symplectic_system.html#boost_sandbox_numeric_odeint.concepts.symplectic_system.valid_expressions">Valid
expressions</a>
</h5>

View File

@ -20,7 +20,7 @@
<a name="boost_sandbox_numeric_odeint.concepts.system"></a><a class="link" href="system.html" title="System">System</a>
</h3></div></div></div>
<a name="boost_sandbox_numeric_odeint.concepts.system.description"></a><h5>
<a name="id609486"></a>
<a name="id609648"></a>
<a class="link" href="system.html#boost_sandbox_numeric_odeint.concepts.system.description">Description</a>
</h5>
<p>
@ -34,7 +34,7 @@
and <a class="link" href="implicit_system.html" title="Implicit_System">Implicit_System</a>.
</p>
<a name="boost_sandbox_numeric_odeint.concepts.system.notation"></a><h5>
<a name="id609536"></a>
<a name="id609698"></a>
<a class="link" href="system.html#boost_sandbox_numeric_odeint.concepts.system.notation">Notation</a>
</h5>
<div class="variablelist">
@ -75,7 +75,7 @@
</dl>
</div>
<a name="boost_sandbox_numeric_odeint.concepts.system.valid_expressions"></a><h5>
<a name="id609781"></a>
<a name="id609942"></a>
<a class="link" href="system.html#boost_sandbox_numeric_odeint.concepts.system.valid_expressions">Valid
expressions</a>
</h5>

View File

@ -46,8 +46,50 @@
in a similar way and so on. The Euler method is of order 1, that means the
error at each step is <span class="emphasis"><em>~ dt<sup>2</sup></em></span>. This is, of course, not
very satisfying, which is why the Euler method is merely used for real life
problems and serves just as illustrative example. In odeint, the following
algorithms are implemented:
problems and serves just as illustrative example.
</p>
<p>
The main focus of odeint is to provide numerical methods implemented in a
way where the algorithm is completely independent on the data structure used
to represent the state <span class="emphasis"><em>x</em></span>. In doing so, odeint is applicable
for a broad variety of situations and it can be used with many other libraries.
Besides the usual case where the state is defined as a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span></code>
or a <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code>, we provide native support for the
following libraries:
</p>
<div class="itemizedlist"><ul type="disc">
<li>
<a href="http://www.boost.org/doc/libs/release/libs/numeric/ublas/index.html" target="_top">Boost.UBlas</a>
</li>
<li>
<a href="http://code.google.com/p/thrust/" target="_top">Thrust</a>, making
odeint naturally running on CUDA devices
</li>
<li>
gsl_vector for compatibility with the many numerical function in the
GSL
</li>
<li>
<a href="http://www.boost.org/doc/libs/release/libs/range/index.html" target="_top">Boost.Range</a>
</li>
<li>
<a href="http://www.boost.org/doc/libs/release/libs/fusion/index.html" target="_top">Boost.Fusion</a>
(the state type can be a fusion vector)
</li>
<li>
<a href="http://www.boost.org/doc/libs/release/libs/units/index.html" target="_top">Boost.Units</a>
</li>
<li>
<a href="http://software.intel.com/en-us/articles/intel-mkl/" target="_top">Intel
Math Kernel Library</a> for maximum performance
</li>
<li>
<a href="http://www.boost.org/doc/libs/1_47_0/libs/graph/doc/table_of_contents.html" target="_top">Boost.Graph</a>
(still experimentally)
</li>
</ul></div>
<p>
In odeint, the following algorithms are implemented:
</p>
<div class="table">
<a name="boost_sandbox_numeric_odeint.getting_started.overview.stepper_algorithms"></a><p class="title"><b>Table&#160;1.1.&#160;Stepper Algorithms</b></p>

View File

@ -36,7 +36,7 @@
functions make use of step-size control or dense output.
</p>
<a name="boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.equidistant_observer_calls"></a><h5>
<a name="id606986"></a>
<a name="id607148"></a>
<a class="link" href="integrate_functions.html#boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.equidistant_observer_calls">Equidistant
observer calls</a>
</h5>
@ -110,7 +110,7 @@
</li>
</ul></div>
<a name="boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.observer_calls_at_each_step"></a><h5>
<a name="id607529"></a>
<a name="id607691"></a>
<a class="link" href="integrate_functions.html#boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.observer_calls_at_each_step">Observer
calls at each step</a>
</h5>
@ -180,7 +180,7 @@
</li>
</ul></div>
<a name="boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.observer_calls_at_given_time_points"></a><h5>
<a name="id608042"></a>
<a name="id608204"></a>
<a class="link" href="integrate_functions.html#boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.observer_calls_at_given_time_points">Observer
calls at given time points</a>
</h5>
@ -255,7 +255,7 @@
</li>
</ul></div>
<a name="boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.integrate_a_given_number_of_steps"></a><h5>
<a name="id608651"></a>
<a name="id608813"></a>
<a class="link" href="integrate_functions.html#boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.integrate_a_given_number_of_steps">Integrate
a given number of steps</a>
</h5>
@ -313,7 +313,7 @@
<span class="special">+</span> <span class="identifier">n</span><span class="special">*</span><span class="identifier">dt</span></code>.
</p>
<a name="boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.convenience_integrate_function"></a><h5>
<a name="id609095"></a>
<a name="id609256"></a>
<a class="link" href="integrate_functions.html#boost_sandbox_numeric_odeint.odeint_in_detail.integrate_functions.convenience_integrate_function">Convenience
integrate function</a>
</h5>

View File

@ -94,6 +94,8 @@
Stepper</a></span></dt>
<dt><span class="section"><a href="boost_sandbox_numeric_odeint/concepts/dense_output_stepper.html">Dense
Output Stepper</a></span></dt>
<dt><span class="section"><a href="boost_sandbox_numeric_odeint/concepts/state_algebra_operations.html">State
Algebra Operations</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="odeint/reference.html">Reference</a></span></dt>
<dt><span class="section"><a href="boost_sandbox_numeric_odeint/old_concepts.html">Old Concepts</a></span></dt>
@ -124,7 +126,7 @@
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"><p><small>Last revised: August 19, 2011 at 17:39:51 GMT</small></p></td>
<td align="left"><p><small>Last revised: August 22, 2011 at 18:17:55 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>

View File

@ -6,14 +6,14 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="../index.html" title="Chapter&#160;1.&#160;boost.sandbox.numeric.odeint">
<link rel="up" href="../index.html" title="Chapter&#160;1.&#160;boost.sandbox.numeric.odeint">
<link rel="prev" href="../boost_sandbox_numeric_odeint/concepts/dense_output_stepper.html" title="Dense Output Stepper">
<link rel="prev" href="../boost_sandbox_numeric_odeint/concepts/state_algebra_operations.html" title="State Algebra Operations">
<link rel="next" href="../boost_sandbox_numeric_odeint/old_concepts.html" title="Old Concepts">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr><td valign="top"></td></tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../boost_sandbox_numeric_odeint/concepts/dense_output_stepper.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="../boost_sandbox_numeric_odeint/old_concepts.html"><img src="../images/next.png" alt="Next"></a>
<a accesskey="p" href="../boost_sandbox_numeric_odeint/concepts/state_algebra_operations.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="../boost_sandbox_numeric_odeint/old_concepts.html"><img src="../images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="odeint.reference"></a>Reference</h2></div></div></div></div>
@ -27,7 +27,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../boost_sandbox_numeric_odeint/concepts/dense_output_stepper.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="../boost_sandbox_numeric_odeint/old_concepts.html"><img src="../images/next.png" alt="Next"></a>
<a accesskey="p" href="../boost_sandbox_numeric_odeint/concepts/state_algebra_operations.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="../boost_sandbox_numeric_odeint/old_concepts.html"><img src="../images/next.png" alt="Next"></a>
</div>
</body>
</html>

View File

@ -32,6 +32,7 @@ boost_sandbox_numeric_odeint/concepts/stepper.html
boost_sandbox_numeric_odeint/concepts/error_stepper.html
boost_sandbox_numeric_odeint/concepts/controlled_stepper.html
boost_sandbox_numeric_odeint/concepts/dense_output_stepper.html
boost_sandbox_numeric_odeint/concepts/state_algebra_operations.html
odeint/reference.html
boost_sandbox_numeric_odeint/old_concepts.html
boost_sandbox_numeric_odeint/old_concepts/basic_stepper.html