https://mooseframework.inl.gov
Loading...
Searching...
No Matches
INSFVMomentumResidualObject.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "InputParameters.h"
14
15class MooseObject;
16class FaceInfo;
17
26public:
28
32 template <typename T>
34
40 virtual void gatherRCData(const Elem & elem) = 0;
41
47 virtual void gatherRCData(const FaceInfo & fi) = 0;
48
49 virtual ~INSFVMomentumResidualObject() = default;
50
51protected:
56
58 const unsigned int _index;
59};
60
61template <typename T>
63 : _rc_uo(const_cast<RhieChowInterpolatorBase &>(
64 obj.template getUserObject<RhieChowInterpolatorBase>("rhie_chow_user_object"))),
65 _index(obj.template getParam<MooseEnum>("momentum_component"))
66{
67}
const double T
All objects that contribute to pressure-based (e.g.
const unsigned int _index
index x|y|z
virtual ~INSFVMomentumResidualObject()=default
virtual void gatherRCData(const FaceInfo &fi)=0
Should be a non-empty implementation if the residual object is a FVFluxKernel and introduces residual...
RhieChowInterpolatorBase & _rc_uo
The Rhie Chow user object that is responsible for generating face velocities for advection terms.
virtual void gatherRCData(const Elem &elem)=0
Should be a non-empty implementation if the residual object is a FVElementalKernel and introduces res...