21 "Control for receiving data from a Sampler via SamplerParameterTransfer.");
35 mooseError(
"Internal error: Number of parameters does not match number of values.");
49 if (
value.size() != 1)
52 "' expects a single value, but the vector supplying its values has a size of ",
57 else if (control_param.
check<std::vector<Real>>())
58 control_param.
set<std::vector<Real>>(
value);
61 mooseError(
"Unable to locate a Real or std::vector<Real> parameter with the name '",
75 for (
const auto & pv : param_values)
void set(const T &value, bool type_check=true)
static InputParameters validParams()
std::vector< std::vector< Real > > _values
Values to use when modifying parameters.
const Parallel::Communicator & _communicator
SamplerReceiver(const InputParameters ¶meters)
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
const ExecFlagType EXEC_TIMESTEP_BEGIN
void transfer(const std::map< std::string, std::vector< Real >> ¶m_values)
Update the parameters and associated values via _parameters and _values.
void broadcast(T &data, const unsigned int root_id=0, const bool identical_sizes=false) const
static InputParameters validParams()
A Control object for receiving data from a master application Sampler object.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::vector< std::string > _parameters
Parameter names to modify.
void mooseError(Args &&... args) const
virtual void execute() override
ControllableParameter getControllableParameterByName(const std::string ¶m_name)
processor_id_type processor_id() const
registerMooseObject("StochasticToolsApp", SamplerReceiver)
auto index_range(const T &sizable)