LCOV - code coverage report
Current view: top level - src/hdgkernels - ElementAndTraceScalarHDGKernel.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: 329044 Lines: 50 64 78.1 %
Date: 2026-08-03 21:12:22 Functions: 12 15 80.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 "ElementAndTraceScalarHDGAssemblyHelper.h"
      11             : #include "ElementAndTraceScalarHDGKernel.h"
      12             : #include "TaggingInterface.h"
      13             : 
      14             : InputParameters
      15        6830 : ElementAndTraceScalarHDGKernel::validParams()
      16             : {
      17        6830 :   return HDGKernel::validParams();
      18             : }
      19             : 
      20         324 : ElementAndTraceScalarHDGKernel::ElementAndTraceScalarHDGKernel(const InputParameters & parameters)
      21         324 :   : HDGKernel(parameters), _cached_elem(nullptr)
      22             : {
      23         324 : }
      24             : 
      25             : void
      26      157130 : ElementAndTraceScalarHDGKernel::compute(ElementAndTraceScalarHDGAssemblyHelper & helper)
      27             : {
      28      157130 :   helper.resizeResiduals();
      29      157130 :   helper.scalarVolume();
      30      157130 : }
      31             : 
      32             : void
      33      549740 : ElementAndTraceScalarHDGKernel::computeOnSide(ElementAndTraceScalarHDGAssemblyHelper & helper)
      34             : {
      35      549740 :   helper.resizeResiduals();
      36      549740 :   helper.scalarFace();
      37      549740 :   helper.lmFace();
      38      549740 : }
      39             : 
      40             : void
      41      107833 : ElementAndTraceScalarHDGKernel::computeResidual()
      42             : {
      43      107833 :   auto & helper = hdgHelper();
      44      107833 :   compute(helper);
      45      323499 :   for (const auto & residual_packet : helper.taggingData())
      46      215666 :     addResiduals(_assembly, residual_packet);
      47      107833 : }
      48             : 
      49             : void
      50       49297 : ElementAndTraceScalarHDGKernel::computeJacobian()
      51             : {
      52       49297 :   auto & helper = hdgHelper();
      53       49297 :   compute(helper);
      54      147891 :   for (const auto & residual_packet : helper.taggingData())
      55       98594 :     addJacobian(_assembly, residual_packet);
      56       49297 : }
      57             : 
      58             : void
      59           0 : ElementAndTraceScalarHDGKernel::computeResidualAndJacobian()
      60             : {
      61           0 :   auto & helper = hdgHelper();
      62           0 :   compute(helper);
      63           0 :   for (const auto & residual_packet : helper.taggingData())
      64           0 :     addResidualsAndJacobian(_assembly, residual_packet);
      65           0 : }
      66             : 
      67             : void
      68      377386 : ElementAndTraceScalarHDGKernel::computeResidualOnSide()
      69             : {
      70      377386 :   auto & helper = hdgHelper();
      71      377386 :   computeOnSide(helper);
      72     1132158 :   for (const auto & residual_packet : helper.taggingData())
      73      754772 :     addResiduals(_assembly, residual_packet);
      74      377386 : }
      75             : 
      76             : void
      77      172354 : ElementAndTraceScalarHDGKernel::computeJacobianOnSide()
      78             : {
      79      172354 :   auto & helper = hdgHelper();
      80      172354 :   computeOnSide(helper);
      81      517062 :   for (const auto & residual_packet : helper.taggingData())
      82      344708 :     addJacobian(_assembly, residual_packet);
      83      172354 : }
      84             : 
      85             : void
      86           0 : ElementAndTraceScalarHDGKernel::computeResidualAndJacobianOnSide()
      87             : {
      88           0 :   auto & helper = hdgHelper();
      89           0 :   computeOnSide(helper);
      90           0 :   for (const auto & residual_packet : helper.taggingData())
      91           0 :     addResidualsAndJacobian(_assembly, residual_packet);
      92           0 : }
      93             : 
      94             : void
      95         446 : ElementAndTraceScalarHDGKernel::jacobianSetup()
      96             : {
      97         446 :   _cached_elem = nullptr;
      98         446 : }
      99             : 
     100             : void
     101       99594 : ElementAndTraceScalarHDGKernel::computeOffDiagJacobian(const unsigned int)
     102             : {
     103       99594 :   if (_cached_elem != _current_elem)
     104             :   {
     105       49297 :     computeJacobian();
     106       49297 :     _cached_elem = _current_elem;
     107             :   }
     108       99594 : }
     109             : 
     110             : std::set<std::string>
     111         308 : ElementAndTraceScalarHDGKernel::additionalROVariables()
     112             : {
     113         308 :   return hdgHelper().additionalROVariables();
     114             : }
     115             : 
     116             : const std::unordered_set<unsigned int> &
     117        1437 : ElementAndTraceScalarHDGKernel::getMatPropDependencies() const
     118             : {
     119        1437 :   return hdgHelper().getMatPropDependencies();
     120             : }
     121             : 
     122             : bool
     123           0 : ElementAndTraceScalarHDGKernel::getMaterialPropertyCalled() const
     124             : {
     125           0 :   return hdgHelper().getMaterialPropertyCalled();
     126             : }

Generated by: LCOV version 1.14