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 "GeochemistryDispersion.h" 11 : 12 : registerMooseObject("GeochemistryApp", GeochemistryDispersion); 13 : 14 : InputParameters 15 40 : GeochemistryDispersion::validParams() 16 : { 17 40 : InputParameters params = AnisotropicDiffusion::validParams(); 18 80 : params.addCoupledVar("porosity", 1.0, "Porosity"); 19 40 : params.addClassDescription("Kernel describing grad(porosity * tensor_coeff * " 20 : "grad(concentration)), where porosity is an AuxVariable (or just " 21 : "a real number), tensor_coeff is the hydrodynamic dispersion tensor " 22 : "and concentration is the 'variable' for this Kernel"); 23 40 : return params; 24 0 : } 25 : 26 23 : GeochemistryDispersion::GeochemistryDispersion(const InputParameters & parameters) 27 23 : : AnisotropicDiffusion(parameters), _porosity(coupledValue("porosity")) 28 : { 29 23 : } 30 : 31 : Real 32 18080 : GeochemistryDispersion::computeQpResidual() 33 : { 34 18080 : return _porosity[_qp] * AnisotropicDiffusion::computeQpResidual(); 35 : } 36 : 37 : Real 38 12320 : GeochemistryDispersion::computeQpJacobian() 39 : { 40 12320 : return _porosity[_qp] * AnisotropicDiffusion::computeQpJacobian(); 41 : }