ArrayFunctionIC

An initial condition that uses a normal function of x, y, z to produce values (and optionally gradients) for a field variable.

All the components of the array variable must be specified simultaneously.

Example input syntax

In this example, initial conditions are set for array variable u and auxiliary array variable v of size 2 using two sinusoid functions.

[ICs]
  [uic]
    type = ArrayFunctionIC
    variable = u
    function = 'sinx siny'
  []
  [u0ic]
    type = FunctionIC
    variable = u0
    function = sinx
  []
  [u1ic]
    type = FunctionIC
    variable = u1
    function = siny
  []
  [vic]
    type = ArrayFunctionIC
    variable = v
    function = 'sinx siny'
  []
[]

[Functions]
  [sinx]
    type = ParsedFunction
    expression = sin(x)
  []
  [siny]
    type = ParsedFunction
    expression = sin(y)
  []
[]
(moose/test/tests/ics/array_function_ic/array_function_ic_test.i)

Input Parameters

  • functionThe initial condition functions.

    C++ Type:std::vector<FunctionName>

    Unit:(no unit assumed)

    Controllable:No

    Description:The initial condition functions.

  • variableThe variable this initial condition is supposed to provide values for.

    C++ Type:VariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:The variable this initial condition is supposed to provide values for.

Required Parameters

  • blockThe list of blocks (ids or names) that this object will be applied

    C++ Type:std::vector<SubdomainName>

    Unit:(no unit assumed)

    Controllable:No

    Description:The list of blocks (ids or names) that this object will be applied

  • boundaryThe list of boundaries (ids or names) from the mesh where this object applies

    C++ Type:std::vector<BoundaryName>

    Unit:(no unit assumed)

    Controllable:No

    Description:The list of boundaries (ids or names) from the mesh where this object applies

  • prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.

    C++ Type:MaterialPropertyName

    Unit:(no unit assumed)

    Controllable:No

    Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.

  • use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

  • ignore_uo_dependencyFalseWhen set to true, a UserObject retrieved by this IC will not be executed before the this IC

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:When set to true, a UserObject retrieved by this IC will not be executed before the this IC

Advanced Parameters