Class ode_bv_mshoot (o2scl)¶
-
template<class func_t = ode_funct, class mat_t = boost::numeric::ublas::matrix<double>, class vec_t = boost::numeric::ublas::vector<double>, class vec_int_t = boost::numeric::ublas::vector<int>>
class ode_bv_mshoot : public o2scl::ode_bv_solve¶ Solve boundary-value ODE problems by multishooting with a generic nonlinear solver.
This class is experimental.
Default template arguments
func_t
- ode_functmat_t
- boost::numeric::ublas::matrix < double >vec_t
- boost::numeric::ublas::vector < double >vec_int_t
- boost::numeric::ublas::vector < int >- Idea for Future:
Make a class which performs an iterative linear solver which uses sparse matrices like ode_it_solve?
Temporary storage for \ref solve_fun()
-
size_t mem_size¶
Size of recent allocation.
Public Functions
-
inline ode_bv_mshoot()¶
-
inline virtual ~ode_bv_mshoot()¶
-
inline 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>
inline 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.
-
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.