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 : #include "CNSFVHLLCFluidEnergyImplicitBC.h" 11 : #include "NS.h" 12 : 13 : // Full specialization of the validParams function for this object 14 : registerADMooseObject("NavierStokesApp", CNSFVHLLCFluidEnergyImplicitBC); 15 : 16 : InputParameters 17 150 : CNSFVHLLCFluidEnergyImplicitBC::validParams() 18 : { 19 150 : InputParameters params = CNSFVHLLCImplicitBC::validParams(); 20 150 : params.addClassDescription("Implements an implicit advective boundary flux for the fluid energy " 21 : "equation for an HLLC discretization"); 22 150 : return params; 23 0 : } 24 : 25 81 : CNSFVHLLCFluidEnergyImplicitBC::CNSFVHLLCFluidEnergyImplicitBC(const InputParameters & parameters) 26 : : CNSFVHLLCImplicitBC(parameters), 27 81 : _ht_elem(getADMaterialProperty<Real>(NS::specific_total_enthalpy)) 28 : { 29 81 : } 30 : 31 : ADReal 32 7428 : CNSFVHLLCFluidEnergyImplicitBC::fluxElem() 33 : { 34 7428 : return _normal_speed_elem * _rho_elem[_qp] * _ht_elem[_qp]; 35 : } 36 : 37 : ADReal 38 7428 : CNSFVHLLCFluidEnergyImplicitBC::hllcElem() 39 : { 40 7428 : return _rho_et_elem[_qp] / _rho_elem[_qp] + 41 7428 : (_SM - _normal_speed_elem) * 42 22284 : (_SM + _pressure_elem[_qp] / _rho_elem[_qp] / (_SL - _normal_speed_elem)); 43 : } 44 : 45 : ADReal 46 7428 : CNSFVHLLCFluidEnergyImplicitBC::conservedVariableElem() 47 : { 48 7428 : return _rho_et_elem[_qp]; 49 : }