SONDefinitionFormatter
This class produces a dump of the InputFileParameters
in the Standard Object Notation (SON) format for use by the Hierarchical Input Validation Engine (HIVE) in the NEAMS Workbench. It takes its input from JsonSyntaxTree.
This formatter is used for the --definition
command line option, described here. It is also available for the application developer, either directly or using an AdvancedOutput.
Example output
We reproduce here the output of the InputParameters
SON dump for the ParsedFunction. We can see that each parameter is listed with additional meta data for how it may be set in the input file.
'ADParsedFunction_type'{
InputTmpl=MooseBlock
InputName="ADParsedFunction"
InputType=type_sub
InputDefault="insert_name_here"
Description="Function created by parsing a string"
MinOccurs=0
MaxOccurs=NoLimit
decl{
MinOccurs=0
MaxOccurs=1
ValType=String
}
'active'{
InputTmpl=MooseParam
InputType=key_array
InputName="active"
Description="If specified only the blocks named will be visited and made active"
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
InputDefault="__all__"
}
} % end parameter active
'control_tags'{
InputTmpl=MooseParam
InputType=key_array
InputName="control_tags"
Description="Adds user-defined labels for accessing object parameters via control logic."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
}
} % end parameter control_tags
'enable'{
InputTmpl=MooseParam
InputType=key_value
InputName="enable"
Description="Set the enabled status of the MooseObject."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=1
MaxOccurs=1
ValType=String
ValEnums=[ true false 1 0 on off ]
InputDefault="1"
}
} % end parameter enable
'execute_on'{
InputTmpl=MooseParam
InputType=key_array
InputName="execute_on"
Description="The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM, ALWAYS."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
ValEnums=[ "NONE" "INITIAL" "LINEAR" "NONLINEAR" "TIMESTEP_END" "TIMESTEP_BEGIN" "FINAL" "CUSTOM" "ALWAYS" ]
InputDefault="LINEAR"
}
} % end parameter execute_on
'inactive'{
InputTmpl=MooseParam
InputType=key_array
InputName="inactive"
Description="If specified blocks matching these identifiers will be skipped."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
}
} % end parameter inactive
'isObjectAction'{
InputTmpl=MooseParam
InputType=key_value
InputName="isObjectAction"
Description="Indicates that this is a MooseObjectAction."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=1
MaxOccurs=1
ValType=String
ValEnums=[ true false 1 0 on off ]
InputDefault="1"
}
} % end parameter isObjectAction
'type'{
InputTmpl=MooseParam
InputType=key_value
InputName="type"
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=1
MaxOccurs=1
ValType=String
InputDefault="ADParsedFunction"
}
} % end parameter type
'vals'{
InputTmpl=MooseParam
InputType=key_array
InputName="vals"
Description="Constant numeric values, postprocessor names, or function names for vars."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
}
} % end parameter vals
ChildAtLeastOne=[ "../../GlobalParams/value/value" "value" ]
'value'{
InputTmpl=MooseParam
InputType=key_array
InputName="value"
Description="The user defined function."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
}
} % end parameter value
'vars'{
InputTmpl=MooseParam
InputType=key_array
InputName="vars"
Description="Variables (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector."
MinOccurs=0
MaxOccurs=1
'value'{
MinOccurs=0
MaxOccurs=NoLimit
ValType=String
}
} % end parameter vars
} % end block ADParsedFunction_type