Line data Source code
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 "FVElementalKernel.h" 13 : #include "INSFVMomentumResidualObject.h" 14 : 15 : /** 16 : * This object adds a residual equivalent to 17 : * 18 : * \f$\int_{\Omega_C} -\epsilon \frac{p}{r} dV\f$ 19 : * 20 : * for use when performing axisymmetric simulations and the \f$\epsilon \nabla p\f$ term has been 21 : * integrated by parts as is done for both HLLC and Kurganov-Tadmor schemes 22 : */ 23 : class PNSFVMomentumPressureFluxRZ : public FVElementalKernel, public INSFVMomentumResidualObject 24 : { 25 : public: 26 : static InputParameters validParams(); 27 : PNSFVMomentumPressureFluxRZ(const InputParameters & params); 28 : 29 : // pressure kernel 30 25200 : void gatherRCData(const Elem &) override {} 31 0 : void gatherRCData(const FaceInfo &) override {} 32 : 33 : protected: 34 : ADReal computeQpResidual() override; 35 : 36 : const Moose::Functor<ADReal> & _p; 37 : const Moose::Functor<ADReal> & _eps; 38 : };