LCOV - code coverage report
Current view: top level - src/bcs - INSFEFluidIntegratedBCBase.C (source / functions) Hit Total Coverage
Test: idaholab/moose navier_stokes: #32971 (54bef8) with base c6cf66 Lines: 38 39 97.4 %
Date: 2026-05-29 20:37:52 Functions: 3 3 100.0 %
Legend: Lines: hit not hit

          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 "INSFEFluidIntegratedBCBase.h"
      11             : #include "MooseMesh.h"
      12             : 
      13             : InputParameters
      14         323 : INSFEFluidIntegratedBCBase::validParams()
      15             : {
      16         323 :   InputParameters params = IntegratedBC::validParams();
      17             : 
      18             :   // Coupled variables
      19         646 :   params.addRequiredCoupledVar("u", "velocity in x-coord");
      20         646 :   params.addCoupledVar("v", "velocity in y-coord"); // required in 2D and 3D
      21         646 :   params.addCoupledVar("w", "velocity in z-coord"); // required in 3D
      22             : 
      23         646 :   params.addRequiredCoupledVar("pressure", "pressure");
      24         646 :   params.addRequiredCoupledVar("temperature", "temperature");
      25         646 :   params.addCoupledVar("porosity", "porosity");
      26             : 
      27         646 :   params.addRequiredParam<UserObjectName>("eos", "The name of equation of state object to use.");
      28         323 :   return params;
      29           0 : }
      30             : 
      31         170 : INSFEFluidIntegratedBCBase::INSFEFluidIntegratedBCBase(const InputParameters & parameters)
      32             :   : IntegratedBC(parameters),
      33             :     // Coupled variables
      34         170 :     _u_vel(coupledValue("u")),
      35         170 :     _v_vel(_mesh.dimension() >= 2 ? coupledValue("v") : _zero),
      36         170 :     _w_vel(_mesh.dimension() == 3 ? coupledValue("w") : _zero),
      37         170 :     _pressure(coupledValue("pressure")),
      38         170 :     _temperature(coupledValue("temperature")),
      39         340 :     _rho(getMaterialProperty<Real>("rho_fluid")),
      40             :     // Gradients
      41         170 :     _grad_u_vel(coupledGradient("u")),
      42         170 :     _grad_v_vel(_mesh.dimension() >= 2 ? coupledGradient("v") : _grad_zero),
      43         170 :     _grad_w_vel(_mesh.dimension() == 3 ? coupledGradient("w") : _grad_zero),
      44         170 :     _grad_pressure(coupledGradient("pressure")),
      45         170 :     _grad_temperature(coupledGradient("temperature")),
      46             :     // Variable numberings
      47         170 :     _u_vel_var_number(coupled("u")),
      48         170 :     _v_vel_var_number(_mesh.dimension() >= 2 ? coupled("v") : libMesh::invalid_uint),
      49         170 :     _w_vel_var_number(_mesh.dimension() == 3 ? coupled("w") : libMesh::invalid_uint),
      50         170 :     _pressure_var_number(coupled("pressure")),
      51         170 :     _temperature_var_number(coupled("temperature")),
      52             : 
      53         340 :     _has_porosity(isParamValid("porosity")),
      54         170 :     _porosity(_has_porosity ? coupledValue("porosity") : _zero),
      55             : 
      56         340 :     _eos(getUserObject<SinglePhaseFluidProperties>("eos"))
      57             : {
      58         170 : }
      59             : 
      60             : unsigned
      61      381696 : INSFEFluidIntegratedBCBase::mapVarNumber(unsigned var)
      62             : {
      63             :   // Convert the Moose numbering to:
      64             :   // 0 for pressure
      65             :   // 1 for u
      66             :   // 2 for v
      67             :   // 3 for w
      68             :   // 4 for temperature
      69             :   // regardless of the problem dimension, etc.
      70             :   unsigned mapped_var_number = 99;
      71             : 
      72      381696 :   if (var == _pressure_var_number)
      73             :     mapped_var_number = 0;
      74      339328 :   else if (var == _u_vel_var_number)
      75             :     mapped_var_number = 1;
      76      224896 :   else if (var == _v_vel_var_number)
      77             :     mapped_var_number = 2;
      78       93056 :   else if (var == _w_vel_var_number)
      79             :     mapped_var_number = 3;
      80       93056 :   else if (var == _temperature_var_number)
      81             :     mapped_var_number = 4;
      82             :   else
      83             :     mapped_var_number = 99;
      84             : 
      85      381696 :   return mapped_var_number;
      86             : }

Generated by: LCOV version 1.14