completed examples list in docs

This commit is contained in:
Mario Mulansky 2012-05-23 22:30:11 +02:00
parent e7fd6f3a27
commit 7609cf11b4
6 changed files with 87 additions and 22 deletions

View File

@ -120,7 +120,7 @@ Time integrate_n_steps(
{
stepper.do_step( system );
}
else
else if ( stepper.current_time() < end_time )
{ // do the last step ending exactly on the end point
stepper.initialize( stepper.current_state() , stepper.current_time() , end_time - stepper.current_time() );
stepper.do_step( system );

View File

@ -24,7 +24,7 @@
<div><p class="copyright">Copyright &#169; 2009-2011 Karsten Ahnert
and Mario Mulansky</p></div>
<div><div class="legalnotice">
<a name="odeint.legal"></a><p>
<a name="id566702"></a><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>
@ -94,7 +94,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: May 21, 2012 at 21:01:33 GMT</small></p></td>
<td align="left"><p><small>Last revised: May 23, 2012 at 20:24:00 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>

View File

@ -1,18 +1,83 @@
[table Examples Overview
[[File] [Brief Description]]
[[[github_link libs/numeric/odeint/examples/harmonic_oscillator.cpp harmonic_oscillator.cpp]] [The harmonic oscillator examples gives a brief introduction to odeint and shows the usage of the classical Runge-Kutta-solvers.]]
[[[github_link libs/numeric/odeint/examples/solar_system.cpp solar_system.cpp]] [The solar system example shows the usage of the symplectic solvers.]]
[[[github_link libs/numeric/odeint/examples/chaotic_system.cpp chaotic_system.cpp]] [The chaotic system examples integrates the Lorenz system and calculates the Lyapunov exponents.]]
[[[github_link libs/numeric/odeint/examples/stiff_system.cpp stiff_system.cpp]] [The stiff system example shows the usage of the stiff solvers using the Jacobian of the system function.]]
[[[github_link libs/numeric/odeint/examples/stuart_landau.cpp stuart_landau.cpp]] [The Stuart-Landau example shows how odeint can be used with complex state types.]]
[[[github_link libs/numeric/odeint/examples/fpu.cpp fpu.cpp]] [The Fermi-Pasta-Ulam (FPU) example shows how odeint can be used to integrate lattice systems.]]
[[[github_link libs/numeric/odeint/examples/phase_oscillator_ensemble.cpp phase_oscillator_ensemble.cpp]] [The phase oscillator ensemble example shows how globally coupled oscillators can be analyzed and how statistical measures can be computed during integration.]]
[[[github_link libs/numeric/odeint/examples/harmonic_oscillator_units.cpp harmonic_oscillator_units.cpp]] [This examples shows how __boost_units can be used with odeint.]]
[[[github_link libs/numeric/odeint/examples/two_dimensional_phase_lattice.cpp two_dimensional_phase_lattice.cpp]] [The 2D phase oscillator example shows how a two-dimensional lattice can used with odeint and how matrix types can be used as state types in odeint.]]
[[[github_link libs/numeric/odeint/examples/lorenz_gmpxx.cpp lorenz_gmpxx.cpp]] [This examples integrates the Lorenz system by means of an arbitrary precision type.]]
[[[github_link libs/numeric/odeint/examples/thrust/phase_oscillator_ensemble.cu phase_oscillator_ensemble.cu]] [The Thrust phase oscillator ensemble example shows how globally coupled oscillators can be analyzed with Thrust and CUDA, employing the power of modern graphic devices.]]
[[[github_link libs/numeric/odeint/examples/thrust/phase_oscillator_chain.cu phase_oscillator_chain.cu]] [The Thrust phase oscillator chain example shows how chains of nearest neighbor coupled oscillators can be integrated with Thrust and odeint.]]
[[[github_link libs/numeric/odeint/examples/thrust/lorenz_parameters.cu lorenz_parameters.cu]] [The Lorenz parameters examples show how ensembles of ordinary differential equations can be solved by means of Thrust to study the dependence of an ODE on some parameters.]]
[[[github_link libs/numeric/odeint/examples/mtl/gauss_packet.cpp gauss_packet.cpp]] [The MTL-Gauss-packet example shows how the MTL can be easily used with odeint.]]
[[[github_link libs/numeric/odeint/examples/stochastic_euler.cpp stochastic_euler.cpp]] [Implementation of a custom stepper - the stochastic euler - for solving stochastic differential equations.]]
[[[github_link libs/numeric/odeint/examples/harmonic_oscillator.cpp
harmonic_oscillator.cpp]] [The harmonic oscillator examples gives a brief
introduction to odeint and shows the usage of the classical
Runge-Kutta-solvers.]]
[[[github_link libs/numeric/odeint/examples/simple1d.cpp
simple1d.cpp]] [Integrating a simple, one-dimensional ODE showing the usage
of integrate- and generate-functions.]]
[[[github_link libs/numeric/odeint/examples/elliptic_functions.cpp
elliptic_functions.cpp]] [Example calculating the elliptic functions using
Bulirsch-Stoer and Runge-Kutta-Dopri5 Steppers with dense output.]]
[[[github_link libs/numeric/odeint/examples/solar_system.cpp
solar_system.cpp]] [The solar system example shows the usage of the
symplectic solvers.]]
[[[github_link libs/numeric/odeint/examples/chaotic_system.cpp
chaotic_system.cpp]] [The chaotic system examples integrates the Lorenz
system and calculates the Lyapunov exponents.]]
[[[github_link libs/numeric/odeint/examples/stiff_system.cpp
stiff_system.cpp]] [The stiff system example shows the usage of the stiff
solvers using the Jacobian of the system function.]]
[[[github_link libs/numeric/odeint/examples/van_der_pol_stiff.cpp
van_der_pol_stiff.cpp]] [This stiff system example again shows the usage of
the stiff solvers by integrating the van der Pol osscillator.]]
[[[github_link libs/numeric/odeint/examples/stuart_landau.cpp
stuart_landau.cpp]] [The Stuart-Landau example shows how odeint can be used
with complex state types.]]
[[[github_link libs/numeric/odeint/examples/fpu.cpp fpu.cpp]] [The
Fermi-Pasta-Ulam (FPU) example shows how odeint can be used to integrate
lattice systems.]]
[[[github_link libs/numeric/odeint/examples/phase_oscillator_ensemble.cpp
phase_oscillator_ensemble.cpp]] [The phase oscillator ensemble example shows
how globally coupled oscillators can be analyzed and how statistical
measures can be computed during integration.]]
[[[github_link libs/numeric/odeint/examples/stepper_details.cpp
stepper_details.cpp]] [Trivial example showing the usability of the several
stepper classes.]]
[[[github_link libs/numeric/odeint/examples/harmonic_oscillator_units.cpp
harmonic_oscillator_units.cpp]] [This examples shows how __boost_units can
be used with odeint.]]
[[[github_link
libs/numeric/odeint/examples/two_dimensional_phase_lattice.cpp
two_dimensional_phase_lattice.cpp]] [The 2D phase oscillator example shows
how a two-dimensional lattice works with odeint and how matrix types can
be used as state types in odeint.]]
[[[github_link libs/numeric/odeint/examples/resizing_lattice.cpp
resizing_lattice.cpp]] [Shows the strength of odeint's memory management by
simulating a Hamiltonian system on an expanding lattice.]]
[[[github_link libs/numeric/odeint/examples/list_lattice.cpp
list_lattice.cpp]] [Example of a phase lattice integration using `std::list`
as state type.]]
[[[github_link libs/numeric/odeint/examples/lorenz_point.cpp
lorenz_point.cpp]] [Alternative way of integrating lorenz by using a self
defined point3d data type as state type.]]
[[[github_link libs/numeric/odeint/examples/lorenz_gmpxx.cpp
lorenz_gmpxx.cpp]] [This examples integrates the Lorenz system by means of
an arbitrary precision type.]]
[[[github_link libs/numeric/odeint/examples/my_vector.cpp my_vector.cpp]]
[Simple example showing how to get odeint to work with a self-defined vector
type.]]
[[[github_link
libs/numeric/odeint/examples/thrust/phase_oscillator_ensemble.cu
phase_oscillator_ensemble.cu]] [The Thrust phase oscillator ensemble example
shows how globally coupled oscillators can be analyzed with Thrust and CUDA,
employing the power of modern graphic devices.]]
[[[github_link libs/numeric/odeint/examples/thrust/phase_oscillator_chain.cu
phase_oscillator_chain.cu]] [The Thrust phase oscillator chain example shows
how chains of nearest neighbor coupled oscillators can be integrated with
Thrust and odeint.]]
[[[github_link libs/numeric/odeint/examples/thrust/lorenz_parameters.cu
lorenz_parameters.cu]] [The Lorenz parameters examples show how ensembles of
ordinary differential equations can be solved by means of Thrust to study
the dependence of an ODE on some parameters.]]
[[[github_link libs/numeric/odeint/examples/mtl/gauss_packet.cpp
gauss_packet.cpp]] [The MTL-Gauss-packet example shows how the MTL can be
easily used with odeint.]]
[[[github_link libs/numeric/odeint/examples/stochastic_euler.cpp
stochastic_euler.cpp]] [Implementation of a custom stepper - the stochastic
euler - for solving stochastic differential equations.]]
[[[github_link libs/numeric/odeint/examples/generation_functions.cpp
generation_functions.cpp]] [Shows skeletal code on how to implemente own
factory functions.]]
]

View File

@ -13,8 +13,6 @@
#include <boost/numeric/odeint/config.hpp>
#include <boost/lambda/lambda.hpp>
#include <boost/numeric/odeint.hpp>
#include <boost/numeric/odeint/stepper/bulirsch_stoer.hpp>
#include <boost/numeric/odeint/stepper/bulirsch_stoer_dense_out.hpp>

View File

@ -100,8 +100,7 @@ int main()
{
point3D x( 10.0 , 5.0 , 5.0 );
//typedef runge_kutta4< point3D , double , point3D ,
// double , vector_space_algebra > stepper;
// point type defines it's own operators -> use vector_space_algebra !
typedef runge_kutta_dopri5< point3D , double , point3D ,
double , vector_space_algebra > stepper;
integrate_adaptive( make_controlled<stepper>( 1E-8 , 1E-8 ) , lorenz , x ,

View File

@ -54,5 +54,8 @@ int main()
state_type x(3);
x[0] = 5.0 ; x[1] = 10.0 ; x[2] = 10.0;
// my_vector works with range_algebra as it's derived from std::vector
// no further work is required
integrate_const( runge_kutta4< state_type >() , lorenz , x , 0.0 , 10.0 , 0.1 );
}