Class ode_bv_shoot (o2scl)¶
-
template<class func_t = ode_funct, class vec_t = boost::numeric::ublas::vector<double>, class vec_int_t = boost::numeric::ublas::vector<int>>
class 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 >
Subclassed by o2scl::ode_bv_shoot_grid< mat_t, mat_row_t, func_t, vec_t, vec_int_t >
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
-
inline ode_bv_shoot()¶
-
inline virtual ~ode_bv_shoot()¶
-
inline void allocate(size_t n)¶
Allocate internal storage.
-
inline 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
ninitial values of the functions inystart, this function integrates the ODEs specified inderivsover the interval fromx0tox1with 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 ofyendandyerrare ignored.
-
template<class mat_t, class mat_row_t>
inline int solve_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.
-
inline 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.