SG++
sgpp::datadriven::RegressionLearner::Solver Class Reference

#include <RegressionLearner.hpp>

Public Types

enum  solverCategory { solverCategory::cg, solverCategory::fista, solverCategory::none }
 

Public Member Functions

double getL ()
 
Solveroperator= (const Solver &)=delete
 
Solveroperator= (Solver &&other)
 
void solveCG (sgpp::base::OperationMatrix &systemMatrix, sgpp::base::DataVector &alpha, sgpp::base::DataVector &b, bool reuse, bool verbose, double maxTreshold)
 
void solveFista (sgpp::base::OperationMultipleEval &op, sgpp::base::DataVector &weights, const sgpp::base::DataVector &classes, size_t maxIt, double treshold, double L)
 
 Solver ()
 
 Solver (std::unique_ptr< sgpp::solver::SLESolver > &&s)
 
 Solver (std::unique_ptr< sgpp::solver::FistaBase > &&s)
 
 Solver (const Solver &)=delete
 
 Solver (Solver &&other)
 
 ~Solver ()
 

Public Attributes

enum sgpp::datadriven::RegressionLearner::Solver::solverCategory type = solverCategory::none
 
std::unique_ptr< sgpp::solver::SLESolversolverCG
 
std::unique_ptr< sgpp::solver::FistaBasesolverFista
 

Friends

void swap (Solver &first, Solver &second)
 

Member Enumeration Documentation

Enumerator
cg 
fista 
none 

Constructor & Destructor Documentation

sgpp::datadriven::RegressionLearner::Solver::Solver ( )
inline
sgpp::datadriven::RegressionLearner::Solver::Solver ( std::unique_ptr< sgpp::solver::SLESolver > &&  s)
inlineexplicit

References cg, and solverCG.

sgpp::datadriven::RegressionLearner::Solver::Solver ( std::unique_ptr< sgpp::solver::FistaBase > &&  s)
inlineexplicit

References fista, and solverFista.

sgpp::datadriven::RegressionLearner::Solver::Solver ( const Solver )
delete
sgpp::datadriven::RegressionLearner::Solver::Solver ( Solver &&  other)
inline

References operator=(), and swap.

sgpp::datadriven::RegressionLearner::Solver::~Solver ( )
inline

References cg, fista, none, solverCG, and solverFista.

Member Function Documentation

double sgpp::datadriven::RegressionLearner::Solver::getL ( )
inline
Solver& sgpp::datadriven::RegressionLearner::Solver::operator= ( const Solver )
delete

Referenced by Solver().

Solver& sgpp::datadriven::RegressionLearner::Solver::operator= ( Solver &&  other)
inline

References swap.

void sgpp::datadriven::RegressionLearner::Solver::solveCG ( sgpp::base::OperationMatrix systemMatrix,
sgpp::base::DataVector alpha,
sgpp::base::DataVector b,
bool  reuse,
bool  verbose,
double  maxTreshold 
)
inline
void sgpp::datadriven::RegressionLearner::Solver::solveFista ( sgpp::base::OperationMultipleEval op,
sgpp::base::DataVector weights,
const sgpp::base::DataVector classes,
size_t  maxIt,
double  treshold,
double  L 
)
inline

Friends And Related Function Documentation

void swap ( Solver first,
Solver second 
)
friend

Referenced by operator=(), and Solver().

Member Data Documentation

std::unique_ptr<sgpp::solver::SLESolver> sgpp::datadriven::RegressionLearner::Solver::solverCG

Referenced by solveCG(), Solver(), and ~Solver().

std::unique_ptr<sgpp::solver::FistaBase> sgpp::datadriven::RegressionLearner::Solver::solverFista

Referenced by getL(), solveFista(), Solver(), and ~Solver().


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