![]() |
SG++-Doxygen-Documentation
|
Solve the system of equations with a LL'-decomposed matrix where LL' is created by an iterative, incomplete cholesky factorization on a dense matrix. More...
#include <DBMatDMSDenseIChol.hpp>
Public Member Functions | |
| DBMatDMSDenseIChol (const sgpp::datadriven::DensityEstimationConfiguration &densityEstimationConfig, Grid &grid, double lambda, bool doCV) | |
Public Member Functions inherited from sgpp::datadriven::DBMatDMSChol | |
| void | choleskyDowndate (sgpp::base::DataMatrix &decompMatrix, const sgpp::base::DataVector &downdate, bool do_cv=false) const |
| Performe a rank one cholesky downdate. More... | |
| void | choleskyUpdate (sgpp::base::DataMatrix &decompMatrix, const sgpp::base::DataVector &update, bool do_cv=false) const |
| Performe a rank one cholesky update. More... | |
| DBMatDMSChol ()=default | |
| Default constructor. More... | |
| virtual void | solve (sgpp::base::DataMatrix &decompMatrix, sgpp::base::DataVector &alpha, const sgpp::base::DataVector &b, double lambda_old, double lambda_new) const |
| Solves a system of equations. More... | |
Public Member Functions inherited from sgpp::datadriven::DBMatDecompMatrixSolver | |
| DBMatDecompMatrixSolver () | |
Public Member Functions inherited from sgpp::solver::SGSolver | |
| double | getEpsilon () |
| gets the the epsilon, that is used in the SGSolver More... | |
| size_t | getNumberIterations () |
| function that returns the number of needed solve steps More... | |
| double | getResiduum () |
| function the returns the residuum (current or final), error of the solver More... | |
| void | setEpsilon (double eps) |
| resets the epsilon, that is used in the SGSolver More... | |
| void | setMaxIterations (size_t nIterations) |
| resets the number of maximum iterations More... | |
| SGSolver (size_t nMaximumIterations, double epsilon) | |
| Std-Constructor. More... | |
| virtual | ~SGSolver () |
| Std-Destructor. More... | |
Protected Member Functions | |
| void | choleskyBackwardSolve (const DataMatrix &decompMatrix, const DataVector &y, DataVector &alpha) const override |
| Perform backward substitution solving the triangular system $A alpha = y$ with a parallel Jaccobi solver. More... | |
| void | choleskyForwardSolve (const DataMatrix &decompMatrix, const DataVector &b, DataVector &y) const override |
| Perform forward substitution solving the triangular system $L y = b$ with a parallel Jaccobi solver. More... | |
| void | choleskyUpdateLambda (DataMatrix &decompMatrix, double lambdaUp) const override |
| Update the regularization factor of the decomposition. More... | |
Additional Inherited Members | |
Protected Attributes inherited from sgpp::solver::SGSolver | |
| double | myEpsilon |
| epsilon needed in the, e.g. final error in the iterative solver, or a timestep More... | |
| size_t | nIterations |
| Number of Iterations needed for the solve. More... | |
| size_t | nMaxIterations |
| Number of maximum iterations for cg. More... | |
| double | residuum |
| residuum More... | |
Solve the system of equations with a LL'-decomposed matrix where LL' is created by an iterative, incomplete cholesky factorization on a dense matrix.
| sgpp::datadriven::DBMatDMSDenseIChol::DBMatDMSDenseIChol | ( | const sgpp::datadriven::DensityEstimationConfiguration & | densityEstimationConfig, |
| Grid & | grid, | ||
| double | lambda, | ||
| bool | doCV | ||
| ) |
|
overrideprotectedvirtual |
Perform backward substitution solving the triangular system $A alpha = y$ with a parallel Jaccobi solver.
| decompMatrix | Triangular matrix |
| y | right hand side obtained by forward substitution |
| alpha | the vector of unknowns we solve for |
Reimplemented from sgpp::datadriven::DBMatDMSChol.
References sgpp::base::DataVector::get(), sgpp::base::DataMatrix::get(), sgpp::base::DataVector::getSize(), python.statsfileInfo::i, sgpp::datadriven::DensityEstimationConfiguration::iCholSweepsSolver_, python.utils.statsfile2gnuplot::j, sgpp::base::DataVector::set(), sgpp::base::DataVector::setAll(), and python.utils.pca_normalize_dataset::u.
|
overrideprotectedvirtual |
Perform forward substitution solving the triangular system $L y = b$ with a parallel Jaccobi solver.
| decompMatrix | Triangular matrix |
| b | right hand side of our initial system matrix we solve for |
| y | the vector of unknowns we solve for |
Reimplemented from sgpp::datadriven::DBMatDMSChol.
References sgpp::base::DataVector::get(), sgpp::base::DataMatrix::get(), sgpp::base::DataMatrix::getNrows(), sgpp::base::DataVector::getSize(), python.statsfileInfo::i, sgpp::datadriven::DensityEstimationConfiguration::iCholSweepsSolver_, python.utils.statsfile2gnuplot::j, sgpp::base::DataVector::set(), sgpp::base::DataMatrix::set(), sgpp::base::DataVector::setAll(), analyse_erg::tmp, and python.utils.pca_normalize_dataset::u.
|
overrideprotectedvirtual |
Update the regularization factor of the decomposition.
This is a very costly operation as the iterative algorithm will need to recalculate the entire decomposition. However the current solution is used as an initial guess, reducing the required amount of sweeps.
| decompMatrix | |
| lambdaUp |
Reimplemented from sgpp::datadriven::DBMatDMSChol.
References sgpp::datadriven::DBMatOfflineDenseIChol::ichol(), and sgpp::datadriven::DensityEstimationConfiguration::iCholSweepsUpdateLambda_.