Object-oriented Scientific Computing Library: Version 0.910
Public Member Functions | Data Fields | Protected Member Functions | Protected Attributes
gsl_mroot_broyden< func_t, vec_t, alloc_vec_t, alloc_t, mat_t, alloc_mat_t, mat_alloc_t, jfunc_t > Class Template Reference

Multidimensional root-finding using Broyden's method (GSL) More...

#include <gsl_mroot_broyden.h>

Inheritance diagram for gsl_mroot_broyden< func_t, vec_t, alloc_vec_t, alloc_t, mat_t, alloc_mat_t, mat_alloc_t, jfunc_t >:
mroot< func_t, vec_t, jfunc_t >

Detailed Description

template<class func_t = mm_funct<>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc, class mat_t = omatrix_base, class alloc_mat_t = omatrix, class mat_alloc_t = omatrix_alloc, class jfunc_t = jac_funct<vec_t,mat_t>>
class gsl_mroot_broyden< func_t, vec_t, alloc_vec_t, alloc_t, mat_t, alloc_mat_t, mat_alloc_t, jfunc_t >

Experimental.

See Broyden65.

Definition at line 45 of file gsl_mroot_broyden.h.

Public Member Functions

void allocate (size_t n)
 Allocate memory.
double enorm (size_t nvar, const vec_t &ff)
 Euclidean norm.
void set (func_t &func, size_t nvar, vec_t &x, vec_t &f, vec_t &dx)
 Set the function, initial guess, and provide vectors to store function values and stepsize.
int iterate ()
 Perform an iteration.
virtual int msolve (size_t n, vec_t &x, func_t &func)
 Desc.
void free ()
 Desc.

Data Fields

simple_jacobian< func_t, vec_t,
mat_t, alloc_vec_t, alloc_t > 
def_jac
 Default Jacobian object.

Protected Member Functions

void clear ()
 Clear allocated vectors and matrices.

Protected Attributes

omatrix H
 Desc.
omatrix lu
 LU decomposition.
permutation perm
 Permutation object for the LU decomposition.
ovector v
 Desc.
ovector w
 Desc.
ovector y
 Desc.
ovector p
 Desc.
ovector fnew
 Desc.
ovector x_trial
 Desc.
double phi
 Desc.
alloc_t ao
 Memory allocation object.
alloc_vec_t dx_int
 Stepsize vector.
alloc_vec_t f_int
 Function value vector.
func_t * user_func
 A pointer to the user-specified function.
vec_t * user_f
 Function values.
vec_t * user_x
 Initial guess and current solution.
vec_t * user_dx
 Initial and current step.
size_t user_nvar
 Number of variables.
size_t mem_size
 Size of memory allocated.
jacobian< func_t, vec_t, mat_t > * ajac
 Jacobian.

Member Function Documentation

template<class func_t = mm_funct<>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc, class mat_t = omatrix_base, class alloc_mat_t = omatrix, class mat_alloc_t = omatrix_alloc, class jfunc_t = jac_funct<vec_t,mat_t>>
void gsl_mroot_broyden< func_t, vec_t, alloc_vec_t, alloc_t, mat_t, alloc_mat_t, mat_alloc_t, jfunc_t >::clear ( ) [inline, protected]

This function is called by set() before each solve.

Definition at line 113 of file gsl_mroot_broyden.h.

template<class func_t = mm_funct<>, class vec_t = ovector_base, class alloc_vec_t = ovector, class alloc_t = ovector_alloc, class mat_t = omatrix_base, class alloc_mat_t = omatrix, class mat_alloc_t = omatrix_alloc, class jfunc_t = jac_funct<vec_t,mat_t>>
void gsl_mroot_broyden< func_t, vec_t, alloc_vec_t, alloc_t, mat_t, alloc_mat_t, mat_alloc_t, jfunc_t >::set ( func_t &  func,
size_t  nvar,
vec_t &  x,
vec_t &  f,
vec_t &  dx 
) [inline]

The initial values of f and dx are ignored.

Definition at line 187 of file gsl_mroot_broyden.h.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

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

Get Object-oriented Scientific Computing
Lib at SourceForge.net. Fast, secure and Free Open Source software
downloads.