SmoothCircleIC

Circle with a smooth interface

Insert a single disk or sphere with radius (radius) and a smooth interface of width (int_width) with a user specified value range and functional dependence of the interface (profile). (outvalue) is the variable value outside of the disk/sphere and (invalue) is the value on the interior.

Cosine profile (COS)

(1)

Hyperbolic tangent profile (TANH)

(2)

In both cases is the initial condition value at , where is the center point (x1, y1, z1) of the circle (making a radius vector).

The hyperbolic tangent interface is scaled to have the same slope at its midpoint as the cosine interface.

For the COS interface, which is strictly zero outside the particle and strictly inside the particle the interface width int_width denotes exactly the width of the transition region where the order parameter values are in the open interval . The TANH interface function is asymptotic and requires a different definition for the interface width. Here we chose to have the slope at the midpoint match up with the midpoint slope of the COS interface (giving rise to the factor of in eq. Eq. (2)).

Input Parameters

  • invalueThe variable value inside the circle

    C++ Type:double

    Options:

    Description:The variable value inside the circle

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

    C++ Type:VariableName

    Options:

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

  • radiusThe radius of a circle

    C++ Type:double

    Options:

    Description:The radius of a circle

  • outvalueThe variable value outside the circle

    C++ Type:double

    Options:

    Description:The variable value outside the circle

  • y1The y coordinate of the circle center

    C++ Type:double

    Options:

    Description:The y coordinate of the circle center

  • x1The x coordinate of the circle center

    C++ Type:double

    Options:

    Description:The x coordinate of the circle center

Required Parameters

  • profileCOSFunctional dependence for the interface profile

    Default:COS

    C++ Type:MooseEnum

    Options:COS TANH

    Description:Functional dependence for the interface profile

  • rand_seed12345Seed value for the random number generator

    Default:12345

    C++ Type:unsigned int

    Options:

    Description:Seed value for the random number generator

  • 3D_spheresTruein 3D, whether the objects are spheres or columns

    Default:True

    C++ Type:bool

    Options:

    Description:in 3D, whether the objects are spheres or columns

  • zero_gradientFalseSet the gradient DOFs to zero. This can avoid numerical problems with higher order shape functions and overlapping circles.

    Default:False

    C++ Type:bool

    Options:

    Description:Set the gradient DOFs to zero. This can avoid numerical problems with higher order shape functions and overlapping circles.

  • boundaryThe list of boundary IDs from the mesh where this boundary condition applies

    C++ Type:std::vector

    Options:

    Description:The list of boundary IDs from the mesh where this boundary condition applies

  • int_width0The interfacial width of the void surface. Defaults to sharp interface

    Default:0

    C++ Type:double

    Options:

    Description:The interfacial width of the void surface. Defaults to sharp interface

  • z10The z coordinate of the circle center

    Default:0

    C++ Type:double

    Options:

    Description:The z coordinate of the circle center

  • blockThe list of block ids (SubdomainID) that this object will be applied

    C++ Type:std::vector

    Options:

    Description:The list of block ids (SubdomainID) that this object will be applied

Optional Parameters

  • 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

    Options:

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

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

    C++ Type:std::vector

    Options:

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

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Options:

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Input Files

Child Objects

References