User object responsible for determining the face fluxes using the Rhie-Chow interpolation in a segregated solver that uses the linear FV formulation. More...
#include <RhieChowMassFlux.h>
Public Types | |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
RhieChowMassFlux (const InputParameters ¶ms) | |
Real | getMassFlux (const FaceInfo &fi) const |
Get the face velocity times density (used in advection terms) More... | |
Real | getVolumetricFaceFlux (const FaceInfo &fi) const |
Get the volumetric face flux (used in advection terms) More... | |
virtual Real | getVolumetricFaceFlux (const Moose::FV::InterpMethod m, const FaceInfo &fi, const Moose::StateArg &time, const THREAD_ID tid, bool subtract_mesh_velocity) const override |
Retrieve the volumetric face flux, will not include derivatives. More... | |
void | initFaceMassFlux () |
Initialize the container for face velocities. More... | |
void | initCouplingField () |
Initialize the coupling fields (HbyA and Ainv) More... | |
void | computeFaceMassFlux () |
Update the values of the face velocities in the containers. More... | |
void | computeCellVelocity () |
Update the cell values of the velocity variables. More... | |
virtual void | meshChanged () override |
virtual void | initialize () override |
virtual void | execute () override |
virtual void | finalize () override |
virtual void | initialSetup () override |
void | linkMomentumPressureSystems (const std::vector< LinearSystem *> &momentum_systems, const LinearSystem &pressure_system, const std::vector< unsigned int > &momentum_system_numbers) |
Update the momentum system-related information. More... | |
void | computeHbyA (const bool with_updated_pressure, const bool verbose) |
Computes the inverse of the diagonal (1/A) of the system matrix plus the H/A components for the pressure equation plus Rhie-Chow interpolation. More... | |
bool | hasFaceSide (const FaceInfo &fi, const bool fi_elem_side) const override |
SubProblem & | getSubProblem () const |
bool | shouldDuplicateInitialExecution () const |
virtual Real | spatialValue (const Point &) const |
virtual const std::vector< Point > | spatialPoints () const |
void | gatherSum (T &value) |
void | gatherMax (T &value) |
void | gatherMin (T &value) |
void | gatherProxyValueMax (T1 &proxy, T2 &value) |
void | gatherProxyValueMin (T1 &proxy, T2 &value) |
void | setPrimaryThreadCopy (UserObject *primary) |
UserObject * | primaryThreadCopy () |
std::set< UserObjectName > | getDependObjects () const |
virtual bool | needThreadedCopy () const |
const std::set< std::string > & | getRequestedItems () override |
const std::set< std::string > & | getSuppliedItems () override |
unsigned int | systemNumber () const |
virtual bool | enabled () const |
std::shared_ptr< MooseObject > | getSharedPtr () |
std::shared_ptr< const MooseObject > | getSharedPtr () const |
MooseApp & | getMooseApp () const |
const std::string & | type () const |
virtual const std::string & | name () const |
std::string | typeAndName () const |
std::string | errorPrefix (const std::string &error_type) const |
void | callMooseError (std::string msg, const bool with_prefix) const |
MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
const InputParameters & | parameters () const |
MooseObjectName | uniqueName () const |
const T & | getParam (const std::string &name) const |
std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
const T * | queryParam (const std::string &name) const |
const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
bool | isParamValid (const std::string &name) const |
bool | isParamSetByUser (const std::string &nm) const |
void | paramError (const std::string ¶m, Args... args) const |
void | paramWarning (const std::string ¶m, Args... args) const |
void | paramInfo (const std::string ¶m, Args... args) const |
void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
void | mooseError (Args &&... args) const |
void | mooseErrorNonPrefixed (Args &&... args) const |
void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
void | mooseWarning (Args &&... args) const |
void | mooseWarningNonPrefixed (Args &&... args) const |
void | mooseDeprecated (Args &&... args) const |
void | mooseInfo (Args &&... args) const |
std::string | getDataFileName (const std::string ¶m) const |
std::string | getDataFileNameByName (const std::string &relative_path) const |
std::string | getDataFilePath (const std::string &relative_path) const |
virtual void | timestepSetup () |
virtual void | jacobianSetup () |
virtual void | residualSetup () |
virtual void | customSetup (const ExecFlagType &) |
const ExecFlagEnum & | getExecuteOnEnum () const |
UserObjectName | getUserObjectName (const std::string ¶m_name) const |
const T & | getUserObject (const std::string ¶m_name, bool is_dependency=true) const |
const T & | getUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const |
const UserObject & | getUserObjectBase (const std::string ¶m_name, bool is_dependency=true) const |
const UserObject & | getUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const |
const std::vector< MooseVariableScalar *> & | getCoupledMooseScalarVars () |
const std::set< TagID > & | getScalarVariableCoupleableVectorTags () const |
const std::set< TagID > & | getScalarVariableCoupleableMatrixTags () const |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, const unsigned int state=0) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name, MaterialData &material_data) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name) |
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > | getBlockMaterialProperty (const MaterialPropertyName &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty () |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialPropertyByName (const std::string &prop_name) |
const MaterialProperty< T > & | getZeroMaterialProperty (Ts... args) |
std::set< SubdomainID > | getMaterialPropertyBlocks (const std::string &name) |
std::vector< SubdomainName > | getMaterialPropertyBlockNames (const std::string &name) |
std::set< BoundaryID > | getMaterialPropertyBoundaryIDs (const std::string &name) |
std::vector< BoundaryName > | getMaterialPropertyBoundaryNames (const std::string &name) |
void | checkBlockAndBoundaryCompatibility (std::shared_ptr< MaterialBase > discrete) |
std::unordered_map< SubdomainID, std::vector< MaterialBase *> > | buildRequiredMaterials (bool allow_stateful=true) |
void | statefulPropertiesAllowed (bool) |
bool | getMaterialPropertyCalled () const |
virtual const std::unordered_set< unsigned int > & | getMatPropDependencies () const |
virtual void | resolveOptionalProperties () |
const GenericMaterialProperty< T, is_ad > & | getPossiblyConstantGenericMaterialPropertyByName (const MaterialPropertyName &prop_name, MaterialData &material_data, const unsigned int state) |
bool | isImplicit () |
Moose::StateArg | determineState () const |
virtual void | threadJoin (const UserObject &) override |
virtual void | threadJoin (const UserObject &) override |
virtual void | subdomainSetup () override |
virtual void | subdomainSetup () override |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
const GenericOptionalMaterialProperty< T, is_ad > & | getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const GenericOptionalMaterialProperty< T, is_ad > & | getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalMaterialProperty< T > & | getOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalMaterialProperty< T > & | getOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalADMaterialProperty< T > & | getOptionalADMaterialProperty (const std::string &name) |
const OptionalADMaterialProperty< T > & | getOptionalADMaterialProperty (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOld (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOld (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOlder (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOlder (const std::string &name) |
MaterialBase & | getMaterial (const std::string &name) |
MaterialBase & | getMaterial (const std::string &name) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false) |
bool | hasMaterialProperty (const std::string &name) |
bool | hasMaterialProperty (const std::string &name) |
bool | hasMaterialPropertyByName (const std::string &name) |
bool | hasMaterialPropertyByName (const std::string &name) |
bool | hasADMaterialProperty (const std::string &name) |
bool | hasADMaterialProperty (const std::string &name) |
bool | hasADMaterialPropertyByName (const std::string &name) |
bool | hasADMaterialPropertyByName (const std::string &name) |
bool | hasGenericMaterialProperty (const std::string &name) |
bool | hasGenericMaterialProperty (const std::string &name) |
bool | hasGenericMaterialPropertyByName (const std::string &name) |
bool | hasGenericMaterialPropertyByName (const std::string &name) |
const Function & | getFunction (const std::string &name) const |
const Function & | getFunctionByName (const FunctionName &name) const |
bool | hasFunction (const std::string ¶m_name) const |
bool | hasFunctionByName (const FunctionName &name) const |
bool | isDefaultPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
bool | hasPostprocessor (const std::string ¶m_name, const unsigned int index=0) const |
bool | hasPostprocessorByName (const PostprocessorName &name) const |
std::size_t | coupledPostprocessors (const std::string ¶m_name) const |
const PostprocessorName & | getPostprocessorName (const std::string ¶m_name, const unsigned int index=0) const |
const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
bool | hasVectorPostprocessor (const std::string ¶m_name, const std::string &vector_name) const |
bool | hasVectorPostprocessor (const std::string ¶m_name) const |
bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name) const |
const VectorPostprocessorName & | getVectorPostprocessorName (const std::string ¶m_name) const |
T & | getSampler (const std::string &name) |
Sampler & | getSampler (const std::string &name) |
T & | getSamplerByName (const SamplerName &name) |
Sampler & | getSamplerByName (const SamplerName &name) |
virtual void | meshDisplaced () |
PerfGraph & | perfGraph () |
const PostprocessorValue & | getPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOld (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOld (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOlder (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOlder (const std::string ¶m_name, const unsigned int index=0) const |
virtual const PostprocessorValue & | getPostprocessorValueByName (const PostprocessorName &name) const |
virtual const PostprocessorValue & | getPostprocessorValueByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOldByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOldByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOlderByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOlderByName (const PostprocessorName &name) const |
bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
const Distribution & | getDistribution (const std::string &name) const |
const T & | getDistribution (const std::string &name) const |
const Distribution & | getDistribution (const std::string &name) const |
const T & | getDistribution (const std::string &name) const |
const Distribution & | getDistributionByName (const DistributionName &name) const |
const T & | getDistributionByName (const std::string &name) const |
const Distribution & | getDistributionByName (const DistributionName &name) const |
const T & | getDistributionByName (const std::string &name) const |
const Parallel::Communicator & | comm () const |
processor_id_type | n_processors () const |
processor_id_type | processor_id () const |
const std::vector< SubdomainName > & | blocks () const |
unsigned int | numBlocks () const |
virtual const std::set< SubdomainID > & | blockIDs () const |
unsigned int | blocksMaxDimension () const |
bool | hasBlocks (const SubdomainName &name) const |
bool | hasBlocks (const std::vector< SubdomainName > &names) const |
bool | hasBlocks (const std::set< SubdomainName > &names) const |
bool | hasBlocks (SubdomainID id) const |
bool | hasBlocks (const std::vector< SubdomainID > &ids) const |
bool | hasBlocks (const std::set< SubdomainID > &ids) const |
bool | isBlockSubset (const std::set< SubdomainID > &ids) const |
bool | isBlockSubset (const std::vector< SubdomainID > &ids) const |
bool | hasBlockMaterialProperty (const std::string &prop_name) |
const std::set< SubdomainID > & | meshBlockIDs () const |
virtual bool | blockRestricted () const |
virtual void | checkVariable (const MooseVariableFieldBase &variable) const |
Static Public Member Functions | |
static InputParameters | validParams () |
static void | sort (typename std::vector< T > &vector) |
static void | sortDFS (typename std::vector< T > &vector) |
static void | cyclicDependencyError (CyclicDependencyException< T2 > &e, const std::string &header) |
static std::string | deduceFunctorName (const std::string &name, const InputParameters ¶ms) |
Public Attributes | |
const ConsoleStream | _console |
Static Public Attributes | |
static constexpr PropertyValue::id_type | default_property_id |
static constexpr PropertyValue::id_type | zero_property_id |
static constexpr auto | SYSTEM |
static constexpr auto | NAME |
Protected Member Functions | |
std::vector< std::unique_ptr< NumericVector< Number > > > & | selectPressureGradient (const bool updated_pressure) |
Select the right pressure gradient field and return a reference to the container. More... | |
void | setupMeshInformation () |
Compute the cell volumes on the mesh. More... | |
void | populateCouplingFunctors (const std::vector< std::unique_ptr< NumericVector< Number >>> &raw_hbya, const std::vector< std::unique_ptr< NumericVector< Number >>> &raw_Ainv) |
Populate the face values of the H/A and 1/A fields. More... | |
template<typename VarType > | |
void | checkBlocks (const VarType &var) const |
Check the block consistency between the passed in var and us. More... | |
virtual bool | supportMeshVelocity () const override |
Returns whether the UO can support mesh velocity advection. More... | |
virtual void | addPostprocessorDependencyHelper (const PostprocessorName &name) const override |
virtual void | addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &name) const override |
virtual void | addUserObjectDependencyHelper (const UserObject &uo) const override |
void | addReporterDependencyHelper (const ReporterName &reporter_name) override |
const ReporterName & | getReporterName (const std::string ¶m_name) const |
T & | declareRestartableData (const std::string &data_name, Args &&... args) |
ManagedValue< T > | declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
const T & | getRestartableData (const std::string &data_name) const |
T & | declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
T & | declareRecoverableData (const std::string &data_name, Args &&... args) |
T & | declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args) |
T & | declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args) |
std::string | restartableName (const std::string &data_name) const |
const T & | getMeshProperty (const std::string &data_name, const std::string &prefix) |
const T & | getMeshProperty (const std::string &data_name) |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name) const |
bool | hasMeshProperty (const std::string &data_name) const |
std::string | meshPropertyName (const std::string &data_name) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const |
std::string | timedSectionName (const std::string §ion_name) const |
bool | isCoupledScalar (const std::string &var_name, unsigned int i=0) const |
unsigned int | coupledScalarComponents (const std::string &var_name) const |
unsigned int | coupledScalar (const std::string &var_name, unsigned int comp=0) const |
libMesh::Order | coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< is_ad > & | coupledGenericScalarValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const |
const VariableValue & | coupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const |
const VariableValue & | coupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const |
const VariableValue & | coupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const |
const MooseVariableScalar * | getScalarVar (const std::string &var_name, unsigned int comp) const |
virtual void | checkMaterialProperty (const std::string &name, const unsigned int state) |
void | markMatPropRequested (const std::string &) |
MaterialPropertyName | getMaterialPropertyName (const std::string &name) const |
void | checkExecutionStage () |
const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
const GenericMaterialProperty< T, is_ad > * | defaultGenericMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > * | defaultGenericMaterialProperty (const std::string &name) |
const MaterialProperty< T > * | defaultMaterialProperty (const std::string &name) |
const MaterialProperty< T > * | defaultMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > * | defaultADMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > * | defaultADMaterialProperty (const std::string &name) |
virtual bool | hasBlockMaterialPropertyHelper (const std::string &prop_name) |
void | initializeBlockRestrictable (const MooseObject *moose_object) |
Moose::CoordinateSystemType | getBlockCoordSystem () |
std::string | deduceFunctorName (const std::string &name) const |
const Moose::Functor< T > & | getFunctor (const std::string &name) |
const Moose::Functor< T > & | getFunctor (const std::string &name, THREAD_ID tid) |
const Moose::Functor< T > & | getFunctor (const std::string &name, SubProblem &subproblem) |
const Moose::Functor< T > & | getFunctor (const std::string &name, SubProblem &subproblem, THREAD_ID tid) |
bool | isFunctor (const std::string &name) const |
bool | isFunctor (const std::string &name, const SubProblem &subproblem) const |
Moose::ElemArg | makeElemArg (const Elem *elem, bool correct_skewnewss=false) const |
void | checkFunctorSupportsSideIntegration (const std::string &name, bool qp_integration) |
Static Protected Member Functions | |
static std::string | meshPropertyName (const std::string &data_name, const std::string &prefix) |
Protected Attributes | |
const MooseMesh & | _moose_mesh |
The MooseMesh that this user object operates on. More... | |
const libMesh::MeshBase & | _mesh |
The libMesh mesh that this object acts on. More... | |
const unsigned int | _dim |
The dimension of the mesh, e.g. 3 for hexes and tets, 2 for quads and tris. More... | |
const MooseLinearVariableFVReal *const | _p |
The thread 0 copy of the pressure variable. More... | |
std::vector< const MooseLinearVariableFVReal * > | _vel |
The thread 0 copy of the x-velocity variable. More... | |
LinearFVAnisotropicDiffusion * | _p_diffusion_kernel |
Pointer to the pressure diffusion term in the pressure Poisson equation. More... | |
FaceCenteredMapFunctor< Real, std::unordered_map< dof_id_type, Real > > | _HbyA_flux |
A map functor from faces to $HbyA_{ij} = (A_{offdiag}*{(predicted~velocity)} - {Source})_{ij}/A_{ij}$. More... | |
std::vector< std::unique_ptr< NumericVector< Number > > > | _HbyA_raw |
We hold on to the cell-based HbyA vectors so that we can easily reconstruct the cell velocities as well. More... | |
FaceCenteredMapFunctor< RealVectorValue, std::unordered_map< dof_id_type, RealVectorValue > > | _Ainv |
A map functor from faces to $(1/A)_f$. More... | |
std::vector< std::unique_ptr< NumericVector< Number > > > | _Ainv_raw |
We hold on to the cell-based 1/A vectors so that we can easily reconstruct the cell velocities as well. More... | |
FaceCenteredMapFunctor< Real, std::unordered_map< dof_id_type, Real > > & | _face_mass_flux |
A map functor from faces to mass fluxes which are used in the advection terms. More... | |
std::vector< std::unique_ptr< NumericVector< Number > > > | _grad_p_current |
for a PISO iteration we need to hold on to the original pressure gradient field. More... | |
const Moose::Functor< Real > & | _rho |
Functor describing the density of the fluid. More... | |
std::vector< LinearSystem * > | _momentum_systems |
Pointers to the linear system(s) in moose corresponding to the momentum equation(s) More... | |
std::vector< unsigned int > | _momentum_system_numbers |
Numbers of the momentum system(s) More... | |
std::vector< unsigned int > | _global_momentum_system_numbers |
Global numbers of the momentum system(s) More... | |
std::vector< libMesh::LinearImplicitSystem * > | _momentum_implicit_systems |
Pointers to the momentum equation implicit system(s) from libmesh. More... | |
const LinearSystem * | _pressure_system |
Pointer to the pressure system. More... | |
unsigned int | _global_pressure_system_number |
Global number of the pressure system. More... | |
std::unique_ptr< NumericVector< Number > > | _cell_volumes |
We will hold a vector of cell volumes to make sure we can do volume corrections rapidly. More... | |
const MooseEnum | _pressure_projection_method |
Enumerator for the method used for pressure projection. More... | |
SubProblem & | _subproblem |
FEProblemBase & | _fe_problem |
SystemBase & | _sys |
const THREAD_ID | _tid |
Assembly & | _assembly |
const Moose::CoordinateSystemType & | _coord_sys |
const bool | _duplicate_initial_execution |
std::set< std::string > | _depend_uo |
const bool & | _enabled |
MooseApp & | _app |
const std::string | _type |
const std::string | _name |
const InputParameters & | _pars |
Factory & | _factory |
ActionFactory & | _action_factory |
const ExecFlagEnum & | _execute_enum |
const ExecFlagType & | _current_execute_flag |
MooseApp & | _restartable_app |
const std::string | _restartable_system_name |
const THREAD_ID | _restartable_tid |
const bool | _restartable_read_only |
FEProblemBase & | _mci_feproblem |
FEProblemBase & | _mdi_feproblem |
MooseApp & | _pg_moose_app |
const std::string | _prefix |
FEProblemBase & | _sc_fe_problem |
const THREAD_ID | _sc_tid |
const Real & | _real_zero |
const VariableValue & | _scalar_zero |
const Point & | _point_zero |
const InputParameters & | _mi_params |
const std::string | _mi_name |
const MooseObjectName | _mi_moose_object_name |
FEProblemBase & | _mi_feproblem |
SubProblem & | _mi_subproblem |
const THREAD_ID | _mi_tid |
const Moose::MaterialDataType | _material_data_type |
MaterialData & | _material_data |
bool | _stateful_allowed |
bool | _get_material_property_called |
std::vector< std::unique_ptr< PropertyValue > > | _default_properties |
std::unordered_set< unsigned int > | _material_property_dependencies |
const MaterialPropertyName | _get_suffix |
const bool | _use_interpolated_state |
const InputParameters & | _ti_params |
FEProblemBase & | _ti_feproblem |
bool | _is_implicit |
Real & | _t |
const Real & | _t_old |
int & | _t_step |
Real & | _dt |
Real & | _dt_old |
bool | _is_transient |
const Parallel::Communicator & | _communicator |
const MaterialData * | _blk_material_data |
Static Protected Attributes | |
static const std::string | _interpolated_old |
static const std::string | _interpolated_older |
Private Attributes | |
std::vector< const FaceInfo * > | _flow_face_info |
The subset of the FaceInfo objects that actually cover the subdomains which the flow field is defined on. More... | |
User object responsible for determining the face fluxes using the Rhie-Chow interpolation in a segregated solver that uses the linear FV formulation.
Definition at line 36 of file RhieChowMassFlux.h.
RhieChowMassFlux::RhieChowMassFlux | ( | const InputParameters & | params | ) |
Definition at line 65 of file RhieChowMassFlux.C.
|
protected |
Check the block consistency between the passed in var
and us.
Definition at line 199 of file RhieChowMassFlux.h.
Referenced by RhieChowMassFlux().
void RhieChowMassFlux::computeCellVelocity | ( | ) |
Update the cell values of the velocity variables.
Definition at line 353 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity().
void RhieChowMassFlux::computeFaceMassFlux | ( | ) |
Update the values of the face velocities in the containers.
Definition at line 283 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity().
void RhieChowMassFlux::computeHbyA | ( | const bool | with_updated_pressure, |
const bool | verbose | ||
) |
Computes the inverse of the diagonal (1/A) of the system matrix plus the H/A components for the pressure equation plus Rhie-Chow interpolation.
Definition at line 484 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity().
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Get the face velocity times density (used in advection terms)
Definition at line 247 of file RhieChowMassFlux.C.
Referenced by LinearFVEnergyAdvection::setupFaceData(), LinearWCNSFV2PMomentumDriftFlux::setupFaceData(), and LinearWCNSFVMomentumFlux::setupFaceData().
Get the volumetric face flux (used in advection terms)
Definition at line 253 of file RhieChowMassFlux.C.
Referenced by LinearFVScalarAdvection::setupFaceData().
|
overridevirtual |
Retrieve the volumetric face flux, will not include derivatives.
m | The velocity interpolation method. This is either Rhie-Chow or Average. Rhie-Chow is recommended as it avoids checkerboards in the pressure field |
fi | The face that we wish to retrieve the velocity for |
tid | The thread ID |
Implements RhieChowFaceFluxProvider.
|
overridevirtualinherited |
Implements FaceArgInterface.
Definition at line 29 of file RhieChowFaceFluxProvider.C.
void RhieChowMassFlux::initCouplingField | ( | ) |
Initialize the coupling fields (HbyA and Ainv)
Definition at line 373 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::linkRhieChowUserObject().
void RhieChowMassFlux::initFaceMassFlux | ( | ) |
Initialize the container for face velocities.
Definition at line 198 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::linkRhieChowUserObject().
|
overridevirtual |
Implements GeneralUserObject.
Definition at line 188 of file RhieChowMassFlux.C.
|
overridevirtual |
Reimplemented from GeneralUserObject.
Definition at line 141 of file RhieChowMassFlux.C.
void RhieChowMassFlux::linkMomentumPressureSystems | ( | const std::vector< LinearSystem *> & | momentum_systems, |
const LinearSystem & | pressure_system, | ||
const std::vector< unsigned int > & | momentum_system_numbers | ||
) |
Update the momentum system-related information.
momentum_systems | Pointers to the momentum systems which are solved for the momentum vector components |
pressure_system | Reference to the pressure system |
momentum_system_numbers | The numbers of these systems |
Definition at line 111 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::linkRhieChowUserObject().
|
overridevirtual |
Reimplemented from GeneralUserObject.
Definition at line 132 of file RhieChowMassFlux.C.
|
protected |
Populate the face values of the H/A and 1/A fields.
Definition at line 386 of file RhieChowMassFlux.C.
Referenced by computeHbyA().
|
protected |
Select the right pressure gradient field and return a reference to the container.
Definition at line 659 of file RhieChowMassFlux.C.
Referenced by computeHbyA().
|
protected |
Compute the cell volumes on the mesh.
Definition at line 164 of file RhieChowMassFlux.C.
Referenced by linkMomentumPressureSystems(), and meshChanged().
|
inlineoverrideprotectedvirtual |
Returns whether the UO can support mesh velocity advection.
Reimplemented from RhieChowFaceFluxProvider.
Definition at line 105 of file RhieChowMassFlux.h.
|
static |
Definition at line 32 of file RhieChowMassFlux.C.
|
protected |
A map functor from faces to $(1/A)_f$.
Where $A_i$ is the diagonal of the system matrix for the momentum equation.
Definition at line 143 of file RhieChowMassFlux.h.
Referenced by initCouplingField(), initialize(), meshChanged(), populateCouplingFunctors(), and RhieChowMassFlux().
|
protected |
We hold on to the cell-based 1/A vectors so that we can easily reconstruct the cell velocities as well.
Definition at line 149 of file RhieChowMassFlux.h.
Referenced by computeCellVelocity(), and computeHbyA().
|
protected |
We will hold a vector of cell volumes to make sure we can do volume corrections rapidly.
Definition at line 186 of file RhieChowMassFlux.h.
Referenced by computeHbyA(), and setupMeshInformation().
|
protected |
The dimension of the mesh, e.g. 3 for hexes and tets, 2 for quads and tris.
Definition at line 114 of file RhieChowMassFlux.h.
Referenced by populateCouplingFunctors().
|
protected |
A map functor from faces to mass fluxes which are used in the advection terms.
Definition at line 154 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), getMassFlux(), getVolumetricFaceFlux(), initFaceMassFlux(), and meshChanged().
|
private |
The subset of the FaceInfo objects that actually cover the subdomains which the flow field is defined on.
Cached for performance optimization.
Definition at line 194 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), initFaceMassFlux(), populateCouplingFunctors(), and setupMeshInformation().
|
protected |
Global numbers of the momentum system(s)
Definition at line 174 of file RhieChowMassFlux.h.
Referenced by linkMomentumPressureSystems(), and populateCouplingFunctors().
|
protected |
Global number of the pressure system.
Definition at line 183 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), linkMomentumPressureSystems(), and setupMeshInformation().
|
protected |
for a PISO iteration we need to hold on to the original pressure gradient field.
Should not be used in other conditions.
Definition at line 160 of file RhieChowMassFlux.h.
Referenced by selectPressureGradient().
|
protected |
A map functor from faces to $HbyA_{ij} = (A_{offdiag}*{(predicted~velocity)} - {Source})_{ij}/A_{ij}$.
So this contains the off-diagonal part of the system matrix multiplied by the predicted velocity minus the source terms from the right hand side of the linearized momentum predictor step.
Definition at line 131 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), initCouplingField(), initialize(), meshChanged(), populateCouplingFunctors(), and RhieChowMassFlux().
|
protected |
We hold on to the cell-based HbyA vectors so that we can easily reconstruct the cell velocities as well.
Definition at line 137 of file RhieChowMassFlux.h.
Referenced by computeCellVelocity(), and computeHbyA().
|
protected |
The libMesh
mesh that this object acts on.
Definition at line 111 of file RhieChowMassFlux.h.
|
protected |
Pointers to the momentum equation implicit system(s) from libmesh.
Definition at line 177 of file RhieChowMassFlux.h.
Referenced by computeCellVelocity(), computeHbyA(), and linkMomentumPressureSystems().
|
protected |
Numbers of the momentum system(s)
Definition at line 171 of file RhieChowMassFlux.h.
Referenced by linkMomentumPressureSystems().
|
protected |
Pointers to the linear system(s) in moose corresponding to the momentum equation(s)
Definition at line 168 of file RhieChowMassFlux.h.
Referenced by computeCellVelocity(), computeHbyA(), and linkMomentumPressureSystems().
|
protected |
The MooseMesh
that this user object operates on.
Definition at line 108 of file RhieChowMassFlux.h.
Referenced by checkBlocks().
|
protected |
The thread 0 copy of the pressure variable.
Definition at line 117 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), initialSetup(), and RhieChowMassFlux().
|
protected |
Pointer to the pressure diffusion term in the pressure Poisson equation.
Definition at line 123 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), and initialSetup().
|
protected |
Enumerator for the method used for pressure projection.
Definition at line 189 of file RhieChowMassFlux.h.
Referenced by computeHbyA().
|
protected |
Pointer to the pressure system.
Definition at line 180 of file RhieChowMassFlux.h.
Referenced by computeCellVelocity(), computeFaceMassFlux(), linkMomentumPressureSystems(), selectPressureGradient(), and setupMeshInformation().
|
protected |
Functor describing the density of the fluid.
Definition at line 165 of file RhieChowMassFlux.h.
Referenced by getVolumetricFaceFlux(), initFaceMassFlux(), and populateCouplingFunctors().
|
protected |
The thread 0 copy of the x-velocity variable.
Definition at line 120 of file RhieChowMassFlux.h.
Referenced by initFaceMassFlux(), populateCouplingFunctors(), and RhieChowMassFlux().