https://mooseframework.inl.gov
BiFidelityActiveLearningGPDecision.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 
10 #pragma once
11 
13 
18 {
19 public:
21 
23 
24 protected:
31  virtual void preNeedSample() override;
32 
43  virtual bool needSample(const std::vector<Real> & row,
44  dof_id_type local_ind,
45  dof_id_type global_ind,
46  Real & val) override;
47 
54  virtual bool facilitateDecision() override;
55 
56 private:
59 
61  const std::vector<Real> & _outputs_lf;
62 
64  std::vector<Real> _outputs_lf_batch;
65 
67  std::vector<Real> & _lf_corrected;
68 
71 };
const std::vector< Real > & _outputs_lf
Store all the outputs used for training from the LF model.
BiFidelityActiveLearningGPDecision(const InputParameters &parameters)
libMesh::Parallel::Communicator & _local_comm
Communicator that was split based on samples that have rows.
std::vector< Real > & _lf_corrected
Broadcast the GP-corrected LF prediciton to JSON.
virtual bool needSample(const std::vector< Real > &row, dof_id_type local_ind, dof_id_type global_ind, Real &val) override
Based on the computations in preNeedSample, the decision to get more data is passed and results from ...
virtual bool facilitateDecision() override
This makes decisions whether to call the full model or not based on GP prediction and uncertainty...
std::vector< Real > _outputs_lf_batch
Store all the outputs used for training from the LF model.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual void preNeedSample() override
This is where most of the computations happen:
const InputParameters & parameters() const
A class for performing active learning decision making in bi-fidelity modeling.
uint8_t dof_id_type