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 "FunctorMaterial.h" 11 : 12 : InputParameters 13 434263 : FunctorMaterial::validParams() 14 : { 15 434263 : auto params = Material::validParams(); 16 434263 : params.suppressParameter<bool>("use_displaced_mesh"); 17 : 18 : // Functor materials define functors, and the functor caching is defined by the execute_on 19 434263 : params += SetupInterface::validParams(); 20 434263 : ExecFlagEnum & exec_enum = params.set<ExecFlagEnum>("execute_on", true); 21 434263 : exec_enum.addAvailableFlags(EXEC_ALWAYS); 22 : // Default is no-caching. Same default as not passing a clearance schedule when adding a functor 23 868526 : params.set<ExecFlagEnum>("execute_on") = {EXEC_ALWAYS}; 24 : 25 : // Do not allow functor materials in the regular Materials block 26 434263 : params.registerBase("FunctorMaterial"); 27 : 28 : // Remove MaterialBase parameters that are not used 29 434263 : params.suppressParameter<bool>("compute"); 30 434263 : params.suppressParameter<std::vector<BoundaryName>>("boundary"); 31 434263 : params.suppressParameter<MooseEnum>("constant_on"); 32 434263 : params.suppressParameter<MaterialPropertyName>("prop_getter_suffix"); 33 434263 : params.suppressParameter<bool>("use_interpolated_state"); 34 : 35 434263 : return params; 36 434263 : } 37 : 38 3266 : FunctorMaterial::FunctorMaterial(const InputParameters & parameters) : Material(parameters) {}