https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
LayeredAverageRZ Class Reference

The same functionality as LayeredAverage but for arbitrary RZ symmetry. More...

#include <LayeredAverageRZ.h>

Inheritance diagram for LayeredAverageRZ:
[legend]

Public Types

typedef FunctorBase< Real > FunctorType
 
typedef Real ValueType
 
typedef typename FunctorReturnType< Real, FunctorEvaluationKind::Gradient >::type GradientType
 
typedef ValueType DotType
 

Public Member Functions

 LayeredAverageRZ (const InputParameters &parameters)
 
virtual void execute () override
 
virtual void initialize () override
 
virtual void finalize () override
 
virtual void threadJoin (const UserObject &y) override
 
virtual Real spatialValue (const Point &p) const override
 
virtual const std::vector< Point > spatialPoints () const override
 
virtual bool hasBlocks (SubdomainID sub) const override
 
Real evaluateTemplate (const SpatialArg &position, const Moose::StateArg &libmesh_dbg_var(state)) const
 
FunctorReturnType< Real, FET >::type genericEvaluate (const Space &r, const State &state) const
 
const MooseFunctorName & functorName () const
 
virtual void residualSetup () override
 
virtual void jacobianSetup () override
 
virtual void timestepSetup () override
 
virtual void customSetup (const ExecFlagType &exec_type) override
 
void setCacheClearanceSchedule (const std::set< ExecFlagType > &clearance_schedule)
 
virtual bool isExtrapolatedBoundaryFace (const FaceInfo &, const Elem *, const StateArg &) const
 
virtual bool isExtrapolatedBoundaryFace (const FaceInfo &, const Elem *, const StateArg &) const
 
bool isInternalFace (const FaceInfo &) const
 
virtual bool isConstant () const
 
virtual bool hasFaceSide (const FaceInfo &fi, const bool fi_elem_side) const override
 
void checkFace (const Moose::FaceArg &face) const
 
virtual Real integralValue (const Point &p) const
 
virtual Real getLayerValue (unsigned int layer) const
 
virtual unsigned int getLayer (const Point &p) const
 
const std::vector< Real > & getLayerCenters () const
 
unsigned int direction () const
 
ValueType operator() (const ElemArg &elem, const StateArg &state) const
 
ValueType operator() (const FaceArg &face, const StateArg &state) const
 
ValueType operator() (const ElemQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemSideQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemPointArg &elem_point, const StateArg &state) const
 
ValueType operator() (const NodeArg &node, const StateArg &state) const
 
ValueType operator() (const ElemArg &elem, const StateArg &state) const
 
ValueType operator() (const FaceArg &face, const StateArg &state) const
 
ValueType operator() (const ElemQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemSideQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemPointArg &elem_point, const StateArg &state) const
 
ValueType operator() (const NodeArg &node, const StateArg &state) const
 
ValueType operator() (const ElemArg &elem, const StateArg &state) const
 
ValueType operator() (const FaceArg &face, const StateArg &state) const
 
ValueType operator() (const ElemQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemSideQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemPointArg &elem_point, const StateArg &state) const
 
ValueType operator() (const NodeArg &node, const StateArg &state) const
 
GradientType gradient (const ElemArg &elem, const StateArg &state) const
 
GradientType gradient (const FaceArg &face, const StateArg &state) const
 
