LCOV - code coverage report
Current view: top level - src/postprocessors - NumElements.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: 9a5f1f Lines: 15 15 100.0 %
Date: 2026-06-21 21:23:42 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             : // MOOSE includes
      11             : #include "NumElements.h"
      12             : #include "SubProblem.h"
      13             : #include "MooseMesh.h"
      14             : 
      15             : registerMooseObject("MooseApp", NumElements);
      16             : registerMooseObjectRenamed("MooseApp", NumElems, "04/01/2025 00:00", NumElements);
      17             : 
      18             : InputParameters
      19        6882 : NumElements::validParams()
      20             : {
      21        6882 :   InputParameters params = GeneralPostprocessor::validParams();
      22       27528 :   MooseEnum filt("active total", "active");
      23       27528 :   params.addParam<MooseEnum>(
      24             :       "elem_filter",
      25             :       filt,
      26             :       "The type of elements to include in the count (active, total). Default == active");
      27             : 
      28        6882 :   params.addClassDescription("Return the number of active or total elements in the simulation.");
      29       13764 :   return params;
      30        6882 : }
      31             : 
      32         375 : NumElements::NumElements(const InputParameters & parameters)
      33             :   : GeneralPostprocessor(parameters),
      34         375 :     _filt(parameters.get<MooseEnum>("elem_filter").getEnum<ElemFilter>()),
      35         750 :     _mesh(_subproblem.mesh().getMesh())
      36             : {
      37         375 : }
      38             : 
      39             : Real
      40         978 : NumElements::getValue() const
      41             : {
      42         978 :   if (_filt == ElemFilter::ACTIVE)
      43         801 :     return _mesh.n_active_elem();
      44         177 :   return _mesh.n_elem();
      45             : }

Generated by: LCOV version 1.14