version 0.4.1
trustregion.hh File Reference

Implementation of the Trust-region method for solving nonlinear equations. More...

#include <iosfwd>
#include <dune/common/float_cmp.hh>
#include <spdlog/spdlog.h>
#include <Eigen/Sparse>
#include <ikarus/linearalgebra/truncatedconjugategradient.hh>
#include <ikarus/solver/nonlinearsolver/solverinfos.hh>
#include <ikarus/utils/defaultfunctions.hh>
#include <ikarus/utils/linearalgebrahelper.hh>
#include <ikarus/utils/observer/observer.hh>
#include <ikarus/utils/observer/observermessages.hh>
#include <ikarus/utils/traits.hh>

Go to the source code of this file.

Classes

struct  Ikarus::TrustRegionSettings
 Configuration settings for the TrustRegion solver. More...
 
struct  Ikarus::AlgoInfo
 Additional information about the TrustRegion algorithm. More...
 
struct  Ikarus::Stats
 Information about the TrustRegion solver. More...
 
class  Ikarus::TrustRegion< NLO, preConditioner, UF >
 Trust Region solver for non-linear optimization problems. More...
 

Namespaces

namespace  Ikarus
 

Enumerations

enum class  Ikarus::PreConditioner { Ikarus::IncompleteCholesky , Ikarus::IdentityPreconditioner , Ikarus::DiagonalPreconditioner }
 Enumeration of available preconditioners for the trust region solver. More...
 
enum class  Ikarus::StopReason {
  Ikarus::gradientNormTolReached , Ikarus::correctionNormTolReached , Ikarus::maximumTimeReached , Ikarus::maximumIterationsReached ,
  Ikarus::dontStop
}
 Enumeration of reasons for stopping the TrustRegion solver. More...
 

Functions

template<typename NLO , PreConditioner preConditioner = PreConditioner::IncompleteCholesky, typename UF = utils::UpdateDefault>
auto Ikarus::makeTrustRegion (const NLO &nonLinearOperator, UF &&updateFunction={})
 Creates an instance of the TrustRegion solver. More...