summaryrefslogtreecommitdiff
path: root/libs/numeric/odeint/doc/examples_table.qbk
blob: e28b7cd7a712d8fd6c1a40377dc45ae091ba6298 (plain)
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
[/============================================================================
  Boost.odeint

  Copyright 2011-2013 Karsten Ahnert
  Copyright 2011-2012 Mario Mulansky
  Copyright 2012 Sylwester Arabas
  Copyright 2013 Pascal Germroth

  Use, modification and distribution is subject to the Boost Software License,
  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]


[table Examples Overview
  [[File] [Brief Description]]

  [[[github_link examples/bind_member_functions.cpp bind_member_functions.cpp]]
  [This examples shows how member functions can be used as system functions in odeint.]]

  [[[github_link examples/bind_member_functions.cpp bind_member_functions_cpp11.cpp]]
  [This examples shows how member functions can be used as system functions in odeint with `std::bind` in C++11.]]

  [[[github_link examples/bulirsch_stoer.cpp bulirsch_stoer.cpp]]
  [Shows the usage of the Bulirsch-Stoer method.]]

  [[[github_link examples/chaotic_system.cpp chaotic_system.cpp]]
  [The chaotic system examples integrates the Lorenz system and calculates the Lyapunov exponents.]]

  [[[github_link 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 examples/fpu.cpp fpu.cpp]]
  [The Fermi-Pasta-Ulam (FPU) example shows how odeint can be used to integrate lattice systems.]]

  [[[github_link examples/generation_functions.cpp generation_functions.cpp]]
  [Shows skeletal code on how to implement own factory functions.]]

  [[[github_link 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 examples/harmonic_oscillator_units.cpp harmonic_oscillator_units.cpp]]
  [This examples shows how __boost_units can be used with odeint.]]

  [[[github_link examples/heun.cpp heun.cpp]]
  [The Heun example shows how an custom Runge-Kutta stepper can be created with odeint generic Runge-Kutta method.]]

  [[[github_link examples/list_lattice.cpp list_lattice.cpp]]
  [Example of a phase lattice integration using `std::list` as state type.]]

  [[[github_link 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 examples/my_vector.cpp my_vector.cpp]]
  [Simple example showing how to get odeint to work with a self-defined vector type.]]

  [[[github_link 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 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 examples/simple1d.cpp simple1d.cpp]]
  [Integrating a simple, one-dimensional ODE showing the usage of integrate- and generate-functions.]]

  [[[github_link examples/solar_system.cpp solar_system.cpp]]
  [The solar system example shows the usage of the symplectic solvers.]]

  [[[github_link examples/stepper_details.cpp stepper_details.cpp]]
  [Trivial example showing the usability of the several stepper classes.]]

  [[[github_link 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 examples/stochastic_euler.cpp stochastic_euler.cpp]]
  [Implementation of a custom stepper - the stochastic euler -  for solving stochastic differential equations.]]

  [[[github_link examples/stuart_landau.cpp stuart_landau.cpp]]
  [The Stuart-Landau example shows how odeint can be used with complex state types.]]

  [[[github_link 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 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 oscillator.]]

  [[[github_link examples/gmpxx/lorenz_gmpxx.cpp gmpxx/lorenz_gmpxx.cpp]]
  [This examples integrates the Lorenz system by means of an arbitrary precision type.]]

  [[[github_link examples/mtl/gauss_packet.cpp mtl/gauss_packet.cpp]]
  [The MTL-Gauss-packet example shows how the MTL can be easily used with odeint.]]

  [[[github_link examples/mtl/implicit_euler_mtl.cpp mtl/implicit_euler_mtl.cpp]]
  [This examples shows the usage of the MTL implicit Euler method with a sparse matrix type.]]

  [[[github_link examples/thrust/phase_oscillator_ensemble.cu thrust/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 examples/thrust/phase_oscillator_chain.cu thrust/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 examples/thrust/lorenz_parameters.cu thrust/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 examples/thrust/relaxation.cu thrust/relaxation.cu]]
  [Another examples for the usage of Thrust.]]

  [[[github_link examples/ublas/lorenz_ublas.cpp ublas/lorenz_ublas.cpp]]
  [This example shows how the ublas vector types can be used with odeint.]]

  [[[github_link examples/vexcl/lorenz_ensemble.cpp vexcl/lorenz_ensemble.cpp]]
  [This example shows how the VexCL - a framework for OpenCL computation - can be used with odeint.]]

  [[[github_link examples/openmp/lorenz_ensemble_simple.cpp openmp/lorenz_ensemble_simple.cpp]]
  [OpenMP Lorenz attractor parameter study with continuous data.]]

  [[[github_link examples/openmp/lorenz_ensemble.cpp openmp/lorenz_ensemble.cpp]]
  [OpenMP Lorenz attractor parameter study with split data.]]

  [[[github_link examples/openmp/lorenz_ensemble.cpp openmp/lorenz_ensemble_nested.cpp]]
  [OpenMP Lorenz attractor parameter study with nested `vector_space_algebra`.]]

  [[[github_link examples/openmp/phase_chain.cpp openmp/phase_chain.cpp]]
  [OpenMP nearest neighbour coupled phase chain with continuous state.]]

  [[[github_link examples/openmp/phase_chain_omp_state.cpp openmp/phase_chain_omp_state.cpp]]
  [OpenMP nearest neighbour coupled phase chain with split state.]]

  [[[github_link examples/mpi/phase_chain.cpp mpi/phase_chain.cpp]]
  [MPI nearest neighbour coupled phase chain.]]

  [[[github_link examples/2d_lattice/spreading.cpp 2d_lattice/spreading.cpp]]
  [This examples shows how a `vector< vector< T > >` can be used a state type for odeint and how a resizing mechanism of this state can be implemented.]]

  [[[github_link examples/quadmath/black_hole.cpp quadmath/black_hole.cpp]]
  [This examples shows how gcc libquadmath can be used with odeint. It provides a high precision floating point type which is adapted to odeint in this example.]]
  
  [[[github_link examples/molecular_dynamics.cpp molecular_dynamics.cpp]]
  [A very basic molecular dynamics simulation with the Velocity-Verlet method.]]

]