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 330 of file GaussianProcess.C.

Referenced by dataLoad().

331 {
332  RealEigenMatrix L;
333  dataLoad(stream, L, context);
334  decomp.compute(L * L.transpose());
335 }
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 357 of file GaussianProcess.C.

358 {
359  dataLoad(stream, gp_utils.hyperparamMap(), context);
360  dataLoad(stream, gp_utils.hyperparamVectorMap(), context);
361  dataLoad(stream, gp_utils.covarType(), context);
362  dataLoad(stream, gp_utils.covarName(), context);
363  dataLoad(stream, gp_utils.covarNumOutputs(), context);
364  dataLoad(stream, gp_utils.dependentCovarNames(), context);
365  dataLoad(stream, gp_utils.dependentCovarTypes(), context);
366  dataLoad(stream, gp_utils.K(), context);
367  dataLoad(stream, gp_utils.KResultsSolve(), context);
368  dataLoad(stream, gp_utils.KCholeskyDecomp(), context);
369  dataLoad(stream, gp_utils.paramStandardizer(), context);
370  dataLoad(stream, gp_utils.dataStandardizer(), context);
371 }
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 320 of file GaussianProcess.C.

Referenced by dataStore().

321 {
322  // Store the L matrix as opposed to the full matrix to avoid compounding
323  // roundoff error and decomposition error
324  RealEigenMatrix L(decomp.matrixL());
325  dataStore(stream, L, context);
326 }
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 339 of file GaussianProcess.C.

340 {
341  dataStore(stream, gp_utils.hyperparamMap(), context);
342  dataStore(stream, gp_utils.hyperparamVectorMap(), context);
343  dataStore(stream, gp_utils.covarType(), context);
344  dataStore(stream, gp_utils.covarName(), context);
345  dataStore(stream, gp_utils.covarNumOutputs(), context);
346  dataStore(stream, gp_utils.dependentCovarNames(), context);
347  dataStore(stream, gp_utils.dependentCovarTypes(), context);
348  dataStore(stream, gp_utils.K(), context);
349  dataStore(stream, gp_utils.KResultsSolve(), context);
350  dataStore(stream, gp_utils.KCholeskyDecomp(), context);
351  dataStore(stream, gp_utils.paramStandardizer(), context);
352  dataStore(stream, gp_utils.dataStandardizer(), context);
353 }
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()