Line data Source code
1 : /**********************************************************************/ 2 : /* DO NOT MODIFY THIS HEADER */ 3 : /* Swift, a Fourier spectral solver for MOOSE */ 4 : /* */ 5 : /* Copyright 2024 Battelle Energy Alliance, LLC */ 6 : /* ALL RIGHTS RESERVED */ 7 : /**********************************************************************/ 8 : 9 : #include "AddTensorPredictorAction.h" 10 : #include "TensorProblem.h" 11 : #include "IterativeTensorSolverInterface.h" 12 : 13 : registerMooseAction("SwiftApp", AddTensorPredictorAction, "add_tensor_predictor"); 14 : 15 : InputParameters 16 0 : AddTensorPredictorAction::validParams() 17 : { 18 0 : InputParameters params = MooseObjectAction::validParams(); 19 0 : params.addClassDescription("Add an TensorPredictor object to the simulation."); 20 0 : return params; 21 0 : } 22 : 23 0 : AddTensorPredictorAction::AddTensorPredictorAction(const InputParameters & parameters) 24 0 : : MooseObjectAction(parameters) 25 : { 26 0 : } 27 : 28 : void 29 0 : AddTensorPredictorAction::act() 30 : { 31 0 : auto tensor_problem = std::dynamic_pointer_cast<TensorProblem>(_problem); 32 0 : if (!tensor_problem) 33 0 : mooseError("Tensor objects are only supported if the problem class is set to `TensorProblem`"); 34 : 35 0 : if (_current_task != "add_tensor_predictor") 36 : return; 37 : 38 : // get the current solver 39 0 : auto solver = tensor_problem->getSolver<IterativeTensorSolverInterface>(); 40 : 41 : // solver.addPredictor(); 42 : }