18 #include "libmesh/meshfree_interpolation.h" 19 #include "libmesh/system.h" 28 "postprocessor",
"The name of the Postprocessors on the sub-app to transfer from/to.");
30 "The name of the VectorPostprocessor in " 31 "the MultiApp to transfer values " 34 "vector_name",
"Named vector quantity to transfer from/to in VectorPostprocessor.");
36 "VectorPostprocessor to Postprocessors located in " 38 " collects Postprocessor values from N sub-apps " 39 "into a VectorPostprocessor");
46 _sub_pp_name(getParam<PostprocessorName>(
"postprocessor")),
47 _master_vpp_name(getParam<VectorPostprocessorName>(
"vector_postprocessor")),
48 _vector_name(getParam<
std::string>(
"vector_name"))
51 paramError(
"direction",
"This transfer is only unidirectional");
64 " and number of sub-apps do not match: ",
69 for (
unsigned int i = 0; i <
getToMultiApp()->numGlobalApps(); ++i)
84 " and number of sub-apps do not match: ",
94 for (
auto & v :
value)
105 "MultiAppVectorPostprocessorTransfer::execute()", 5,
"Transferring a vector postprocessor");
const std::shared_ptr< MultiApp > getFromMultiApp() const
Get the MultiApp to transfer data from.
MooseEnum _current_direction
const std::string & _vector_name
Specific vector to transfer among the vectors in the parent VPP.
registerMooseObject("MooseApp", MultiAppVectorPostprocessorTransfer)
unsigned int size() const
Return the number of active items in the MultiMooseEnum.
const std::shared_ptr< MultiApp > getToMultiApp() const
Get the MultiApp to transfer data to.
const Parallel::Communicator & _communicator
const VectorPostprocessorName & _master_vpp_name
Name of the VectorPostprocessor on the parent app.
const PostprocessorName & _sub_pp_name
Name of the postprocessor on the MultiApp.
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Copies the values of a VectorPostprocessor from the parent application to postprocessors on each suba...
static InputParameters validParams()
void paramError(const std::string ¶m, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
virtual void execute() override
Execute the transfer.
static InputParameters validParams()
std::vector< Real > VectorPostprocessorValue
MultiMooseEnum _directions
The directions this Transfer is to be executed on.
virtual void executeToMultiapp()
Base class for all MultiAppTransfer objects.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
virtual void executeFromMultiapp()
MultiAppVectorPostprocessorTransfer(const InputParameters ¶meters)