https://mooseframework.inl.gov
GaussianProcessSurrogate.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 #ifdef MOOSE_LIBTORCH_ENABLED
10 
11 #pragma once
12 
13 #include "SurrogateModel.h"
14 #include "Standardizer.h"
15 #include "CovarianceInterface.h"
16 #include "GaussianProcess.h"
17 
18 #include "LibtorchUtils.h"
19 
21 {
22 public:
26  virtual Real evaluate(const std::vector<Real> & x) const;
27  virtual void evaluate(const std::vector<Real> & x, std::vector<Real> & y) const;
28  virtual Real evaluate(const std::vector<Real> & x, Real & std) const;
29  virtual void
30  evaluate(const std::vector<Real> & x, std::vector<Real> & y, std::vector<Real> & std) const;
31 
37  virtual void setupCovariance(UserObjectName _covar_name);
38 
40  const StochasticTools::GaussianProcess & getGP() const { return _gp; }
41 
42 private:
44 
46  const torch::Tensor & _training_params;
47 };
48 
49 #endif
virtual void setupCovariance(UserObjectName _covar_name)
This function is called by LoadCovarianceDataAction when the surrogate is loading training data from ...
const StochasticTools::GaussianProcess & getGP() const
const torch::Tensor & _training_params
Paramaters (x) used for training.
const InputParameters & parameters() const
StochasticTools::GaussianProcess & gp()
const std::vector< double > y
const std::vector< double > x
virtual Real evaluate(const std::vector< Real > &x) const
Evaluate surrogate model given a row of parameters.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real evaluate(const std::vector< Real > &x) const
Evaluate surrogate model given a row of parameters.
StochasticTools::GaussianProcess & _gp
static InputParameters validParams()
Utility class dedicated to hold structures and functions commont to Gaussian Processes.
GaussianProcessSurrogate(const InputParameters &parameters)