One-dimensional slope limiting to get the limited slope of cell average variable for the advection equation using a cell-centered finite volume method. More...
#include <AEFVSlopeLimitingOneD.h>
Public Member Functions | |
AEFVSlopeLimitingOneD (const InputParameters ¶meters) | |
virtual std::vector< RealGradient > | limitElementSlope () const override |
compute the limited slope of the cell More... | |
virtual void | initialize () |
virtual void | finalize () |
virtual void | computeElement () |
virtual const std::vector< RealGradient > & | getElementSlope (dof_id_type elementid) const |
accessor function call More... | |
virtual void | execute () |
virtual void | pre () |
virtual void | preElement (const Elem *elem) |
virtual void | onElement (const Elem *elem) |
virtual void | onBoundary (const Elem *elem, unsigned int side, BoundaryID bnd_id) |
virtual void | onInternalSide (const Elem *elem, unsigned int side) |
virtual void | onInterface (const Elem *elem, unsigned int side, BoundaryID bnd_id) |
virtual void | post () |
virtual void | subdomainChanged () |
virtual bool | keepGoing () |
virtual void | meshChanged () |
void | join (const ElementLoopUserObject &) |
Protected Member Functions | |
virtual void | serialize (std::string &serialized_buffer) |
virtual void | deserialize (std::vector< std::string > &serialized_buffers) |
virtual void | caughtMooseException (MooseException &e) |
virtual void | computeBoundary () |
virtual void | computeInternalSide () |
virtual void | computeInterface () |
Protected Attributes | |
MooseVariable * | _u |
the input variable More... | |
MooseEnum | _scheme |
One-D slope limiting scheme. More... | |
std::map< dof_id_type, std::vector< RealGradient > > & | _lslope |
store the updated slopes into this map indexed by element ID More... | |
const bool | _include_bc |
option whether to include BCs More... | |
const MooseArray< Point > & | _q_point_face |
required data for face assembly More... | |
const QBase *const & | _qrule_face |
const MooseArray< Real > & | _JxW_face |
const MooseArray< Point > & | _normals_face |
const unsigned int & | _side |
current side of the current element More... | |
const Elem *const & | _side_elem |
const Real & | _side_volume |
const Elem *const & | _neighbor_elem |
the neighboring element More... | |
MooseMesh & | _mesh |
const Elem * | _current_elem |
const Real & | _current_elem_volume |
unsigned int | _current_side |
const Elem * | _current_neighbor |
const MooseArray< Point > & | _q_point |
const QBase *const & | _qrule |
const MooseArray< Real > & | _JxW |
const MooseArray< Real > & | _coord |
bool | _have_interface_elems |
true if we have cached interface elements, false if they need to be cached. We want to (re)cache only when mesh changed More... | |
std::set< dof_id_type > | _interface_elem_ids |
List of element IDs that are on the processor boundary and need to be send to other processors. More... | |
SubdomainID | _subdomain |
The subdomain for the current element. More... | |
SubdomainID | _old_subdomain |
The subdomain for the last element. More... | |
Static Private Attributes | |
static Threads::spin_mutex | _mutex |
One-dimensional slope limiting to get the limited slope of cell average variable for the advection equation using a cell-centered finite volume method.
Definition at line 26 of file AEFVSlopeLimitingOneD.h.
AEFVSlopeLimitingOneD::AEFVSlopeLimitingOneD | ( | const InputParameters & | parameters | ) |
Definition at line 28 of file AEFVSlopeLimitingOneD.C.
|
protectedvirtualinherited |
Definition at line 260 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
protectedvirtualinherited |
Definition at line 238 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::onBoundary().
|
virtualinherited |
|
protectedvirtualinherited |
Definition at line 248 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::onInterface().
|
protectedvirtualinherited |
Definition at line 243 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::onInternalSide().
|
protectedvirtualinherited |
|
virtualinherited |
Definition at line 75 of file ElementLoopUserObject.C.
|
virtualinherited |
|
virtualinherited |
accessor function call
Definition at line 58 of file SlopeLimitingBase.C.
Referenced by AEFVMaterial::computeQpProperties().
|
virtualinherited |
Reimplemented from ElementLoopUserObject.
Definition at line 50 of file SlopeLimitingBase.C.
|
inherited |
Definition at line 228 of file ElementLoopUserObject.C.
|
inlinevirtualinherited |
Definition at line 80 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::execute().
|
overridevirtual |
compute the limited slope of the cell
Implements SlopeLimitingBase.
Definition at line 34 of file AEFVSlopeLimitingOneD.C.
|
virtualinherited |
Reimplemented in SlopeReconstructionBase.
Definition at line 253 of file ElementLoopUserObject.C.
Referenced by SlopeReconstructionBase::meshChanged().
|
virtualinherited |
Definition at line 160 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
virtualinherited |
Definition at line 153 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
virtualinherited |
Definition at line 195 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
virtualinherited |
Definition at line 167 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
virtualinherited |
Definition at line 223 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
virtualinherited |
Definition at line 143 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
virtualinherited |
Definition at line 69 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
protectedvirtualinherited |
|
virtualinherited |
Definition at line 148 of file ElementLoopUserObject.C.
Referenced by ElementLoopUserObject::execute().
|
protectedinherited |
Definition at line 99 of file ElementLoopUserObject.h.
|
protectedinherited |
Definition at line 91 of file ElementLoopUserObject.h.
Referenced by SlopeLimitingBase::computeElement(), limitElementSlope(), ElementLoopUserObject::onElement(), ElementLoopUserObject::onInterface(), and ElementLoopUserObject::onInternalSide().
|
protectedinherited |
Definition at line 92 of file ElementLoopUserObject.h.
|
protectedinherited |
Definition at line 94 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::onInterface(), and ElementLoopUserObject::onInternalSide().
|
protectedinherited |
Definition at line 93 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::onBoundary().
|
protectedinherited |
true if we have cached interface elements, false if they need to be cached. We want to (re)cache only when mesh changed
Definition at line 102 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::finalize(), ElementLoopUserObject::meshChanged(), ElementLoopUserObject::onInterface(), and ElementLoopUserObject::onInternalSide().
|
protectedinherited |
option whether to include BCs
Definition at line 48 of file SlopeLimitingBase.h.
|
protectedinherited |
List of element IDs that are on the processor boundary and need to be send to other processors.
Definition at line 104 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::meshChanged(), ElementLoopUserObject::onInterface(), ElementLoopUserObject::onInternalSide(), SlopeLimitingBase::serialize(), and SlopeReconstructionBase::serialize().
|
protectedinherited |
Definition at line 98 of file ElementLoopUserObject.h.
|
protectedinherited |
Definition at line 53 of file SlopeLimitingBase.h.
|
protectedinherited |
store the updated slopes into this map indexed by element ID
Definition at line 45 of file SlopeLimitingBase.h.
Referenced by SlopeLimitingBase::computeElement(), SlopeLimitingBase::deserialize(), SlopeLimitingBase::getElementSlope(), SlopeLimitingBase::initialize(), and SlopeLimitingBase::serialize().
|
protectedinherited |
Definition at line 89 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::execute(), and SlopeReconstructionMultiD::SlopeReconstructionMultiD().
|
staticprivateinherited |
Definition at line 66 of file SlopeLimitingBase.h.
Referenced by SlopeLimitingBase::getElementSlope().
|
protectedinherited |
the neighboring element
Definition at line 63 of file SlopeLimitingBase.h.
|
protectedinherited |
Definition at line 54 of file SlopeLimitingBase.h.
|
protectedinherited |
The subdomain for the last element.
Definition at line 110 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::execute().
|
protectedinherited |
Definition at line 96 of file ElementLoopUserObject.h.
|
protectedinherited |
required data for face assembly
Definition at line 51 of file SlopeLimitingBase.h.
|
protectedinherited |
Definition at line 97 of file ElementLoopUserObject.h.
|
protectedinherited |
Definition at line 52 of file SlopeLimitingBase.h.
|
protected |
One-D slope limiting scheme.
Definition at line 39 of file AEFVSlopeLimitingOneD.h.
Referenced by limitElementSlope().
|
protectedinherited |
current side of the current element
Definition at line 57 of file SlopeLimitingBase.h.
|
protectedinherited |
Definition at line 59 of file SlopeLimitingBase.h.
|
protectedinherited |
Definition at line 60 of file SlopeLimitingBase.h.
|
protectedinherited |
The subdomain for the current element.
Definition at line 107 of file ElementLoopUserObject.h.
Referenced by ElementLoopUserObject::execute().
|
protected |
the input variable
Definition at line 36 of file AEFVSlopeLimitingOneD.h.
Referenced by limitElementSlope().