Line data Source code
1 : /**********************************************************************/ 2 : /* DO NOT MODIFY THIS HEADER */ 3 : /* MAGPIE - Mesoscale Atomistic Glue Program for Integrated Execution */ 4 : /* */ 5 : /* Copyright 2017 Battelle Energy Alliance, LLC */ 6 : /* ALL RIGHTS RESERVED */ 7 : /**********************************************************************/ 8 : 9 : #include "PKAFunction.h" 10 : 11 : registerMooseObject("MagpieApp", PKAFunction); 12 : 13 : InputParameters 14 9 : PKAFunction::validParams() 15 : { 16 9 : InputParameters params = PKAEmpiricalBase::validParams(); 17 9 : params.addClassDescription("PKAs with time dependent mass, charge, energy, and rate"); 18 18 : params.addParam<FunctionName>( 19 : "pka_rate", 20 18 : 1e-8, 21 : "PKA rate per unit volume (uses mesh units defined in the rasterizer and moose time units)"); 22 18 : params.addRequiredParam<FunctionName>("Z", "PKA nuclear charge"); 23 18 : params.addRequiredParam<FunctionName>("m", "PKA mass in amu"); 24 18 : params.addRequiredParam<FunctionName>("E", "PKA energy in eV"); 25 9 : return params; 26 0 : } 27 : 28 5 : PKAFunction::PKAFunction(const InputParameters & parameters) 29 : : PKAEmpiricalBase(parameters), 30 5 : _pka_rate(getFunction("pka_rate")), 31 5 : _Z(getFunction("Z")), 32 5 : _m(getFunction("m")), 33 5 : _E(getFunction("E")), 34 10 : _time(_fe_problem.time()) 35 : { 36 5 : }