Line data Source code
1 : /****************************************************************/ 2 : /* DO NOT MODIFY THIS HEADER */ 3 : /* BlackBear */ 4 : /* */ 5 : /* (c) 2017 Battelle Energy Alliance, LLC */ 6 : /* ALL RIGHTS RESERVED */ 7 : /* */ 8 : /* Prepared by Battelle Energy Alliance, LLC */ 9 : /* Under Contract No. DE-AC07-05ID14517 */ 10 : /* With the U. S. Department of Energy */ 11 : /* */ 12 : /* See COPYRIGHT for full restrictions */ 13 : /****************************************************************/ 14 : 15 : #include "ConcreteMoistureTimeIntegration.h" 16 : #include "Material.h" 17 : 18 : registerMooseObject("BlackBearApp", ConcreteMoistureTimeIntegration); 19 : 20 : InputParameters 21 54 : ConcreteMoistureTimeIntegration::validParams() 22 : { 23 54 : InputParameters params = TimeDerivative::validParams(); 24 54 : params.addClassDescription("Time derivative term for moisture transport in concrete."); 25 54 : return params; 26 0 : } 27 : 28 28 : ConcreteMoistureTimeIntegration::ConcreteMoistureTimeIntegration(const InputParameters & parameters) 29 : : TimeDerivative(parameters), 30 28 : _moisture_capacity(hasMaterialProperty<Real>("moisture_capacity") 31 56 : ? &getMaterialProperty<Real>("moisture_capacity") 32 28 : : nullptr) 33 : { 34 28 : } 35 : 36 : Real 37 1303792 : ConcreteMoistureTimeIntegration::computeQpResidual() 38 : { 39 : // self accumulation term 40 1303792 : if (_moisture_capacity) 41 685216 : return (*_moisture_capacity)[_qp] * TimeDerivative::computeQpResidual(); 42 : else 43 618576 : return TimeDerivative::computeQpResidual(); 44 : } 45 : 46 : Real 47 414848 : ConcreteMoistureTimeIntegration::computeQpJacobian() 48 : { 49 414848 : if (_moisture_capacity) 50 218400 : return (*_moisture_capacity)[_qp] * TimeDerivative::computeQpJacobian(); 51 : else 52 196448 : return TimeDerivative::computeQpJacobian(); 53 : }