Class ode_bv_shoot (o2scl)¶
-
template<class
func_t
= ode_funct, classvec_t
= boost::numeric::ublas::vector<double>, classvec_int_t
= boost::numeric::ublas::vector<int>>
classo2scl
::
ode_bv_shoot
: public o2scl::ode_bv_solve¶ Solve boundary-value ODE problems by shooting from one boundary to the other.
This class is experimental.
Documentation links for default template arguments
func_t
- ode_functvec_t
- boost::numeric::ublas::vector < double >vec_int_t
- boost::numeric::ublas::vector < int >
Temporary storage for \ref solve_fun()
-
size_t
mem_size
¶ Size of recent allocation.
Public Types
-
typedef boost::numeric::ublas::vector<double>
ubvector
¶
-
typedef boost::numeric::ublas::matrix<double>
ubmatrix
¶
Public Functions
-
ode_bv_shoot
()¶
-
~ode_bv_shoot
()¶
-
void
allocate
(size_t n)¶ Allocate internal storage.
-
int
solve_final_value
(double x0, double x1, double h, size_t n, vec_t &ystart, vec_t ¥d, vec_int_t &index, vec_t &yerr, vec_t &dydx_end, func_t &derivs)¶ Solve the boundary-value problem and store the solution.
Given the
n
initial values of the functions inystart
, this function integrates the ODEs specified inderivs
over the interval fromx0
tox1
with an initial stepsize ofh
. The final values of the function are given inyend
, the derivatives indydx_end
, and the associated errors are given inyerr
. The initial values ofyend
andyerr
are ignored.
-
template<class
mat_t
, classmat_row_t
>
intsolve_store
(double x0, double x1, double h, size_t n, vec_t &ystart, vec_t ¥d, vec_int_t &index, size_t &n_sol, vec_t &x_sol, mat_t &y_sol, mat_t &yerr_sol, mat_t &dydx_sol, func_t &derivs)¶ Solve the boundary-value problem and store the solution.
-
int
set_iv
(ode_iv_solve<func_t, vec_t> &ois)¶ Set initial value solver.
Public Members
-
ode_iv_solve<func_t, vec_t>
def_ois
¶ The default initial value solver.