Object-oriented Scientific Computing Library: Version 0.910
Public Member Functions | Data Fields | Protected Member Functions | Protected Attributes
ode_bv_mshoot< func_t, mat_t, vec_t, alloc_vec_t, alloc_t, vec_int_t > Class Template Reference

Solve boundary-value ODE problems by multishooting with a generic nonlinear solver. More...

#include <ode_bv_mshoot.h>

Inheritance diagram for ode_bv_mshoot< func_t, mat_t, vec_t, alloc_vec_t, alloc_t, vec_int_t >:
ode_bv_solve

Detailed Description

template<class func_t = ode_funct<>, class mat_t = omatrix_base, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc, class vec_int_t = ovector_int_base>
class ode_bv_mshoot< func_t, mat_t, vec_t, alloc_vec_t, alloc_t, vec_int_t >

This class is experimental.

Default template arguments

Idea for Future:
Make a class which performs an iterative linear solver which uses sparse matrices like ode_it_solve?

Definition at line 52 of file ode_bv_mshoot.h.

Public Member Functions

int solve_final_value (double h, size_t n, size_t n_bound, vec_t &x_bound, mat_t &y_bound, vec_int_t &index, func_t &derivs)
 Solve the boundary-value problem and store the solution.
template<class mat_row_t >
int solve_store (double h, size_t n, size_t n_bound, vec_t &x_bound, mat_t &y_bound, vec_int_t &index, size_t &n_sol, vec_t &x_sol, mat_t &y_sol, mat_t &dydx_sol, mat_t &yerr_sol, func_t &derivs)
 Solve the boundary-value problem and store the solution.
int set_iv (ode_iv_solve< func_t, vec_t, alloc_vec_t, alloc_t > &ois)
 Set initial value solver.
int set_mroot (mroot< mm_funct<> > &root)
 Set the equation solver.

Data Fields

ode_iv_solve< func_t, vec_t,
alloc_vec_t, alloc_t > 
def_ois
 The default initial value solver.
gsl_mroot_hybrids< mm_funct<> > def_mroot
 The default equation solver.

Protected Member Functions

int solve_fun (size_t nv, const vec_t &tx, vec_t &ty)
 The shooting function to be solved by the multidimensional solver.

Protected Attributes

ode_iv_solve< func_t, vec_t,
alloc_vec_t, alloc_t > * 
oisp
 The solver for the initial value problem.
mroot< mm_funct<> > * mrootp
 The equation solver.
vec_int_t * l_index
 The index defining the boundary conditions.
vec_t * l_xbound
 Storage for the starting vector.
mat_t * l_ybound
 Storage for the ending vector.
double l_h
 Storage for the stepsize.
func_t * l_derivs
 The functions to integrate.
size_t l_n
 The number of functions.
size_t l_nbound
 The number of boundaries.
size_t l_lhs_unks
 The number of unknowns on the LHS.
alloc_t ao
 Vector allocation object.
size_t mem_size
 Size of recent allocation.
Temporary storage for \ref solve_fun()
alloc_vec_t sy
alloc_vec_t sy2
alloc_vec_t syerr
alloc_vec_t sdydx
alloc_vec_t sdydx2

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Documentation generated with Doxygen. Provided under the GNU Free Documentation License (see License Information).

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.