https://mooseframework.inl.gov
Classes | Namespaces | Functions
GaussianProcess.h File Reference

Go to the source code of this file.

Classes

class  StochasticTools::GaussianProcess
 Utility class dedicated to hold structures and functions commont to Gaussian Processes. More...
 
struct  StochasticTools::GaussianProcess::GPOptimizerOptions
 Structure containing the optimization options for hyperparameter-tuning. More...
 

Namespaces

 StochasticTools
 Enum for batch type in stochastic tools MultiApp.
 

Functions

template<>
void dataStore (std::ostream &stream, Eigen::LLT< RealEigenMatrix > &decomp, void *context)
 
template<>
void dataLoad (std::istream &stream, Eigen::LLT< RealEigenMatrix > &decomp, void *context)
 
template<>
void dataStore (std::ostream &stream, StochasticTools::GaussianProcess &gp_utils, void *context)
 
template<>
void dataLoad (std::istream &stream, StochasticTools::GaussianProcess &gp_utils, void *context)
 

Function Documentation

◆ dataLoad() [1/2]

template<>
void dataLoad ( std::istream &  stream,
Eigen::LLT< RealEigenMatrix > &  decomp,
void context 
)

Definition at line 341 of file GaussianProcess.C.

Referenced by dataLoad().

342 {
343  RealEigenMatrix L;
344  dataLoad(stream, L, context);
345  decomp.compute(L * L.transpose());
346 }
void dataLoad(std::istream &stream, Eigen::LLT< RealEigenMatrix > &decomp, void *context)
Eigen::Matrix< Real, Eigen::Dynamic, Eigen::Dynamic > RealEigenMatrix

◆ dataLoad() [2/2]

template<>
void dataLoad ( std::istream &  stream,
StochasticTools::GaussianProcess gp_utils,
void context 
)

Definition at line 368 of file GaussianProcess.C.

369 {
370  dataLoad(stream, gp_utils.hyperparamMap(), context);
371  dataLoad(stream, gp_utils.hyperparamVectorMap(), context);
372  dataLoad(stream, gp_utils.covarType(), context);
373  dataLoad(stream, gp_utils.covarName(), context);
374  dataLoad(stream, gp_utils.covarNumOutputs(), context);
375  dataLoad(stream, gp_utils.dependentCovarNames(), context);
376  dataLoad(stream, gp_utils.dependentCovarTypes(), context);
377  dataLoad(stream, gp_utils.K(), context);
378  dataLoad(stream, gp_utils.KResultsSolve(), context);
379  dataLoad(stream, gp_utils.KCholeskyDecomp(), context);
380  dataLoad(stream, gp_utils.paramStandardizer(), context);
381  dataLoad(stream, gp_utils.dataStandardizer(), context);
382 }
std::map< UserObjectName, std::string > & dependentCovarTypes()
void dataLoad(std::istream &stream, Eigen::LLT< RealEigenMatrix > &decomp, void *context)
StochasticTools::Standardizer & dataStandardizer()
StochasticTools::Standardizer & paramStandardizer()
Get non-constant reference to the contained structures (if they need to be modified from the utside) ...
std::unordered_map< std::string, std::vector< Real > > & hyperparamVectorMap()
Eigen::LLT< RealEigenMatrix > & KCholeskyDecomp()
std::unordered_map< std::string, Real > & hyperparamMap()
std::vector< UserObjectName > & dependentCovarNames()

◆ dataStore() [1/2]

template<>
void dataStore ( std::ostream &  stream,
Eigen::LLT< RealEigenMatrix > &  decomp,
void context 
)

Definition at line 331 of file GaussianProcess.C.

Referenced by dataStore().

332 {
333  // Store the L matrix as opposed to the full matrix to avoid compounding
334  // roundoff error and decomposition error
335  RealEigenMatrix L(decomp.matrixL());
336  dataStore(stream, L, context);
337 }
void dataStore(std::ostream &stream, Eigen::LLT< RealEigenMatrix > &decomp, void *context)
Eigen::Matrix< Real, Eigen::Dynamic, Eigen::Dynamic > RealEigenMatrix

◆ dataStore() [2/2]

template<>
void dataStore ( std::ostream &  stream,
StochasticTools::GaussianProcess gp_utils,
void context 
)

Definition at line 350 of file GaussianProcess.C.

351 {
352  dataStore(stream, gp_utils.hyperparamMap(), context);
353  dataStore(stream, gp_utils.hyperparamVectorMap(), context);
354  dataStore(stream, gp_utils.covarType(), context);
355  dataStore(stream, gp_utils.covarName(), context);
356  dataStore(stream, gp_utils.covarNumOutputs(), context);
357  dataStore(stream, gp_utils.dependentCovarNames(), context);
358  dataStore(stream, gp_utils.dependentCovarTypes(), context);
359  dataStore(stream, gp_utils.K(), context);
360  dataStore(stream, gp_utils.KResultsSolve(), context);
361  dataStore(stream, gp_utils.KCholeskyDecomp(), context);
362  dataStore(stream, gp_utils.paramStandardizer(), context);
363  dataStore(stream, gp_utils.dataStandardizer(), context);
364 }
std::map< UserObjectName, std::string > & dependentCovarTypes()
StochasticTools::Standardizer & dataStandardizer()
StochasticTools::Standardizer & paramStandardizer()
Get non-constant reference to the contained structures (if they need to be modified from the utside) ...
void dataStore(std::ostream &stream, Eigen::LLT< RealEigenMatrix > &decomp, void *context)
std::unordered_map< std::string, std::vector< Real > > & hyperparamVectorMap()
Eigen::LLT< RealEigenMatrix > & KCholeskyDecomp()
std::unordered_map< std::string, Real > & hyperparamMap()
std::vector< UserObjectName > & dependentCovarNames()