Solve boundary-value ODE problems by shooting from one boundary to the other. More...
#include <ode_bv_solve.h>
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 > Definition at line 84 of file ode_bv_solve.h.
Public Types | |
| typedef boost::numeric::ublas::vector< double > | ubvector |
| typedef boost::numeric::ublas::matrix< double > | ubmatrix |
Public Member Functions | |
| 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. More... | |
| template<class mat_t , class mat_row_t > | |
| 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. | |
| int | set_iv (ode_iv_solve< func_t, vec_t > &ois) |
| Set initial value solver. | |
| int | set_mroot (mroot< mm_funct<> > &root) |
| Set the equation solver. | |
Public Attributes | |
| ode_iv_solve< func_t, vec_t > | def_ois |
| The default initial value solver. | |
| gsl_mroot_hybrids< mm_funct<> > | def_mroot |
| The default equation solver. | |
Public Attributes inherited from o2scl::ode_bv_solve | |
| int | verbose |
| Set output level. | |
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 > * | 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_ystart |
| Storage for the starting vector. | |
| vec_t * | l_yend |
| Storage for the ending vector. | |
| vec_t * | l_yerr |
| Storage for the starting vector. | |
| vec_t * | l_dydx_end |
| Storage for the ending vector. | |
| double | l_x0 |
| Storage for the starting point. | |
| double | l_x1 |
| Storage for the ending abcissa. | |
| 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 | mem_size |
| Size of recent allocation. | |
Temporary storage for \ref solve_fun() | |
| vec_t | sy |
| vec_t | sy2 |
| vec_t | syerr |
| vec_t | sdydx |
Additional Inherited Members | |
Static Public Attributes inherited from o2scl::ode_bv_solve | |
| static const int | unk =0 |
| Unknown on both the left and right boundaries. | |
| static const int | right =1 |
| Known on the right boundary. | |
| static const int | left =2 |
| Known on the left boundary. | |
| static const int | both =3 |
| Known on both the left and right boundaries. | |
|
inline |
Given the n initial values of the functions in ystart, this function integrates the ODEs specified in derivs over the interval from x0 to x1 with an initial stepsize of h. The final values of the function are given in yend, the derivatives in dydx_end, and the associated errors are given in yerr. The initial values of yend and yerr are ignored.
Definition at line 124 of file ode_bv_solve.h.
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).