Code-Eli  0.3.6
eli::mutil::nls::iterative_root_base< data__ > Class Template Reference

#include <iterative_root_base.hpp>

Inheritance diagram for eli::mutil::nls::iterative_root_base< data__ >:
Collaboration diagram for eli::mutil::nls::iterative_root_base< data__ >:

Public Types

typedef convergence_tester< data__ > error_tolerance_type
 
typedef convergence_tester< size_t > max_iteration_type
 
typedef error_tolerance_type::data_type tolerance_type
 
typedef max_iteration_type::data_type iteration_type
 

Public Member Functions

 iterative_root_base ()
 
 iterative_root_base (const iterative_root_base< data__ > &irb)
 
virtual ~iterative_root_base ()
 
void set_relative_tolerance (const tolerance_type &rel_tol)
 
tolerance_type get_relative_tolerance () const
 
void set_absolute_tolerance (const tolerance_type &abs_tol)
 
tolerance_type get_absolute_tolerance () const
 
void set_max_iteration (const iteration_type &mi)
 
iteration_type get_max_iteration () const
 
void enforce_both_tolerance (bool ebt)
 
bool enforce_both_tolerance () const
 
void disable_relative_tolerance ()
 
void disable_absolute_tolerance ()
 
const error_tolerance_typeget_tolerance_tester () const
 
const max_iteration_typeget_iteration_count_tester () const
 
const iteration_typeget_iteration_count () const
 

Static Public Attributes

static const int converged = 0
 
static const int max_iteration = 1
 
static const int no_root_found = 2
 

Protected Member Functions

bool test_converged (const iteration_type &it, const tolerance_type &relv, const tolerance_type &absv) const
 
bool max_iteration_reached (const iteration_type &it) const
 

Private Attributes

error_tolerance_type conv
 
max_iteration_type itmax
 
iteration_type itcnt
 

Member Typedef Documentation

template<typename data__>
typedef convergence_tester<data__> eli::mutil::nls::iterative_root_base< data__ >::error_tolerance_type
template<typename data__>
typedef convergence_tester<size_t> eli::mutil::nls::iterative_root_base< data__ >::max_iteration_type

Constructor & Destructor Documentation

template<typename data__>
eli::mutil::nls::iterative_root_base< data__ >::iterative_root_base ( )
inline

Here is the call graph for this function:

template<typename data__>
eli::mutil::nls::iterative_root_base< data__ >::iterative_root_base ( const iterative_root_base< data__ > &  irb)
inline
template<typename data__>
virtual eli::mutil::nls::iterative_root_base< data__ >::~iterative_root_base ( )
inlinevirtual

Member Function Documentation

template<typename data__>
void eli::mutil::nls::iterative_root_base< data__ >::disable_absolute_tolerance ( )
inline

Here is the call graph for this function:

template<typename data__>
void eli::mutil::nls::iterative_root_base< data__ >::disable_relative_tolerance ( )
inline

Here is the call graph for this function:

template<typename data__>
void eli::mutil::nls::iterative_root_base< data__ >::enforce_both_tolerance ( bool  ebt)
inline

Here is the call graph for this function:

template<typename data__>
bool eli::mutil::nls::iterative_root_base< data__ >::enforce_both_tolerance ( ) const
inline

Here is the call graph for this function:

template<typename data__>
tolerance_type eli::mutil::nls::iterative_root_base< data__ >::get_absolute_tolerance ( ) const
inline

Here is the call graph for this function:

template<typename data__>
const iteration_type& eli::mutil::nls::iterative_root_base< data__ >::get_iteration_count ( ) const
inline
template<typename data__>
const max_iteration_type& eli::mutil::nls::iterative_root_base< data__ >::get_iteration_count_tester ( ) const
inline
template<typename data__>
iteration_type eli::mutil::nls::iterative_root_base< data__ >::get_max_iteration ( ) const
inline

Here is the call graph for this function:

template<typename data__>
tolerance_type eli::mutil::nls::iterative_root_base< data__ >::get_relative_tolerance ( ) const
inline

Here is the call graph for this function:

template<typename data__>
const error_tolerance_type& eli::mutil::nls::iterative_root_base< data__ >::get_tolerance_tester ( ) const
inline
template<typename data__>
bool eli::mutil::nls::iterative_root_base< data__ >::max_iteration_reached ( const iteration_type it) const
inlineprotected

Here is the call graph for this function:

template<typename data__>
void eli::mutil::nls::iterative_root_base< data__ >::set_absolute_tolerance ( const tolerance_type abs_tol)
inline

Here is the call graph for this function:

template<typename data__>
void eli::mutil::nls::iterative_root_base< data__ >::set_max_iteration ( const iteration_type mi)
inline

Here is the call graph for this function:

template<typename data__>
void eli::mutil::nls::iterative_root_base< data__ >::set_relative_tolerance ( const tolerance_type rel_tol)
inline

Here is the call graph for this function:

template<typename data__>
bool eli::mutil::nls::iterative_root_base< data__ >::test_converged ( const iteration_type it,
const tolerance_type relv,
const tolerance_type absv 
) const
inlineprotected

Here is the call graph for this function:

Member Data Documentation

template<typename data__>
error_tolerance_type eli::mutil::nls::iterative_root_base< data__ >::conv
private
template<typename data__>
const int eli::mutil::nls::iterative_root_base< data__ >::converged = 0
static
template<typename data__>
iteration_type eli::mutil::nls::iterative_root_base< data__ >::itcnt
mutableprivate
template<typename data__>
max_iteration_type eli::mutil::nls::iterative_root_base< data__ >::itmax
private
template<typename data__>
const int eli::mutil::nls::iterative_root_base< data__ >::max_iteration = 1
static
template<typename data__>
const int eli::mutil::nls::iterative_root_base< data__ >::no_root_found = 2
static

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