31 SamplerName sampler_name;
34 for (
auto & sampler : samplers)
37 if (!sampler_name.empty())
38 mooseError(
"The case with multiple adaptive samplers is not currently supported");
39 sampler_name = sampler->name();
42 if (sampler_name.empty())
49 params.
set<std::string>(
"message") =
"Sampling completed!";
51 _problem->addUserObject(
"Terminator",
"_terminate" + sampler_name, params);
56 params.
set<SamplerName>(
"sampler") = sampler_name;
58 params.
set<std::vector<OutputName>>(
"outputs") = {
"none"};
59 _problem->addUserObject(
"AdaptiveSamplingCompletedPostprocessor",
registerMooseAction("StochasticToolsApp", AdaptiveSamplerAction, "add_user_object")
AdaptiveSamplerAction(const InputParameters ¶ms)
InputParameters getValidParams(const std::string &name) const
static InputParameters validParams()
static std::set< SamplerName > adaptiveSamplerNames()
Returns the names of all the existing adaptive samplers.
const ExecFlagType EXEC_TIMESTEP_END
static InputParameters validParams()
const std::string & _current_task
ActionWarehouse & actionWarehouse()
virtual void act() override
static PostprocessorName adaptiveSamplingCompletedPostprocessorName()
Returns the name of the AdaptiveSamplingCompletedPostprocessor.
void mooseError(Args &&... args) const
std::shared_ptr< FEProblemBase > & _problem
std::vector< const T *> getActions()