PolycrystalVoronoiVoidIC

The PolycrystalVoronoiVoidIC generates a Voronoi tesslation to produce a grain structure with voids randomly distributed along the grain boundaries. The centroids of grains can be either generated from a set of random points or assigned from a file. It requires the number of voids to be greater than zero. In general, you should use PolycrystalVoronoi to represent Voronoi grain structures without voids.

Typical usage in an input file:

[./c_IC]
  variable = c
  type = PolycrystalVoronoiVoidIC
  structure_type = voids
[../]
(modules/phase_field/test/tests/initial_conditions/PolycrystalVoronoiVoidIC_periodic.i)

Description and Syntax

Random distribution of smooth circles with given minimum spacing

Input Parameters

  • bubspacminimum spacing of bubbles, measured from center to center

    C++ Type:double

    Options:

    Description:minimum spacing of bubbles, measured from center to center

  • op_numNumber of order parameters

    C++ Type:unsigned int

    Options:

    Description:Number of order parameters

  • numbubThe number of bubbles to place

    C++ Type:unsigned int

    Options:

    Description:The number of bubbles to place

  • structure_typeWhich structure type is being initialized, grains or voids

    C++ Type:MooseEnum

    Options:grains voids

    Description:Which structure type is being initialized, grains or voids

  • outvalueThe variable value outside the circle

    C++ Type:double

    Options:

    Description:The variable value outside 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.

  • radiusMean radius value for the circles

    C++ Type:double

    Options:

    Description:Mean radius value for the circles

  • invalueThe variable value inside the circle

    C++ Type:double

    Options:

    Description:The variable value inside the circle

Required Parameters

  • profileCOSFunctional dependence for the interface profile

    Default:COS

    C++ Type:MooseEnum

    Options:COS TANH

    Description:Functional dependence for the interface profile

  • op_index0The index for the current order parameter, not needed if structure_type = voids

    Default:0

    C++ Type:unsigned int

    Options:

    Description:The index for the current order parameter, not needed if structure_type = voids

  • grain_num0Number of grains being represented by the order parameters

    Default:0

    C++ Type:unsigned int

    Options:

    Description:Number of grains being represented by the order parameters

  • file_nameFile containing grain centroids, if file_name is provided, the centroids from the file will be used.

    C++ Type:FileName

    Options:

    Description:File containing grain centroids, if file_name is provided, the centroids from the file will be used.

  • columnar_3DFalse3D microstructure will be columnar in the z-direction?

    Default:False

    C++ Type:bool

    Options:

    Description:3D microstructure will be columnar in the z-direction?

  • rand_seed12444The random seed

    Default:12444

    C++ Type:unsigned int

    Options:

    Description:The random seed

  • numtries1000The number of tries

    Default:1000

    C++ Type:unsigned int

    Options:

    Description:The number of tries

  • radius_variation0Plus or minus fraction of random variation in the bubble radius for uniform, standard deviation for normal

    Default:0

    C++ Type:double

    Options:

    Description:Plus or minus fraction of random variation in the bubble radius for uniform, standard deviation for normal

  • radius_variation_typenoneType of distribution that random circle radii will follow

    Default:none

    C++ Type:MooseEnum

    Options:uniform normal none

    Description:Type of distribution that random circle radii will follow

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

  • 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

  • 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

  • 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