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 "ADNumericalFlux3EqnBase.h" 11 : #include "THMIndicesVACE.h" 12 : 13 : InputParameters 14 8885 : ADNumericalFlux3EqnBase::validParams() 15 : { 16 8885 : InputParameters params = NumericalFlux1D::validParams(); 17 8885 : return params; 18 : } 19 : 20 4852 : ADNumericalFlux3EqnBase::ADNumericalFlux3EqnBase(const InputParameters & parameters) 21 4852 : : NumericalFlux1D(parameters) 22 : { 23 4852 : } 24 : 25 : std::vector<ADReal> 26 8717884 : ADNumericalFlux3EqnBase::convert1DInputTo3D(const std::vector<ADReal> & U_1d) const 27 : { 28 8717884 : std::vector<ADReal> U_3d(THMVACE3D::N_FLUX_INPUTS); 29 8717884 : U_3d[THMVACE3D::RHOA] = U_1d[THMVACE1D::RHOA]; 30 8717884 : U_3d[THMVACE3D::RHOUA] = U_1d[THMVACE1D::RHOUA]; 31 8717884 : U_3d[THMVACE3D::RHOVA] = 0; 32 8717884 : U_3d[THMVACE3D::RHOWA] = 0; 33 8717884 : U_3d[THMVACE3D::RHOEA] = U_1d[THMVACE1D::RHOEA]; 34 8717884 : U_3d[THMVACE3D::AREA] = U_1d[THMVACE1D::AREA]; 35 : 36 8717884 : return U_3d; 37 : } 38 : 39 : std::vector<ADReal> 40 8717884 : ADNumericalFlux3EqnBase::convert3DFluxTo1D(const std::vector<ADReal> & F_3d) const 41 : { 42 8717884 : std::vector<ADReal> F_1d(THMVACE1D::N_FLUX_OUTPUTS); 43 8717884 : F_1d[THMVACE1D::MASS] = F_3d[THMVACE3D::MASS]; 44 8717884 : F_1d[THMVACE1D::MOMENTUM] = F_3d[THMVACE3D::MOM_NORM]; 45 8717884 : F_1d[THMVACE1D::ENERGY] = F_3d[THMVACE3D::ENERGY]; 46 : 47 8717884 : return F_1d; 48 : } 49 : 50 : void 51 8717884 : ADNumericalFlux3EqnBase::transform3DFluxDirection(std::vector<ADReal> & F_3d, Real nLR_dot_d) const 52 : { 53 8717884 : F_3d[THMVACE3D::MASS] *= nLR_dot_d; 54 8717884 : F_3d[THMVACE3D::ENERGY] *= nLR_dot_d; 55 8717884 : }