RandomIC

RandomIC initializes a variable using randomly generated numbers. These can either follow a uniform distribution over a user-defined range (using the min and max parameters), or follow an arbitrary distribution defined by a Distribution object specified using the distribution parameter. An initial seed value may be set with the "seed" parameter. The RandomIC object produces a parallel agnostic random field.

commentnote

Class Description

Initialize a variable with randomly generated numbers following either a uniform distribution or a user-defined distribution

Input Parameters

  • 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>

    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>

    Controllable:No

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

  • distributionName of distribution defining distribution of randomly generated values

    C++ Type:DistributionName

    Controllable:No

    Description:Name of distribution defining distribution of randomly generated values

  • legacy_generatorFalseDetermines whether or not the legacy generator (deprecated) should be used.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Determines whether or not the legacy generator (deprecated) should be used.

  • max1Upper bound of uniformly distributed randomly generated values

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Upper bound of uniformly distributed randomly generated values

  • min0Lower bound of uniformly distributed randomly generated values

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Lower bound of uniformly distributed randomly generated values

  • seed0Seed value for the random number generator

    Default:0

    C++ Type:unsigned int

    Controllable:No

    Description:Seed value for the random number generator

  • stateCURRENTThis parameter is used to set old state solutions at the start of simulation. If specifying multiple states at the start of simulation, use one IC object for each state being specified. The states are CURRENT=0 OLD=1 OLDER=2. States older than 2 are not currently supported. When the user only specifies current state, the solution is copied to the old and older states, as expected. This functionality is mainly used for dynamic simulations with explicit time integration schemes, where old solution states are used in the velocity and acceleration approximations.

    Default:CURRENT

    C++ Type:MooseEnum

    Options:CURRENT, OLD, OLDER

    Controllable:No

    Description:This parameter is used to set old state solutions at the start of simulation. If specifying multiple states at the start of simulation, use one IC object for each state being specified. The states are CURRENT=0 OLD=1 OLDER=2. States older than 2 are not currently supported. When the user only specifies current state, the solution is copied to the old and older states, as expected. This functionality is mainly used for dynamic simulations with explicit time integration schemes, where old solution states are used in the velocity and acceleration approximations.

Optional Parameters

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

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

    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

    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

    Controllable:No

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

Advanced Parameters

  • 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

    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.

Material Property Retrieval Parameters

References

No citations exist within this document.