Line data Source code
1 : //* This file is part of the RACCOON application 2 : //* being developed at Dolbow lab at Duke University 3 : //* http://dolbow.pratt.duke.edu 4 : 5 : #include "CustomParsedFunctionBase.h" 6 : 7 : InputParameters 8 976 : CustomParsedFunctionBase::validParams() 9 : { 10 976 : InputParameters params = DerivativeParsedMaterialHelperTempl<true>::validParams(); 11 1952 : params.addRequiredParam<std::string>("expression", "Function to parse"); 12 976 : params.addParam<std::vector<std::string>>("parameter_names", 13 976 : std::vector<std::string>(), 14 : "Vector of parameters used in the parsed function"); 15 976 : params.addParam<std::vector<std::string>>( 16 976 : "parameter_values", std::vector<std::string>(), "Vector of values for the parameters"); 17 976 : params.addParam<std::vector<std::string>>( 18 : "material_property_names", 19 976 : std::vector<std::string>(), 20 : "Vector of material properties used in the degradation function"); 21 976 : return params; 22 0 : } 23 : 24 318 : CustomParsedFunctionBase::CustomParsedFunctionBase(const InputParameters & parameters) 25 : : DerivativeParsedMaterialHelperTempl<true>(parameters, VariableNameMappingMode::USE_MOOSE_NAMES), 26 318 : _function(getParam<std::string>("expression")), 27 636 : _param_names(getParam<std::vector<std::string>>("parameter_names")), 28 636 : _param_values(getParam<std::vector<std::string>>("parameter_values")), 29 954 : _mat_props(getParam<std::vector<std::string>>("material_property_names")) 30 : { 31 : // Build function, take derivatives, optimize 32 318 : functionParse(_function, 33 : _param_names, 34 : _param_values, 35 : _mat_props, 36 318 : std::vector<std::string>(), 37 318 : std::vector<Real>()); 38 318 : }