10#ifdef MOOSE_LIBTORCH_ENABLED
22 params.
addClassDescription(
"Outputs the parameters of a LibtorchArtificialNeuralNetwork within a "
23 "LibtorchNeuralNetControl.");
26 "The control object holding the neural network.");
34 _control_name(getParam<
std::string>(
"control_name")),
registerMooseObject("MooseApp", LibtorchArtificialNeuralNetParameters)
const ReporterMode REPORTER_MODE_ROOT
ExecuteMooseObjectWarehouse< Control > & getControlWarehouse()
Reference to the control logic warehouse.
Reporter object that has a single execution of the "execute" method for each execute flag.
static InputParameters validParams()
A Reporter which can print the parameter values of a LibtorchArtificialNeuralNetwork from within a Co...
LibtorchArtificialNeuralNetParameters(const InputParameters ¶ms)
const Moose::LibtorchArtificialNeuralNet *& _network
Reference to a neural net pointer declared as a reporter.
void execute() override
Execute method.
static InputParameters validParams()
void initialSetup() override
Gets called at the beginning of the simulation before this object is asked to do its job.
const std::string _control_name
The name of the control objects which hold the neural networks.
const LibtorchNeuralNetControl * _controller
Pointer to the controller so that we can avoid warehouse lookups in the execute function.
A time-dependent, neural network-based control of multiple input parameters.
const Moose::LibtorchNeuralNetBase & controlNeuralNet() const
Return a reference to the stored neural network.
std::shared_ptr< T > getActiveObject(const std::string &name, THREAD_ID tid=0) const
FEProblemBase & _fe_problem
Reference to the FEProblemBase for this user object.
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...