LCOV - code coverage report
Current view: top level - src/scalarkernels - ADScalarKernel.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: fef103 Lines: 25 32 78.1 %
Date: 2025-09-03 20:01:23 Functions: 6 8 75.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 "ADScalarKernel.h"
      11             : 
      12             : #include "Assembly.h"
      13             : 
      14             : InputParameters
      15       57234 : ADScalarKernel::validParams()
      16             : {
      17       57234 :   InputParameters params = ScalarKernelBase::validParams();
      18       57234 :   return params;
      19             : }
      20             : 
      21          90 : ADScalarKernel::ADScalarKernel(const InputParameters & parameters)
      22          90 :   : ScalarKernelBase(parameters), _u(_var.adSln()), _jacobian_already_computed(false)
      23             : {
      24          90 : }
      25             : 
      26             : void
      27         921 : ADScalarKernel::reinit()
      28             : {
      29         921 :   _jacobian_already_computed = false;
      30         921 : }
      31             : 
      32             : void
      33         645 : ADScalarKernel::computeResidual()
      34             : {
      35         645 :   prepareVectorTag(_assembly, _var.number());
      36             : 
      37        1290 :   for (_i = 0; _i < _var.order(); _i++)
      38         645 :     _local_re(_i) += raw_value(computeQpResidual());
      39             : 
      40         645 :   accumulateTaggedLocalResidual();
      41         645 : }
      42             : 
      43             : void
      44         195 : ADScalarKernel::computeJacobian()
      45             : {
      46         195 :   computeADJacobian();
      47         195 : }
      48             : 
      49             : void
      50           0 : ADScalarKernel::computeOffDiagJacobian(unsigned int /*jvar*/)
      51             : {
      52           0 :   if (!_jacobian_already_computed)
      53             :   {
      54           0 :     computeADJacobian();
      55           0 :     _jacobian_already_computed = true;
      56             :   }
      57           0 : }
      58             : 
      59             : void
      60           0 : ADScalarKernel::computeOffDiagJacobianScalar(unsigned int /*jvar*/)
      61             : {
      62           0 : }
      63             : 
      64             : void
      65         195 : ADScalarKernel::computeADJacobian()
      66             : {
      67         195 :   if (_residuals.size() != _var.order())
      68          78 :     _residuals.resize(_var.order(), 0.0);
      69         390 :   for (_i = 0; _i < _var.order(); _i++)
      70         195 :     _residuals[_i] = computeQpResidual();
      71             : 
      72         195 :   addJacobian(_assembly, _residuals, _var.dofIndices(), _var.scalingFactor());
      73         195 : }

Generated by: LCOV version 1.14