MADNESS  version 0.9
Public Member Functions | Public Attributes | List of all members
madness::NonlinearSolverND< NDIM > Class Template Reference

A simple Krylov-subspace nonlinear equation solver. More...

#include <nonlinsol.h>

Public Member Functions

 NonlinearSolverND (unsigned int maxsub=10)
 
Function< double, NDIMupdate (const Function< double, NDIM > &u, const Function< double, NDIM > &r, const double rcondtol=1e-8, const double cabsmax=1000.0)
 Computes next trial solution vector. More...
 

Public Attributes

bool do_print
 

Detailed Description

template<size_t NDIM>
class madness::NonlinearSolverND< NDIM >

A simple Krylov-subspace nonlinear equation solver.

Constructor & Destructor Documentation

template<size_t NDIM>
madness::NonlinearSolverND< NDIM >::NonlinearSolverND ( unsigned int  maxsub = 10)
inline

Member Function Documentation

template<size_t NDIM>
Function<double,NDIM> madness::NonlinearSolverND< NDIM >::update ( const Function< double, NDIM > &  u,
const Function< double, NDIM > &  r,
const double  rcondtol = 1e-8,
const double  cabsmax = 1000.0 
)
inline

Computes next trial solution vector.

You are responsible for performing step restriction or line search (not necessary for linear problems).

Parameters
uCurrent solution vector
rCorresponding residual
Returns
Next trial solution vector
Parameters
[in]rcondtolrcond less than this will cause the subspace to be shrunk due to linear dependence
[in]cabsmaxmaximum element of c greater than this will cause the subspace to be shrunk due to linear dependence

References c, madness::check_linear_dependence(), madness::Function< T, NDIM >::compress(), madness::copy(), madness::Function< T, NDIM >::gaxpy(), madness::inner(), madness::KAIN(), madness::print(), madness::Function< T, NDIM >::size(), madness::Function< T, NDIM >::truncate(), and madness::Function< T, NDIM >::world().

Referenced by DFTSolventSolver::ESP(), iterate_excite(), iterate_ground(), main(), ScreenSolventPotential::ScreenReactionPotential(), SVPEColloidSolver::solve(), and SVPEColloidSolver::solve_Laplace().

Member Data Documentation

template<size_t NDIM>
bool madness::NonlinearSolverND< NDIM >::do_print

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