30 #include "libmesh/parallel.h" 59 #ifdef MOOSE_KOKKOS_ENABLED 107 template <
typename T>
119 template <
typename T>
131 template <
typename T1,
typename T2>
140 template <
typename T1,
typename T2>
201 template <
typename T1,
typename T2>
208 const auto pair = std::make_pair(proxy,
value);
212 const auto it = std::max_element(all.begin(), all.end());
217 template <
typename T1,
typename T2>
223 const auto pair = std::make_pair(proxy,
value);
227 const auto it = std::min_element(all.begin(), all.end());
const THREAD_ID _tid
Thread ID of this postprocessor.
void gatherSum(T &value)
Gather the parallel sum of the variable passed in.
void allgather(const T &send_data, std::vector< T, A > &recv_data) const
SubProblem & getSubProblem() const
Returns a reference to the subproblem that this postprocessor is tied to.
const std::set< std::string > & getRequestedItems() override
Return a set containing the names of items requested by the object.
A class for creating restricted objects.
void gatherMax(T &value)
Gather the parallel max of the variable passed in.
virtual void addVectorPostprocessorDependencyHelper(const VectorPostprocessorName &name) const override
Helper for deriving classes to override to add dependencies when a VectorPostprocessor is requested...
Keeps track of stuff related to assembling.
virtual void addUserObjectDependencyHelper(const UserObjectBase &uo) const override
Helper for deriving classes to override to add dependencies when a UserObject is requested.
Interface for objects acting when the mesh has been displaced.
static InputParameters validParams()
Interface for objects that need to use samplers.
const std::set< std::string > & getSuppliedItems() override
Return a set containing the names of items owned by the object.
const Parallel::Communicator & _communicator
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Base class for a system (of equations)
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
std::set< UserObjectName > getDependObjects() const
Recursively return a set of user objects this user object depends on Note: this can be called only af...
bool shouldDuplicateInitialExecution() const
Returns whether or not this user object should be executed twice during the initial condition when de...
virtual void finalize()=0
Finalize.
FEProblemBase & _fe_problem
Reference to the FEProblemBase for this user object.
processor_id_type n_processors() const
const bool _duplicate_initial_execution
Whether to execute this object twice on initial.
const std::string & name() const
Get the name of the class.
Interface for notifications that the mesh has changed.
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
void min(const T &r, T &o, Request &req) const
Every object that can be built by the factory should be derived from this class.
Interface for objects that need to use distributions.
Interface to allow object to consume Reporter values.
void gatherMin(T &value)
Gather the parallel min of the variable passed in.
Interface for objects that need to use UserObjects.
SubProblem & _subproblem
Reference to the Subproblem for this user object.
unsigned int number() const
Gets the number of this system.
Assembly & _assembly
Reference to the assembly object for this user object.
Interface for objects interacting with the PerfGraph.
void addReporterDependencyHelper(const ReporterName &reporter_name) override
A method that can be overridden to update the UO dependencies.
virtual ~UserObjectBase()=default
SystemBase & _sys
Reference to the system object for this user object.
Generic class for solving transient nonlinear problems.
std::set< std::string > _supplied_uo
A name of the "supplied" user objects, which is just this object.
void max(const T &r, T &o, Request &req) const
UserObjectBase(const InputParameters ¶ms)
virtual void addPostprocessorDependencyHelper(const PostprocessorName &name) const override
Helper for deriving classes to override to add dependencies when a Postprocessor is requested...
Interface for sorting dependent vectors of objects.
void gatherProxyValueMax(T1 &proxy, T2 &value)
Deteremine the value of a variable according to the parallel maximum of the provided proxy...
virtual void initialize()=0
Called before execute() is ever called so that data can be cleared.
virtual bool needThreadedCopy() const
Whether or not a threaded copy of this object is needed when obtaining it in another object...
void gatherProxyValueMin(T1 &proxy, T2 &value)
Determine the value of a variable according to which process has the parallel minimum of the provided...
Interface for objects that need to use functions.
The Reporter system is comprised of objects that can contain any number of data values.
Interface class for classes which interact with Postprocessors.
unsigned int systemNumber() const