LCOV - code coverage report
Current view: top level - src/variables - MooseVariableDependencyInterface.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: 99787a Lines: 11 12 91.7 %
Date: 2025-10-14 20:01:24 Functions: 4 4 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 "MooseVariableDependencyInterface.h"
      11             : #include "MooseVariableFieldBase.h"
      12             : #include "MooseApp.h"
      13             : #include "MooseObject.h"
      14             : #include "SystemBase.h"
      15             : #include "MooseError.h"
      16             : 
      17             : #include "libmesh/dof_object.h"
      18             : #include "libmesh/dof_map.h"
      19             : 
      20             : using namespace libMesh;
      21             : 
      22      377036 : MooseVariableDependencyInterface::MooseVariableDependencyInterface(const MooseObject *) {}
      23             : 
      24             : #ifdef MOOSE_KOKKOS_ENABLED
      25      200105 : MooseVariableDependencyInterface::MooseVariableDependencyInterface(
      26      200105 :     const MooseVariableDependencyInterface &, const Moose::Kokkos::FunctorCopy &)
      27             : {
      28      200105 : }
      29             : #endif
      30             : 
      31             : template <typename DofObjectType>
      32             : std::set<MooseVariableFieldBase *>
      33     1330795 : MooseVariableDependencyInterface::checkVariables(
      34             :     const DofObjectType & dof_object, const std::set<MooseVariableFieldBase *> & vars_to_check)
      35             : {
      36     1330795 :   std::set<MooseVariableFieldBase *> vars_without_indices;
      37     1665276 :   for (auto * const var : vars_to_check)
      38             :   {
      39      334481 :     var->sys().dofMap().dof_indices(&dof_object, _dof_indices, var->number());
      40      334481 :     if (_dof_indices.empty())
      41        4836 :       vars_without_indices.insert(var);
      42             :   }
      43             : 
      44     1330795 :   return vars_without_indices;
      45           0 : }
      46             : 
      47             : template std::set<MooseVariableFieldBase *> MooseVariableDependencyInterface::checkVariables(
      48             :     const Elem & dof_object, const std::set<MooseVariableFieldBase *> & vars_to_check);
      49             : template std::set<MooseVariableFieldBase *> MooseVariableDependencyInterface::checkVariables(
      50             :     const Node & dof_object, const std::set<MooseVariableFieldBase *> & vars_to_check);

Generated by: LCOV version 1.14