LCOV - code coverage report
Current view: top level - src/scalarkernels - ADScalarKernel.C (source / functions) Hit Total Coverage
Test: idaholab/moose framework: 419b9d Lines: 25 32 78.1 %
Date: 2025-08-08 20:01:16 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       57208 : ADScalarKernel::validParams()
      16             : {
      17       57208 :   InputParameters params = ScalarKernelBase::validParams();
      18       57208 :   return params;
      19             : }
      20             : 
      21          77 : ADScalarKernel::ADScalarKernel(const InputParameters & parameters)
      22          77 :   : ScalarKernelBase(parameters), _u(_var.adSln()), _jacobian_already_computed(false)
      23             : {
      24          77 : }
      25             : 
      26             : void
      27         810 : ADScalarKernel::reinit()
      28             : {
      29         810 :   _jacobian_already_computed = false;
      30         810 : }
      31             : 
      32             : void
      33         589 : ADScalarKernel::computeResidual()
      34             : {
      35         589 :   prepareVectorTag(_assembly, _var.number());
      36             : 
      37        1178 :   for (_i = 0; _i < _var.order(); _i++)
      38         589 :     _local_re(_i) += raw_value(computeQpResidual());
      39             : 
      40         589 :   accumulateTaggedLocalResidual();
      41         589 : }
      42             : 
      43             : void
      44         167 : ADScalarKernel::computeJacobian()
      45             : {
      46         167 :   computeADJacobian();
      47         167 : }
      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         167 : ADScalarKernel::computeADJacobian()
      66             : {
      67         167 :   if (_residuals.size() != _var.order())
      68          68 :     _residuals.resize(_var.order(), 0.0);
      69         334 :   for (_i = 0; _i < _var.order(); _i++)
      70         167 :     _residuals[_i] = computeQpResidual();
      71             : 
      72         167 :   addJacobian(_assembly, _residuals, _var.dofIndices(), _var.scalingFactor());
      73         167 : }

Generated by: LCOV version 1.14