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) | |
| Real | getVolumetricFaceFlux (const FaceInfo &fi) const |
| Get the volumetric face flux (used in advection terms) | |
| const LinearFVGradientReader & | pressureGradientField () const |
| Get the registered pressure gradient field used by compatible momentum pressure kernels. | |
| const LinearFVGradientReader & | basePressureGradientField () const |
| Get the base pressure gradient field used to seed reconstructed gradient updates. | |
| const std::vector< NumericVector< Number > * > & | basePressureGradientComponents () const |
| Get the base-pressure gradient component vectors used to seed reconstructed updates. | |
| const std::vector< std::unique_ptr< NumericVector< Number > > > & | HbyAComponents () const |
| Get the momentum-layout H/A component vectors. | |
| const std::vector< std::unique_ptr< NumericVector< Number > > > & | AinvComponents () const |
| Get the momentum-layout 1/A component vectors. | |
| unsigned int | pressureVariableNumber () const |
| Variable number of the pressure variable reconstructed by this object. | |
| unsigned int | dimension () const |
| Number of spatial dimensions of the coupled momentum/pressure systems. | |
| MooseLinearVariableFVReal & | velocityVariable (unsigned int component) |
| Velocity variable for one spatial component. | |
| const MooseLinearVariableFVReal & | velocityVariable (unsigned int component) const |
| Velocity variable for one spatial component. | |
| LinearSystem & | momentumSystem (unsigned int component) |
| Momentum linear system for one spatial component. | |
| const LinearSystem & | momentumSystem (unsigned int component) const |
| Momentum linear system for one spatial component. | |
| const LinearSystem & | pressureSystem () const |
| Pressure linear system. | |
| dof_id_type | faceMassFluxGeneration () const |
| Producer counter for the conservative face mass flux: incremented every time computeFaceMassFlux() runs. | |
| 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. | |
| void | initFaceMassFlux () |
| Initialize the container for face velocities. | |
| void | initCouplingField () |
| Initialize the coupling fields (HbyA and Ainv) | |
| void | computeFaceMassFlux () |
| Update the values of the face velocities in the containers. | |
| bool | usingReconstructedPressureGradientMethod () const |
| Whether the registered pressure gradient field is produced by the reconstructed method. | |
| void | prepareMomentumPredictor () |
| Snapshot the fields read by the next momentum predictor. | |
| void | finalizeMomentumPredictor () |
| Capture the lagged velocity gradients computed while assembling the momentum predictor. | |
| void | preparePISOCorrector () |
| Capture the lagged velocity gradient for another corrector using the current predictor. | |
| void | preparePressureRelaxation () |
| Before pressure relaxation, form the conservative reconstructed candidate from the corrected face flux and update the cell velocity from that unrelaxed candidate. | |
| void | finalizePressureCorrector () |
| After pressure relaxation, refresh every registered pressure gradient and publish relaxed reconstructed feedback for the next momentum predictor. | |
| void | initPressureGradient () |
| Compute every registered pressure gradient once, before the first momentum predictor of a SIMPLE iteration sequence has anything to read. | |
| virtual void | meshChanged () override |
| virtual void | initialize () override |
| virtual void | execute () override |
| virtual void | finalize () override |
| virtual void | initialSetup () override |
| virtual void | timestepSetup () override |
| Prepare reconstructed-gradient state once per attempted time step. | |
| void | linkMomentumPressureSystems (const std::vector< LinearSystem * > &momentum_systems, LinearSystem &pressure_system, const std::vector< unsigned int > &momentum_system_numbers) |
| Update the momentum system-related information. | |
| void | computeHbyA (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. | |
| bool | hasFaceSide (const FaceInfo &fi, const bool fi_elem_side) const override |
| virtual Real | spatialValue (const Point &) const |
| virtual const std::vector< Point > | spatialPoints () const |
| void | setPrimaryThreadCopy (UserObject *primary) |
| UserObject * | primaryThreadCopy () |
| SubProblem & | getSubProblem () const |
| bool | shouldDuplicateInitialExecution () 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) |
| std::set< UserObjectName > | getDependObjects () const |
| const std::set< std::string > & | getRequestedItems () override |
| const std::set< std::string > & | getSuppliedItems () override |
| unsigned int | systemNumber () const |
| virtual bool | needThreadedCopy () const |
| virtual bool | enabled () const |
| std::shared_ptr< MooseObject > | getSharedPtr () |
| std::shared_ptr< const MooseObject > | getSharedPtr () const |
| bool | isKokkosObject () const |
| MooseApp & | getMooseApp () const |
| const std::string & | type () const |
| const std::string & | name () const |
| std::string | typeAndName () const |
| MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
| MooseObjectName | uniqueName () const |
| const InputParameters & | parameters () const |
| const hit::Node * | getHitNode () const |
| bool | hasBase () const |
| const std::string & | getBase () 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 &name) const |
| void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
| void | paramError (const std::string ¶m, Args... args) const |
| void | paramWarning (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 |
| std::string | messagePrefix (const bool hit_prefix=true) const |
| std::string | errorPrefix (const std::string &) const |
| void | mooseError (Args &&... args) const |
| void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
| void | mooseErrorNonPrefixed (Args &&... args) const |
| void | mooseWarning (Args &&... args) const |
| void | mooseWarning (Args &&... args) const |
| void | mooseWarningNonPrefixed (Args &&... args) const |
| void | mooseWarningNonPrefixed (Args &&... args) const |
| void | mooseDeprecated (Args &&... args) const |
| void | mooseDeprecated (Args &&... args) const |
| void | mooseDeprecatedNoTrace (Args &&... args) const |
| void | mooseInfo (Args &&... args) const |
| void | callMooseError (std::string msg, const bool with_prefix, const hit::Node *node=nullptr, const bool show_trace=true) 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 | 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 UserObjectBase & | getUserObjectBase (const std::string ¶m_name, bool is_dependency=true) const |
| const UserObjectBase & | 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) |
| Moose::Kokkos::MaterialProperty< T, dimension > | getKokkosMaterialPropertyByName (const std::string &prop_name_in) |
| Moose::Kokkos::MaterialProperty< T, dimension > | getKokkosMaterialPropertyOldByName (const std::string &prop_name) |
| Moose::Kokkos::MaterialProperty< T, dimension > | getKokkosMaterialPropertyOlderByName (const std::string &prop_name) |
| Moose::Kokkos::MaterialProperty< T, dimension > | getKokkosMaterialProperty (const std::string &name) |
| Moose::Kokkos::MaterialProperty< T, dimension > | getKokkosMaterialPropertyOld (const std::string &name) |
| Moose::Kokkos::MaterialProperty< T, dimension > | getKokkosMaterialPropertyOlder (const std::string &name) |
| std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > | getBlockMaterialProperty (const MaterialPropertyName &name) |
| std::pair< Moose::Kokkos::MaterialProperty< T, dimension >, std::set< SubdomainID > > | getKokkosBlockMaterialProperty (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) |
| virtual 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 | hasKokkosMaterialProperty (const std::string &name) |
| bool | hasKokkosMaterialProperty (const std::string &name) |
| bool | hasKokkosMaterialPropertyByName (const std::string &name) |
| bool | hasKokkosMaterialPropertyByName (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 |
| Moose::Kokkos::Function | getKokkosFunction (const std::string &name) const |
| const T & | getKokkosFunction (const std::string &name) const |
| Moose::Kokkos::Function | getKokkosFunctionByName (const FunctionName &name) const |
| const T & | getKokkosFunctionByName (const FunctionName &name) const |
| bool | hasKokkosFunction (const std::string ¶m_name) const |
| bool | hasKokkosFunctionByName (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 MooseVariableBase &variable) const |
| const Moose::Functor< Real > * | defaultFunctor (const std::string &name) |
| const Moose::Functor< ADReal > * | defaultFunctor (const std::string &name) |
Static Public Member Functions | |
| static InputParameters | validParams () |
| static void | callMooseError (MooseApp *const app, const InputParameters ¶ms, std::string msg, const bool with_prefix, const hit::Node *node, const bool show_trace=true) |
| 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, NameFunc &&name_func) |
| static void | cyclicDependencyError (CyclicDependencyException< T2 > &e, const std::string &header) |
| static std::string | deduceFunctorName (const std::string &name, const InputParameters ¶ms) |
Public Attributes | |
| usingCombinedWarningSolutionWarnings | |
| const ConsoleStream | _console |
Static Public Attributes | |
| static const std::string | type_param |
| static const std::string | name_param |
| static const std::string | unique_name_param |
| static const std::string | app_param |
| static const std::string | moose_base_param |
| static const std::string | kokkos_object_param |
| 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 | |
| template<typename GradientComponent > | |
| void | updateCellVelocity (const std::vector< GradientComponent > &pressure_gradient) |
| Update cell velocity from the supplied momentum-coupling pressure gradient. | |
| const std::vector< NumericVector< Number > * > & | pressureGradientComponents () const |
| Get the registered pressure gradient component vectors. | |
| FVReconstructedPressureGradient & | reconstructedGradientMethod () |
| Access the reconstructed gradient method when it is selected. | |
| const FVReconstructedPressureGradient & | reconstructedGradientMethod () const |
| Access the reconstructed gradient method when it is selected. | |
| void | checkReconstructedPressureGradientCompatibility () const |
| Check the single-variable system layout assumed by reconstructed pressure-gradient vector ops. | |
| void | setupMeshInformation () |
| Compute the cell volumes on the mesh. | |
| 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. | |
| template<typename VarType > | |
| void | checkBlocks (const VarType &var) const |
Check the block consistency between the passed in var and us. | |
| virtual bool | supportMeshVelocity () const override |
| Returns whether the UO can support mesh velocity advection. | |
| virtual void | addPostprocessorDependencyHelper (const PostprocessorName &name) const override |
| virtual void | addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &name) const override |
| virtual void | addUserObjectDependencyHelper (const UserObjectBase &uo) const override |
| void | addReporterDependencyHelper (const ReporterName &reporter_name) override |
| void | flagInvalidSolutionInternal (const InvalidSolutionID invalid_solution_id) const |
| InvalidSolutionID | registerInvalidSolutionInternal (const std::string &message, const bool warning) const |
| const ReporterContextBase & | getReporterContextBaseByName (const ReporterName &reporter_name) const |
| 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, const std::string &tag_param_name, unsigned int comp=0) const |
| const VariableValue & | coupledMatrixTagScalarValue (const std::string &var_name, const std::string &tag_param_name, 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 |
| Moose::Kokkos::VariableValue | kokkosCoupledVectorTagScalarValueByName (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const |
| Moose::Kokkos::VariableValue | kokkosCoupledVectorTagScalarValue (const std::string &var_name, const std::string &tag_param_name, unsigned int comp=0) const |
| Moose::Kokkos::VariableValue | kokkosCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
| Moose::Kokkos::VariableValue | kokkosCoupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const |
| Moose::Kokkos::VariableValue | kokkosCoupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const |
| Moose::Kokkos::VariableValue | kokkosCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
| Moose::Kokkos::Scalar< const Real > | kokkosCoupledScalarDotDu (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) |
| virtual void | getKokkosMaterialPropertyHook (const std::string &, const unsigned int) |
| 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) |
| void | initializeKokkosBlockRestrictable () |
| Moose::CoordinateSystemType | getBlockCoordSystem () |
| KOKKOS_FUNCTION dof_id_type | numKokkosBlockElements () const |
| KOKKOS_FUNCTION dof_id_type | numKokkosBlockNodes () const |
| KOKKOS_FUNCTION dof_id_type | numKokkosBlockSides () const |
| KOKKOS_FUNCTION ContiguousElementID | kokkosBlockElementID (Moose::Kokkos::ThreadID tid) const |
| KOKKOS_FUNCTION ContiguousElementID | kokkosBlockNodeID (Moose::Kokkos::ThreadID tid) const |
| KOKKOS_FUNCTION auto | kokkosBlockElementSideID (Moose::Kokkos::ThreadID tid) const |
| 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) |
| const Moose::Functor< T > & | getFunctorByName (const std::string &name) |
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. | |
| const libMesh::MeshBase & | _mesh |
The libMesh mesh that this object acts on. | |
| const unsigned int | _dim |
| The dimension of the mesh, e.g. 3 for hexes and tets, 2 for quads and tris. | |
| const MooseLinearVariableFVReal *const | _p |
| The thread 0 copy of the pressure variable. | |
| std::vector< MooseLinearVariableFVReal * > | _vel |
| Thread 0 copies of the velocity variables; non-const to allow writing cell velocities in updateCellVelocity(). | |
| LinearFVPressureCorrectionDiffusion * | _p_diffusion_kernel |
| Pointer to the pressure diffusion term in the pressure Poisson equation. | |
| FaceCenteredMapFunctor< Real, std::unordered_map< dof_id_type, Real > > | _HbyA_flux |
| A map functor from faces to $HbyA_{ij} = (A_{offdiag}*\mathrm{(predicted~velocity)} - \mathrm{Source})_{ij}/A_{ij}$. | |
| 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. | |
| FaceCenteredMapFunctor< RealVectorValue, std::unordered_map< dof_id_type, RealVectorValue > > | _Ainv |
| A map functor from faces to $(1/A)_f$. | |
| 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. | |
| std::unique_ptr< NumericVector< Number > > | _A_avg |
| 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. | |
| std::vector< std::unique_ptr< NumericVector< Number > > > | _grad_p_current |
| Coupling pressure gradient captured before the current momentum predictor is assembled. | |
| dof_id_type | _face_mass_flux_generation = 0 |
| Producer counter for the conservative face mass flux: incremented every time computeFaceMassFlux() runs. | |
| const Moose::Functor< Real > & | _rho |
| Functor describing the density of the fluid. | |
| std::vector< LinearSystem * > | _momentum_systems |
| Pointers to the linear system(s) in moose corresponding to the momentum equation(s) | |
| std::vector< unsigned int > | _momentum_system_numbers |
| Numbers of the momentum system(s) | |
| std::vector< unsigned int > | _global_momentum_system_numbers |
| Global numbers of the momentum system(s) | |
| std::vector< libMesh::LinearImplicitSystem * > | _momentum_implicit_systems |
| Pointers to the momentum equation implicit system(s) from libmesh. | |
| LinearSystem * | _pressure_system |
| Pointer to the pressure system. | |
| const LinearFVGradientReader * | _pressure_gradient_field |
| Registered pressure gradient field used by Rhie-Chow and compatible momentum pressure kernels. | |
| const LinearFVGradientReader * | _base_pressure_gradient_field |
| Base pressure gradient field used to seed reconstructed gradient updates. | |
| unsigned int | _global_pressure_system_number |
| Global number of the pressure system. | |
| std::unique_ptr< NumericVector< Number > > | _cell_volumes |
| We will hold a vector of cell volumes to make sure we can do volume corrections rapidly. | |
| const MooseEnum | _pressure_projection_method |
| Enumerator for the method used for pressure projection. | |
| const Moose::FV::InterpMethod | _pressure_diffusion_interp_method |
| Interpolation method used for the pressure diffusion coefficient on faces. | |
| const Moose::CoordinateSystemType & | _coord_sys |
| const THREAD_ID | _tid |
| SubProblem & | _subproblem |
| FEProblemBase & | _fe_problem |
| SystemBase & | _sys |
| Assembly & | _assembly |
| const bool | _duplicate_initial_execution |
| std::set< std::string > | _depend_uo |
| const bool & | _enabled |
| MooseApp & | _app |
| Factory & | _factory |
| ActionFactory & | _action_factory |
| const std::string & | _type |
| const std::string & | _name |
| const InputParameters & | _pars |
| 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 bool | _is_kokkos_object |
| 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 Member Functions | |
| const Moose::FunctionBase * | getKokkosFunctionByNameHelper (const FunctionName &name) const |
| const UserObjectBase & | getUserObjectFromFEProblem (const UserObjectName &object_name, const THREAD_ID tid=0) const |
| const T & | castUserObject (const UserObjectBase &uo_base, const std::string ¶m_name="") const |
| void | mooseObjectError (const std::string ¶m_name, std::stringstream &oss) const |
| const std::string & | userObjectType (const UserObjectBase &uo) const |
| const std::string & | userObjectName (const UserObjectBase &uo) const |
| const PostprocessorName & | getPostprocessorNameInternal (const std::string ¶m_name, const unsigned int index, const bool allow_default_value=true) const |
| bool | isDefaultPostprocessorValueByName (const PostprocessorName &name) const |
| PostprocessorValue | getDefaultPostprocessorValueByName (const PostprocessorName &name) const |
| void | checkParam (const std::string ¶m_name, const unsigned int index=std::numeric_limits< unsigned int >::max()) const |
| bool | postprocessorsAdded () const |
| const VectorPostprocessorValue & | getVectorPostprocessorByNameHelper (const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const |
| const VectorPostprocessorContext< VectorPostprocessorValue > & | getVectorPostprocessorContextByNameHelper (const VectorPostprocessorName &name, const std::string &vector_name) const |
| bool | vectorPostprocessorsAdded () const |
| bool | reportersAdded () const |
| void | possiblyCheckHasReporter (const ReporterName &reporter_name, const std::string ¶m_name="") const |
| RestartableDataValue & | registerRestartableDataOnApp (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 |
| virtual std::string | meshPropertyPrefix (const std::string &data_name) const |
| const RestartableDataValue & | getMeshPropertyInternal (const std::string &data_name, const std::string &prefix) const |
| void | mooseErrorInternal (Args &&... args) const |
| const VariableValue * | getDefaultValue (const std::string &var_name) const |
| const ADVariableValue * | getADDefaultValue (const std::string &var_name) const |
| void | checkVar (const std::string &var_name) const |
| void | validateExecutionerType (const std::string &name, const std::string &fn_name) const |
| Moose::Kokkos::Variable | kokkosCoupledVectorTagScalarVariable (const std::string &var_name, const std::string &tag_name, unsigned int comp) const |
| Moose::MaterialDataType | getMaterialDataType (const std::set< BoundaryID > &boundary_ids) const |
| unsigned int | getMaxQps () const |
| void | addConsumedPropertyName (const MooseObjectName &obj_name, const std::string &prop_name) |
| const PostprocessorValue & | getPostprocessorValueInternal (const std::string ¶m_name, unsigned int index, std::size_t t_index) const |
| const PostprocessorValue & | getPostprocessorValueInternal (const std::string ¶m_name, unsigned int index, std::size_t t_index) const |
| const PostprocessorValue & | getPostprocessorValueByNameInternal (const PostprocessorName &name, std::size_t t_index) const |
| const PostprocessorValue & | getPostprocessorValueByNameInternal (const PostprocessorName &name, std::size_t t_index) const |
| void | possiblyCheckHasVectorPostprocessor (const std::string ¶m_name, const std::string &vector_name) const |
| void | possiblyCheckHasVectorPostprocessor (const std::string ¶m_name, const std::string &vector_name) const |
| void | possiblyCheckHasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| void | possiblyCheckHasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| const Moose::Functor< T > * | defaultFunctor (const std::string &name) |
| const Moose::Functor< Real > * | defaultFunctor (const std::string &name) |
| const Moose::Functor< ADReal > * | defaultFunctor (const std::string &name) |
| const Moose::Functor< T > & | getFunctorByName (const std::string &name, SubProblem &subproblem, THREAD_ID tid) |
| virtual bool | isADObject () const override |
Static Private Member Functions | |
| static const hit::Node * | getHitNode (const InputParameters ¶ms) |
| static std::string | messagePrefix (const InputParameters ¶ms, const bool hit_prefix) |
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 37 of file RhieChowMassFlux.h.
| RhieChowMassFlux::RhieChowMassFlux | ( | const InputParameters & | params | ) |
Definition at line 78 of file RhieChowMassFlux.C.
| const std::vector< std::unique_ptr< NumericVector< Number > > > & RhieChowMassFlux::AinvComponents | ( | ) | const |
Get the momentum-layout 1/A component vectors.
Definition at line 718 of file RhieChowMassFlux.C.
Referenced by TestRhieChowMassFluxSequence::execute(), and FVReconstructedPressureGradient::reconstructPressureGradient().
| const std::vector< NumericVector< Number > * > & RhieChowMassFlux::basePressureGradientComponents | ( | ) | const |
Get the base-pressure gradient component vectors used to seed reconstructed updates.
Definition at line 726 of file RhieChowMassFlux.C.
Referenced by FVReconstructedPressureGradient::computeCandidateFromCorrectedFlux(), and finalizePressureCorrector().
| const LinearFVGradientReader & RhieChowMassFlux::basePressureGradientField | ( | ) | const |
Get the base pressure gradient field used to seed reconstructed gradient updates.
Definition at line 699 of file RhieChowMassFlux.C.
Referenced by basePressureGradientComponents().
|
protected |
Check the block consistency between the passed in var and us.
Definition at line 313 of file RhieChowMassFlux.h.
Referenced by RhieChowMassFlux().
|
protected |
Check the single-variable system layout assumed by reconstructed pressure-gradient vector ops.
Definition at line 1185 of file RhieChowMassFlux.C.
Referenced by linkMomentumPressureSystems().
| void RhieChowMassFlux::computeFaceMassFlux | ( | ) |
Update the values of the face velocities in the containers.
Definition at line 755 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity(), and TestRhieChowMassFluxSequence::execute().
| void RhieChowMassFlux::computeHbyA | ( | 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 952 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity().
|
inline |
Number of spatial dimensions of the coupled momentum/pressure systems.
Definition at line 68 of file RhieChowMassFlux.h.
Referenced by FVReconstructedPressureGradient::assembleFaceProjection(), FVReconstructedPressureGradient::computeCandidateFromCorrectedFlux(), FVReconstructedPressureGradient::linkFlowSystem(), preparePISOCorrector(), FVReconstructedPressureGradient::reconstructionVelocityGradient(), FVReconstructedPressureGradient::saveLaggedVelocityGradient(), and FVReconstructedPressureGradient::validateSetup().
|
inlineoverridevirtual |
|
inline |
Producer counter for the conservative face mass flux: incremented every time computeFaceMassFlux() runs.
Used to verify reconstruction consumes the face flux produced by the current pressure corrector, not one left over from a preceding corrector.
Definition at line 96 of file RhieChowMassFlux.h.
Referenced by FVReconstructedPressureGradient::computeCandidateFromCorrectedFlux().
|
inlineoverridevirtual |
| void RhieChowMassFlux::finalizeMomentumPredictor | ( | ) |
Capture the lagged velocity gradients computed while assembling the momentum predictor.
Definition at line 412 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::solveMomentumPredictor().
| void RhieChowMassFlux::finalizePressureCorrector | ( | ) |
After pressure relaxation, refresh every registered pressure gradient and publish relaxed reconstructed feedback for the next momentum predictor.
Ordinary methods also update the cell velocity here, preserving their existing relaxed-pressure behavior.
Definition at line 445 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity().
| Real RhieChowMassFlux::getMassFlux | ( | const FaceInfo & | fi | ) | const |
Get the face velocity times density (used in advection terms)
Definition at line 615 of file RhieChowMassFlux.C.
Referenced by LinearFVEnergyAdvection::setupFaceData(), LinearFVTurbulentAdvection::setupFaceData(), LinearWCNSFV2PMomentumDriftFlux::setupFaceData(), and LinearWCNSFVMomentumFlux::setupFaceData().
| Real RhieChowMassFlux::getVolumetricFaceFlux | ( | const FaceInfo & | fi | ) | const |
Get the volumetric face flux (used in advection terms)
Definition at line 621 of file RhieChowMassFlux.C.
Referenced by FVReconstructedPressureGradient::assembleFaceProjection(), and 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 27 of file RhieChowFaceFluxProvider.C.
| const std::vector< std::unique_ptr< NumericVector< Number > > > & RhieChowMassFlux::HbyAComponents | ( | ) | const |
Get the momentum-layout H/A component vectors.
Definition at line 710 of file RhieChowMassFlux.C.
Referenced by FVReconstructedPressureGradient::reconstructPressureGradient().
| void RhieChowMassFlux::initCouplingField | ( | ) |
Initialize the coupling fields (HbyA and Ainv)
Definition at line 827 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::linkRhieChowUserObject().
| void RhieChowMassFlux::initFaceMassFlux | ( | ) |
Initialize the container for face velocities.
Definition at line 564 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::linkRhieChowUserObject().
|
overridevirtual |
Implements GeneralUserObject.
Definition at line 554 of file RhieChowMassFlux.C.
|
overridevirtual |
Reimplemented from GeneralUserObject.
Definition at line 470 of file RhieChowMassFlux.C.
| void RhieChowMassFlux::initPressureGradient | ( | ) |
Compute every registered pressure gradient once, before the first momentum predictor of a SIMPLE iteration sequence has anything to read.
Definition at line 464 of file RhieChowMassFlux.C.
Referenced by TestRhieChowMassFluxSequence::execute(), and LinearAssemblySegregatedSolve::solve().
| void RhieChowMassFlux::linkMomentumPressureSystems | ( | const std::vector< LinearSystem * > & | momentum_systems, |
| 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 132 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::linkRhieChowUserObject().
|
overridevirtual |
Reimplemented from GeneralUserObject.
Definition at line 373 of file RhieChowMassFlux.C.
|
inline |
Momentum linear system for one spatial component.
Definition at line 80 of file RhieChowMassFlux.h.
Referenced by FVReconstructedPressureGradient::computeCandidateFromCorrectedFlux(), FVReconstructedPressureGradient::linkFlowSystem(), preparePISOCorrector(), FVReconstructedPressureGradient::reconstructionVelocityGradient(), FVReconstructedPressureGradient::reconstructPressureGradient(), and FVReconstructedPressureGradient::validateSetup().
|
inline |
Momentum linear system for one spatial component.
Definition at line 83 of file RhieChowMassFlux.h.
|
protected |
Populate the face values of the H/A and 1/A fields.
Definition at line 840 of file RhieChowMassFlux.C.
Referenced by computeHbyA().
| void RhieChowMassFlux::prepareMomentumPredictor | ( | ) |
Snapshot the fields read by the next momentum predictor.
Definition at line 401 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::solve().
| void RhieChowMassFlux::preparePISOCorrector | ( | ) |
Capture the lagged velocity gradient for another corrector using the current predictor.
Definition at line 419 of file RhieChowMassFlux.C.
Referenced by PIMPLESolve::correctVelocity(), and TestRhieChowMassFluxSequence::execute().
| void RhieChowMassFlux::preparePressureRelaxation | ( | ) |
Before pressure relaxation, form the conservative reconstructed candidate from the corrected face flux and update the cell velocity from that unrelaxed candidate.
No-op for ordinary pressure-gradient methods.
Definition at line 433 of file RhieChowMassFlux.C.
Referenced by LinearAssemblySegregatedSolve::correctVelocity(), and TestRhieChowMassFluxSequence::execute().
|
protected |
Get the registered pressure gradient component vectors.
Definition at line 1154 of file RhieChowMassFlux.C.
Referenced by finalizePressureCorrector(), and prepareMomentumPredictor().
| const LinearFVGradientReader & RhieChowMassFlux::pressureGradientField | ( | ) | const |
Get the registered pressure gradient field used by compatible momentum pressure kernels.
Definition at line 689 of file RhieChowMassFlux.C.
Referenced by finalizePressureCorrector(), pressureGradientComponents(), reconstructedGradientMethod(), reconstructedGradientMethod(), FVReconstructedPressureGradient::resetForTimeStep(), and usingReconstructedPressureGradientMethod().
|
inline |
Pressure linear system.
Definition at line 89 of file RhieChowMassFlux.h.
Referenced by FVReconstructedPressureGradient::computeCandidateFromCorrectedFlux(), FVReconstructedPressureGradient::linkFlowSystem(), FVReconstructedPressureGradient::updateCouplingPressureGradient(), and FVReconstructedPressureGradient::validateSetup().
| unsigned int RhieChowMassFlux::pressureVariableNumber | ( | ) | const |
Variable number of the pressure variable reconstructed by this object.
Definition at line 732 of file RhieChowMassFlux.C.
Referenced by FVReconstructedPressureGradient::linkFlowSystem(), and FVReconstructedPressureGradient::validateSetup().
|
protected |
Access the reconstructed gradient method when it is selected.
Definition at line 1176 of file RhieChowMassFlux.C.
Referenced by checkReconstructedPressureGradientCompatibility(), finalizeMomentumPredictor(), finalizePressureCorrector(), linkMomentumPressureSystems(), preparePISOCorrector(), preparePressureRelaxation(), and timestepSetup().
|
protected |
Access the reconstructed gradient method when it is selected.
Definition at line 1166 of file RhieChowMassFlux.C.
|
protected |
Compute the cell volumes on the mesh.
Definition at line 494 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 202 of file RhieChowMassFlux.h.
|
overridevirtual |
Prepare reconstructed-gradient state once per attempted time step.
Accepted coupling feedback is retained for the next time step and restored when an attempt is retried, while candidate fields and sequencing counters are reset for every attempt.
Reimplemented from GeneralUserObject.
Definition at line 383 of file RhieChowMassFlux.C.
|
protected |
Update cell velocity from the supplied momentum-coupling pressure gradient.
Definition at line 519 of file RhieChowMassFlux.C.
Referenced by finalizePressureCorrector(), and preparePressureRelaxation().
| bool RhieChowMassFlux::usingReconstructedPressureGradientMethod | ( | ) | const |
Whether the registered pressure gradient field is produced by the reconstructed method.
Definition at line 1160 of file RhieChowMassFlux.C.
Referenced by PIMPLESolve::correctVelocity(), finalizeMomentumPredictor(), finalizePressureCorrector(), linkMomentumPressureSystems(), preparePISOCorrector(), preparePressureRelaxation(), reconstructedGradientMethod(), and timestepSetup().
|
static |
Definition at line 41 of file RhieChowMassFlux.C.
Referenced by WCNSLinearFVFlowPhysics::validParams().
|
inline |
Velocity variable for one spatial component.
Definition at line 71 of file RhieChowMassFlux.h.
Referenced by FVReconstructedPressureGradient::computeCandidateFromCorrectedFlux(), FVReconstructedPressureGradient::linkFlowSystem(), preparePISOCorrector(), FVReconstructedPressureGradient::reconstructionVelocityGradient(), and FVReconstructedPressureGradient::validateSetup().
|
inline |
Velocity variable for one spatial component.
Definition at line 74 of file RhieChowMassFlux.h.
|
protected |
Definition at line 249 of file RhieChowMassFlux.h.
|
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 241 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 247 of file RhieChowMassFlux.h.
Referenced by AinvComponents(), computeHbyA(), and updateCellVelocity().
|
protected |
Base pressure gradient field used to seed reconstructed gradient updates.
Definition at line 291 of file RhieChowMassFlux.h.
Referenced by basePressureGradientField(), checkReconstructedPressureGradientCompatibility(), and linkMomentumPressureSystems().
|
protected |
We will hold a vector of cell volumes to make sure we can do volume corrections rapidly.
Definition at line 297 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 211 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), dimension(), linkMomentumPressureSystems(), and populateCouplingFunctors().
|
protected |
A map functor from faces to mass fluxes which are used in the advection terms.
Definition at line 254 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), getMassFlux(), getVolumetricFaceFlux(), initFaceMassFlux(), and meshChanged().
|
protected |
Producer counter for the conservative face mass flux: incremented every time computeFaceMassFlux() runs.
Exposed read-only through faceMassFluxGeneration() so the reconstructed gradient can verify it is reconstructing from the face flux produced by the current pressure corrector, not one left over from a preceding corrector.
Definition at line 265 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), and faceMassFluxGeneration().
|
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 308 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), initFaceMassFlux(), populateCouplingFunctors(), and setupMeshInformation().
|
protected |
Global numbers of the momentum system(s)
Definition at line 279 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), linkMomentumPressureSystems(), and populateCouplingFunctors().
|
protected |
Global number of the pressure system.
Definition at line 294 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), linkMomentumPressureSystems(), and setupMeshInformation().
|
protected |
Coupling pressure gradient captured before the current momentum predictor is assembled.
Definition at line 257 of file RhieChowMassFlux.h.
Referenced by computeHbyA(), meshChanged(), prepareMomentumPredictor(), preparePISOCorrector(), and timestepSetup().
|
protected |
A map functor from faces to $HbyA_{ij} = (A_{offdiag}*\mathrm{(predicted~velocity)} - \mathrm{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 229 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 235 of file RhieChowMassFlux.h.
Referenced by computeHbyA(), HbyAComponents(), and updateCellVelocity().
|
protected |
The libMesh mesh that this object acts on.
Definition at line 208 of file RhieChowMassFlux.h.
|
protected |
Pointers to the momentum equation implicit system(s) from libmesh.
Definition at line 282 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), computeHbyA(), linkMomentumPressureSystems(), and updateCellVelocity().
|
protected |
Numbers of the momentum system(s)
Definition at line 276 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 273 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), computeHbyA(), linkMomentumPressureSystems(), momentumSystem(), momentumSystem(), and updateCellVelocity().
|
protected |
The MooseMesh that this user object operates on.
Definition at line 205 of file RhieChowMassFlux.h.
Referenced by checkBlocks(), and linkMomentumPressureSystems().
|
protected |
The thread 0 copy of the pressure variable.
Definition at line 214 of file RhieChowMassFlux.h.
Referenced by computeFaceMassFlux(), initialSetup(), linkMomentumPressureSystems(), populateCouplingFunctors(), pressureVariableNumber(), and RhieChowMassFlux().
|
protected |
Pointer to the pressure diffusion term in the pressure Poisson equation.
Definition at line 221 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), computeFaceMassFlux(), initialSetup(), and linkMomentumPressureSystems().
|
protected |
Interpolation method used for the pressure diffusion coefficient on faces.
Definition at line 303 of file RhieChowMassFlux.h.
Referenced by populateCouplingFunctors().
|
protected |
Registered pressure gradient field used by Rhie-Chow and compatible momentum pressure kernels.
Definition at line 288 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), linkMomentumPressureSystems(), prepareMomentumPredictor(), pressureGradientField(), and timestepSetup().
|
protected |
Enumerator for the method used for pressure projection.
Definition at line 300 of file RhieChowMassFlux.h.
Referenced by computeHbyA(), and linkMomentumPressureSystems().
|
protected |
Pointer to the pressure system.
Definition at line 285 of file RhieChowMassFlux.h.
Referenced by checkReconstructedPressureGradientCompatibility(), computeFaceMassFlux(), finalizePressureCorrector(), initPressureGradient(), linkMomentumPressureSystems(), pressureSystem(), and setupMeshInformation().
|
protected |
Functor describing the density of the fluid.
Definition at line 270 of file RhieChowMassFlux.h.
Referenced by getVolumetricFaceFlux(), initFaceMassFlux(), and populateCouplingFunctors().
|
protected |
Thread 0 copies of the velocity variables; non-const to allow writing cell velocities in updateCellVelocity().
Definition at line 218 of file RhieChowMassFlux.h.
Referenced by initFaceMassFlux(), linkMomentumPressureSystems(), populateCouplingFunctors(), RhieChowMassFlux(), velocityVariable(), and velocityVariable().