LCOV - code coverage report
Current view: top level - src/markers - Marker.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: 2bf808 Lines: 39 42 92.9 %
Date: 2025-07-17 01:28:37 Functions: 9 10 90.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 "Marker.h"
      11             : 
      12             : #include "Assembly.h"
      13             : #include "FEProblem.h"
      14             : #include "MooseMesh.h"
      15             : #include "MooseVariableFE.h"
      16             : #include "SystemBase.h"
      17             : 
      18             : InputParameters
      19      217956 : Marker::validParams()
      20             : {
      21      217956 :   InputParameters params = MooseObject::validParams();
      22      217956 :   params += BlockRestrictable::validParams();
      23      217956 :   params += OutputInterface::validParams();
      24             : 
      25             :   // use of displaced meshes with markers is not supported
      26      217956 :   params.set<bool>("use_displaced_mesh") = false;
      27      217956 :   params.suppressParameter<bool>("use_displaced_mesh");
      28             : 
      29      217956 :   params.registerBase("Marker");
      30             : 
      31      217956 :   return params;
      32           0 : }
      33             : 
      34        2077 : Marker::Marker(const InputParameters & parameters)
      35             :   : MooseObject(parameters),
      36             :     BlockRestrictable(this),
      37             :     SetupInterface(this),
      38             :     DependencyResolverInterface(),
      39             :     MooseVariableDependencyInterface(this),
      40             :     UserObjectInterface(this),
      41             :     Restartable(this, "Markers"),
      42             :     PostprocessorInterface(this),
      43             :     MeshChangedInterface(parameters),
      44             :     OutputInterface(parameters),
      45        2077 :     _subproblem(*getCheckedPointerParam<SubProblem *>("_subproblem")),
      46        2077 :     _fe_problem(*getCheckedPointerParam<FEProblemBase *>("_fe_problem_base")),
      47        2077 :     _adaptivity(_fe_problem.adaptivity()),
      48        2077 :     _sys(*getCheckedPointerParam<SystemBase *>("_sys")),
      49        2077 :     _tid(parameters.get<THREAD_ID>("_tid")),
      50        2077 :     _assembly(_subproblem.assembly(_tid, 0)),
      51        2077 :     _field_var(_subproblem.getStandardVariable(_tid, name())),
      52        2077 :     _current_elem(_field_var.currentElem()),
      53             : 
      54        4154 :     _mesh(_subproblem.mesh())
      55             : {
      56        2077 :   _supplied.insert(name());
      57             : 
      58        2077 :   addMooseVariableDependency(&_field_var);
      59        2077 : }
      60             : 
      61             : MooseEnum
      62      102457 : Marker::markerStates()
      63             : {
      64      102457 :   MooseEnum marker_states("DONT_MARK=-1 COARSEN DO_NOTHING REFINE");
      65             : 
      66      102457 :   return marker_states;
      67             : }
      68             : 
      69             : void
      70     1915818 : Marker::computeMarker()
      71             : {
      72     1915818 :   int mark = computeElementMarker();
      73     1915818 :   _field_var.setNodalValue(mark);
      74     1915818 : }
      75             : 
      76             : ErrorVector &
      77         503 : Marker::getErrorVector(std::string indicator)
      78             : {
      79         503 :   return _adaptivity.getErrorVector(indicator);
      80             : }
      81             : 
      82             : const MooseArray<Real> &
      83         183 : Marker::getMarkerValue(std::string name)
      84             : {
      85         183 :   _depend.insert(name);
      86         183 :   return _sys.getFieldVariable<Real>(_tid, name).dofValues();
      87             : }
      88             : 
      89             : bool
      90           0 : Marker::isActive() const
      91             : {
      92           0 :   return true;
      93             : }
      94             : 
      95             : void
      96        5562 : Marker::markerSetup()
      97             : {
      98        5562 : }
      99             : 
     100             : const std::set<std::string> &
     101        1045 : Marker::getRequestedItems()
     102             : {
     103        1045 :   return _depend;
     104             : }
     105             : 
     106             : const std::set<std::string> &
     107        1045 : Marker::getSuppliedItems()
     108             : {
     109        1045 :   return _supplied;
     110             : }

Generated by: LCOV version 1.14