22 "Stores variable values at each quadrature point on a side by element ID.");
31 _u(adCoupledValue(
"variable"))
44 unsigned int n_qp =
_qrule->n_points();
48 for (
unsigned int qp = 0; qp < n_qp; qp++)
57 for (
auto & it : other_map)
67 const std::vector<ADReal> &
70 Threads::spin_mutex::scoped_lock lock(Threads::spin_mtx);
77 name(),
": The variable values for element ", elem_id,
" were requested but not stored.");
registerMooseObject("ThermalHydraulicsApp", StoreVariableByElemIDSideUserObject)
StoreVariableByElemIDSideUserObject(const InputParameters ¶meters)
const std::vector< ADReal > & getVariableValues(dof_id_type elem_id) const
Gets the variable values at each quadrature point on the provided element.
static InputParameters validParams()
void allGatherADVectorMap(const Parallel::Communicator &comm, std::map< dof_id_type, std::vector< ADReal >> &this_map)
Parallel gather of a map of DoF ID to AD vector.
Stores variable values at each quadrature point on a side by element ID.
const Parallel::Communicator & comm() const
virtual void threadJoin(const UserObject &y) override
virtual void initialize() override
const ADVariableValue & _u
Variable value.
virtual void execute() override
virtual const std::string & name() const
const QBase *const & _qrule
void mooseError(Args &&... args) const
static InputParameters validParams()
const Elem *const & _current_elem
std::map< dof_id_type, std::vector< ADReal > > _elem_id_to_var_values
Map of element ID to variable values at each side quadrature point.
virtual void finalize() override