Private Member Functions | List of all members
o2scl::mroot_hybrids_eigen< func_t, vec_t, mat_t, jfunc_t > Class Template Reference

A version of mroot_hybrids which uses Eigen for the QR decomposition. More...

#include <mroot_hybrids.h>

Inheritance diagram for o2scl::mroot_hybrids_eigen< func_t, vec_t, mat_t, jfunc_t >:
o2scl::mroot_hybrids< func_t, vec_t, mat_t, jfunc_t > o2scl::mroot< func_t, vec_t, jfunc_t > o2scl::mroot_hybrids_base

Private Member Functions

virtual void qr_decomp_unpack ()
 

Additional Inherited Members

- Public Member Functions inherited from o2scl::mroot_hybrids< func_t, vec_t, mat_t, jfunc_t >
virtual int set_jacobian (jacobian< func_t, vec_t, mat_t > &j)
 Set the automatic Jacobian object.
 
int iterate ()
 Perform an iteration. More...
 
void allocate (size_t n)
 Allocate the memory.
 
virtual const char * type ()
 Return the type,"mroot_hybrids".
 
virtual int msolve_de (size_t nn, vec_t &xx, func_t &ufunc, jfunc_t &dfunc)
 Solve func with derivatives dfunc using x as an initial guess, returning x. More...
 
virtual int msolve (size_t nn, vec_t &xx, func_t &ufunc)
 Solve ufunc using xx as an initial guess, returning xx.
 
int set (size_t nn, vec_t &ax, func_t &ufunc)
 Set the function, the parameters, and the initial guess.
 
int set_de (size_t nn, vec_t &ax, func_t &ufunc, jfunc_t &dfunc)
 Set the function, the Jacobian, the parameters, and the initial guess.
 
- Public Member Functions inherited from o2scl::mroot< func_t, vec_t, jfunc_t >
template<class vec2_t , class vec3_t >
int print_iter (size_t n, const vec2_t &x, const vec3_t &y, int iter, double value=0.0, double limit=0.0, std::string comment="")
 Print out iteration information. More...
 
- Public Attributes inherited from o2scl::mroot_hybrids< func_t, vec_t, mat_t, jfunc_t >
bool shrink_step
 If true, iterate() will shrink the step-size automatically if the function returns a non-zero value (default true) More...
 
bool extra_finite_check
 If true, double check that the input function values are finite (default true)
 
bool int_scaling
 If true, use the internal scaling method (default true)
 
jacobian_gsl< func_t, vec_t, mat_t > def_jac
 Default automatic Jacobian object.
 
vec_t f
 The value of the function at the present iteration. More...
 
vec_t x
 The present solution.
 
- Public Attributes inherited from o2scl::mroot< func_t, vec_t, jfunc_t >
double tol_rel
 The maximum value of the functions for success (default 1.0e-8)
 
double tol_abs
 The minimum allowable stepsize (default 1.0e-12)
 
int verbose
 Output control (default 0)
 
int ntrial
 Maximum number of iterations (default 100)
 
int last_ntrial
 The number of iterations for in the most recent minimization.
 
bool err_nonconv
 If true, call the error handler if msolve() or msolve_de() does not converge (default true)
 
- Protected Member Functions inherited from o2scl::mroot_hybrids< func_t, vec_t, mat_t, jfunc_t >
virtual int solve_set (size_t nn, vec_t &xx, func_t &ufunc)
 Finish the solution after set() or set_de() has been called.
 
- Protected Attributes inherited from o2scl::mroot_hybrids< func_t, vec_t, mat_t, jfunc_t >
int iter
 Number of iterations.
 
size_t ncfail
 Compute the number of failures.
 
size_t ncsuc
 Compute the number of successes.
 
size_t nslow1
 The number of times the actual reduction is less than 0.001.
 
size_t nslow2
 The number of times the actual reduction is less than 0.1.
 
double fnorm
 The norm of the current function value.
 
double delta
 The limit of the Nuclidean norm.
 
mat_t J
 Jacobian.
 
mat_t q
 Q matrix from QR decomposition.
 
mat_t r
 R matrix from QR decomposition.
 
ubvector diag
 The diagonal elements.
 
ubvector qtf
 The value of $ Q^T f $.
 
ubvector newton
 The Newton direction.
 
ubvector gradient
 The gradient direction.
 
ubvector df
 The change in the function value.
 
ubvector qtdf
 The value of $ Q^T \cdot \mathrm{df} $.
 
ubvector rdx
 The value of $ R \cdot \mathrm{dx} $.
 
ubvector w
 The value of $ w=(Q^T df-R dx)/|dx| $.
 
ubvector v
 The value of $ v=D^2 dx/|dx| $.
 
jfunc_t * jac
 The user-specified Jacobian.
 
jacobian< func_t, vec_t, mat_t > * ajac
 The automatic Jacobian.
 
vec_t dx
 The value of the derivative.
 
vec_t x_trial
 Trial root.
 
vec_t f_trial
 Trial function value.
 
size_t dim
 The number of equations and unknowns.
 
bool jac_given
 True if the jacobian has been given.
 
func_t * fnewp
 The user-specified function.
 
bool set_called
 True if "set" has been called.
 

Detailed Description

template<class func_t, class vec_t, class mat_t, class jfunc_t>
class o2scl::mroot_hybrids_eigen< func_t, vec_t, mat_t, jfunc_t >

Note
This class template is only defined if Eigen was enabled when O2scl was installed.

Definition at line 1144 of file mroot_hybrids.h.


The documentation for this class was generated from the following file:

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