GradientType gradient (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradient (const NodeArg &node, const StateArg &state) const
 
GradientType gradient (const ElemArg &elem, const StateArg &state) const
 
GradientType gradient (const FaceArg &face, const StateArg &state) const
 
GradientType gradient (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradient (const NodeArg &node, const StateArg &state) const
 
GradientType gradient (const ElemArg &elem, const StateArg &state) const
 
GradientType gradient (const FaceArg &face, const StateArg &state) const
 
GradientType gradient (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradient (const NodeArg &node, const StateArg &state) const
 
DotType dot (const ElemArg &elem, const StateArg &state) const
 
DotType dot (const FaceArg &face, const StateArg &state) const
 
DotType dot (const ElemQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemSideQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemPointArg &elem_point, const StateArg &state) const
 
DotType dot (const NodeArg &node, const StateArg &state) const
 
DotType dot (const ElemArg &elem, const StateArg &state) const
 
DotType dot (const FaceArg &face, const StateArg &state) const
 
DotType dot (const ElemQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemSideQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemPointArg &elem_point, const StateArg &state) const
 
DotType dot (const NodeArg &node, const StateArg &state) const
 
DotType dot (const ElemArg &elem, const StateArg &state) const
 
DotType dot (const FaceArg &face, const StateArg &state) const
 
DotType dot (const ElemQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemSideQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemPointArg &elem_point, const StateArg &state) const
 
DotType dot (const NodeArg &node, const StateArg &state) const
 
GradientType gradDot (const ElemArg &elem, const StateArg &state) const
 
GradientType gradDot (const FaceArg &face, const StateArg &state) const
 
GradientType gradDot (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradDot (const NodeArg &node, const StateArg &state) const
 
GradientType gradDot (const ElemArg &elem, const StateArg &state) const
 
GradientType gradDot (const FaceArg &face, const StateArg &state) const
 
GradientType gradDot (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradDot (const NodeArg &node, const StateArg &state) const
 
GradientType gradDot (const ElemArg &elem, const StateArg &state) const
 
GradientType gradDot (const FaceArg &face, const StateArg &state) const
 
GradientType gradDot (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradDot (const NodeArg &node, const StateArg &state) const
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Types

typedef Moose::ElemArg ElemArg
 
typedef Moose::ElemQpArg ElemQpArg
 
typedef Moose::ElemSideQpArg ElemSideQpArg
 
typedef Moose::FaceArg FaceArg
 
typedef Moose::ElemPointArg ElemPointArg
 
typedef Moose::NodeArg NodeArg
 

Protected Member Functions

virtual Real computeIntegral () override
 
virtual Real volume () const override
 
virtual Real evaluate (const ElemArg &elem, const Moose::StateArg &state) const override
 
virtual Real evaluate (const FaceArg &face, const Moose::StateArg &state) const override final
 
virtual Real evaluate (const ElemQpArg &qp, const Moose::StateArg &state) const override
 
virtual Real evaluate (const ElemSideQpArg &elem_side_qp, const Moose::StateArg &state) const override final
 
virtual Real evaluate (const ElemPointArg &elem_point, const Moose::StateArg &state) const override final
 
virtual Real evaluate (const NodeArg &node, const Moose::StateArg &state) const override final
 
virtual bool supportsFaceArg () const override final
 
virtual bool supportsElemSideQpArg () const override final
 
void setLayerValue (unsigned int layer, Real value)
 
bool layerHasValue (unsigned int layer) const
 
void getBounds ()
 
void computeLayerCenters ()
 
virtual GradientType evaluateGradient (const ElemArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemPointArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const NodeArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemPointArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const NodeArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const ElemPointArg &, const StateArg &) const
 
virtual GradientType evaluateGradient (const NodeArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemArg &, const StateArg &) const
 
virtual DotType evaluateDot (const FaceArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemQpArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemSideQpArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemPointArg &, const StateArg &) const
 
virtual DotType evaluateDot (const NodeArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemArg &, const StateArg &) const
 
virtual DotType evaluateDot (const FaceArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemQpArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemSideQpArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemPointArg &, const StateArg &) const
 
virtual DotType evaluateDot (const NodeArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemArg &, const StateArg &) const
 
virtual DotType evaluateDot (const FaceArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemQpArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemSideQpArg &, const StateArg &) const
 
virtual DotType evaluateDot (const ElemPointArg &, const StateArg &) const
 
virtual DotType evaluateDot (const NodeArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemPointArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const NodeArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemPointArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const NodeArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemPointArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const NodeArg &, const StateArg &) const
 
TdeclareRestartableData (const std::string &data_name, Args &&... args)
 
ManagedValue< TdeclareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 
const TgetRestartableData (const std::string &data_name) const
 
TdeclareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 
TdeclareRecoverableData (const std::string &data_name, Args &&... args)
 
TdeclareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args)
 
TdeclareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args)
 
std::string restartableName (const std::string &data_name) const
 
virtual Real computeCircumference (const RealVectorValue &pt)
 

Protected Attributes

std::vector< Real > _layer_volumes
 
std::string _layered_base_name
 
const InputParameters_layered_base_params
 
MooseEnum _direction_enum
 
unsigned int _direction
 
bool _interval_based
 
unsigned int _num_layers
 
std::vector< Real > _layer_bounds
 
unsigned int _sample_type
 
unsigned int _average_radius
 
bool _using_displaced_mesh
 
std::vector< Real > _layer_centers
 
Real _direction_min
 
Real _direction_max
 
std::vector< Real > & _layer_values
 
std::vector< int > & _layer_has_value
 
bool _cumulative
 
const bool _positive_cumulative_direction
 
MooseApp_restartable_app
 
const std::string _restartable_system_name
 
const THREAD_ID _restartable_tid
 
const bool _restartable_read_only
 
RealVectorValue _axis_point
 A point on the axis of symmetry.
 
const RealVectorValue & _axis_dir
 The direction of the axis of symmetry.
 
const Real & _offset
 Radial offset of the axis of symmetry.
 

Private Member Functions

Real evaluateTemplate (const SpatialArg &position, const Moose::StateArg &state) const
 
void clearCacheData ()
 
ValueType queryQpCache (unsigned int qp, const libMesh::QBase &qrule, std::vector< std::pair< bool, Real > > &qp_cache_data, const SpaceArg &space, const StateArg &state) const
 
ValueType queryFVArgCache (std::map< SpaceArg, ValueType > &cache_data, const SpaceArg &space) const
 
RestartableDataValueregisterRestartableDataOnApp (std::unique_ptr< RestartableDataValue > data, THREAD_ID tid) const
 
void registerRestartableNameWithFilterOnApp (const std::string &name, Moose::RESTARTABLE_FILTER filter)
 
RestartableData< T > & declareRestartableDataHelper (const std::string &data_name, void *context, Args &&... args) const
 

Private Attributes

std::set< ExecFlagType_clearance_schedule
 
bool _always_evaluate
 
dof_id_type _current_qp_map_key
 
std::vector< std::pair< bool, ValueType > > * _current_qp_map_value
 
std::unordered_map< dof_id_type, std::vector< std::pair< bool, ValueType > > > _qp_to_value
 
dof_id_type _current_side_qp_map_key
 
std::vector< std::vector< std::pair< bool, ValueType > > > * _current_side_qp_map_value
 
std::unordered_map< dof_id_type, std::vector< std::vector< std::pair< bool, ValueType > > > > _side_qp_to_value
 
std::map< ElemArg, ValueType_elem_arg_to_value
 
std::map< FaceArg, ValueType_face_arg_to_value
 
std::map< NodeArg, ValueType_node_arg_to_value
 
MooseFunctorName _functor_name
 
SubProblem_layered_base_subproblem
 
std::vector< SubdomainID_layer_bounding_blocks
 
bool _has_direction_max_min
 
const RestartableDataMapName _metaname
 
std::string _restartable_name
 

Detailed Description

The same functionality as LayeredAverage but for arbitrary RZ symmetry.

NOTE: this is a temporary object until MOOSE can do this

Definition at line 20 of file LayeredAverageRZ.h.

Constructor & Destructor Documentation

◆ LayeredAverageRZ()

LayeredAverageRZ::LayeredAverageRZ ( const InputParameters parameters)

Definition at line 26 of file LayeredAverageRZ.C.

27 : LayeredAverage(parameters), RZSymmetry(this, parameters)
28{
29 _direction_min = getParam<Point>("axis_point")(_direction);
30 _direction_max = _direction_min + getParam<Real>("length");
31}
unsigned int _direction
Interface class for enabling objects to be RZ symmetric about arbitrary axis.
Definition RZSymmetry.h:20

Member Function Documentation

◆ computeCircumference()

Real RZSymmetry::computeCircumference ( const RealVectorValue &  pt)
protectedvirtualinherited

Definition at line 85 of file RZSymmetry.C.

86{
88 const Real r = v.cross(_axis_dir).norm() / _axis_dir.norm();
89 return 2 * libMesh::pi * (r + _offset);
90}
const double v
const RealVectorValue & _axis_dir
The direction of the axis of symmetry.
Definition RZSymmetry.h:30
RealVectorValue _axis_point
A point on the axis of symmetry.
Definition RZSymmetry.h:28
const Real & _offset
Radial offset of the axis of symmetry.
Definition RZSymmetry.h:32
const Real pi
VectorValue< Real > RealVectorValue
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

Referenced by computeIntegral(), ADHeatStructureEnergyRZ::computeQpIntegral(), HeatStructureEnergyRZ::computeQpIntegral(), ADElementIntegralMaterialPropertyRZ::computeQpIntegral(), ADSideFluxIntegralRZ::computeQpIntegral(), FunctionElementIntegralRZ::computeQpIntegral(), FunctionSideIntegralRZ::computeQpIntegral(), HeatRateConductionRZ::computeQpIntegral(), HeatRateConvectionRZ::computeQpIntegral(), HeatRateExternalAppConvectionRZ::computeQpIntegral(), HeatRateHeatFluxRZ::computeQpIntegral(), HeatRateRadiationRZ::computeQpIntegral(), SideFluxIntegralRZ::computeQpIntegral(), ConvectionHeatTransferRZBC::computeQpJacobian(), ExternalAppConvectionHeatTransferRZBC::computeQpJacobian(), RadiativeHeatFluxRZBC::computeQpJacobian(), CoupledForceRZ::computeQpJacobian(), CoupledForceRZ::computeQpOffDiagJacobian(), ADHeatStructureHeatSourceRZ::computeQpResidual(), ADConvectionHeatTransferRZBC::computeQpResidual(), ADExternalAppConvectionHeatTransferRZBC::computeQpResidual(), ADHSHeatFluxRZBC::computeQpResidual(), ADRadiativeHeatFluxRZBC::computeQpResidual(), ConvectionHeatTransferRZBC::computeQpResidual(), ExternalAppConvectionHeatTransferRZBC::computeQpResidual(), HeatStructure2DCouplerRZBC::computeQpResidual(), HeatStructure2DRadiationCouplerRZBC::computeQpResidual(), HSCoupler2D2DRadiationRZBC::computeQpResidual(), RadiativeHeatFluxRZBC::computeQpResidual(), CoupledForceRZ::computeQpResidual(), execute(), ADHeatConductionRZ::precomputeQpResidual(), and ADHeatConductionTimeDerivativeRZ::precomputeQpResidual().

◆ computeIntegral()

Real LayeredAverageRZ::computeIntegral ( )
overrideprotectedvirtual

Definition at line 50 of file LayeredAverageRZ.C.

51{
52 Real sum = 0;
53
54 for (_qp = 0; _qp < _qrule->n_points(); _qp++)
55 {
56 const Real circumference = computeCircumference(_q_point[_qp]);
57 sum += _JxW[_qp] * circumference * computeQpIntegral();
58 }
59 return sum;
60}
virtual Real computeCircumference(const RealVectorValue &pt)
Definition RZSymmetry.C:85

◆ execute()

void LayeredAverageRZ::execute ( )
overridevirtual

Reimplemented from LayeredAverage.

Definition at line 34 of file LayeredAverageRZ.C.

35{
37
38 Real current_elem_volume = 0.;
39 for (unsigned int qp = 0; qp < _qrule->n_points(); qp++)
40 {
41 const Real circumference = computeCircumference(_q_point[qp]);
42 current_elem_volume += _JxW[qp] * circumference;
43 }
44
45 unsigned int layer = getLayer(_current_elem->vertex_average());
46 _layer_volumes[layer] += current_elem_volume;
47}
std::vector< Real > _layer_volumes
virtual unsigned int getLayer(const Point &p) const
virtual void execute() override

◆ validParams()

InputParameters LayeredAverageRZ::validParams ( )
static

Definition at line 15 of file LayeredAverageRZ.C.

16{
18 params += RZSymmetry::validParams();
19 params.addRequiredParam<Real>("length",
20 "The length of the block in the direction given by 'axis_dir'.");
22 "Computes layered averages of variable for RZ components in a XY coordinate system");
23 return params;
24}
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
static InputParameters validParams()
static InputParameters validParams()
Definition RZSymmetry.C:17

Member Data Documentation

◆ _axis_dir

const RealVectorValue& RZSymmetry::_axis_dir
protectedinherited

The direction of the axis of symmetry.

Definition at line 30 of file RZSymmetry.h.

Referenced by RZSymmetry::computeCircumference().

◆ _axis_point

RealVectorValue RZSymmetry::_axis_point
protectedinherited

A point on the axis of symmetry.

Definition at line 28 of file RZSymmetry.h.

Referenced by RZSymmetry::computeCircumference(), and RZSymmetry::RZSymmetry().

◆ _offset

const Real& RZSymmetry::_offset
protectedinherited

Radial offset of the axis of symmetry.

Definition at line 32 of file RZSymmetry.h.

Referenced by RZSymmetry::computeCircumference().


The documentation for this class was generated from the following files: