LCOV - code coverage report
Current view: top level - src/mfem/functions - MFEMQuadratureFunctionBase.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: #33416 (b10b36) with base 9fbd27 Lines: 15 15 100.0 %
Date: 2026-07-23 16:15:30 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             : #ifdef MOOSE_MFEM_ENABLED
      11             : 
      12             : #include "MFEMQuadratureFunctionBase.h"
      13             : #include "MFEMProblem.h"
      14             : 
      15             : InputParameters
      16        4320 : MFEMQuadratureFunctionBase::validParams()
      17             : {
      18        4320 :   InputParameters params = MFEMObject::validParams();
      19        8640 :   params.registerBase("MFEMQuadratureFunction");
      20        8640 :   params.registerSystemAttributeName("MFEMQuadratureFunction");
      21       25920 :   params.addRequiredRangeCheckedParam<int>(
      22             :       "order",
      23             :       "order>=0",
      24             :       "Order of the quadrature rule the projected values are stored on. This must match the "
      25             :       "integration rule used by the objects consuming this coefficient.");
      26        8640 :   MooseEnum updates(MFEMQuadratureFunctionCoefficientBase::getUpdatePolicyOptions(), "NONLINEAR");
      27       12960 :   params.addParam<MooseEnum>(
      28             :       "updates",
      29             :       updates,
      30             :       "When the stored values are re-projected from the source coefficient: 'none' projects "
      31             :       "exactly once, 'time' re-projects when the simulation time changes, 'nonlinear' additionally "
      32             :       "re-projects whenever solution variables change (i.e. on each nonlinear iteration).");
      33        8640 :   return params;
      34        4320 : }
      35             : 
      36          34 : MFEMQuadratureFunctionBase::MFEMQuadratureFunctionBase(const InputParameters & parameters)
      37             :   : MFEMObject(parameters),
      38          68 :     _qspace(&getMFEMProblem().mesh().getMFEMParMesh(), getParam<int>("order"))
      39             : {
      40          34 : }
      41             : 
      42             : MFEMQuadratureFunctionCoefficientBase::UpdatePolicy
      43          34 : MFEMQuadratureFunctionBase::updatePolicy() const
      44             : {
      45         136 :   return getParam<MooseEnum>("updates")
      46          68 :       .getEnum<MFEMQuadratureFunctionCoefficientBase::UpdatePolicy>();
      47             : }
      48             : 
      49             : #endif

Generated by: LCOV version 1.14