TRISOMonteCarloPointSourceLocation

Description

TRISOMonteCarloPointSourceLocation generates random locations of point sources associated with TRISO particles in the fuel element. Those points will be used in TRISOMonteCarloPointSource. The location of particles can be output using TRISOMonteCarloPointSourceOutput.

TRISOMonteCarloPointSourceLocation supports PLATE Figure 1, CYLINDER Figure 2 and SPHERE Figure 3 geometries. For PLATE type, min_location and max_location are required to specify a bounding box for generating random points. The size of min_location and max_location must match the mesh dimensions. For CYLINDER and SPHERE types, min_radius and max_radius are required to generate random points in a cylindrical or spherical domain. The center coordinates of the sphere or cylinder geometry are at (0.0, 0.0, 0.0) by default and can be set by the center parameter. For CYLINDER type, height is also required to specify the height of the cylinder. fuel_element_blocks can be used to restrict points within certain blocks. particle_space can be optionally specified to set a minimum distance between any two particles.

Figure 1: Plate geometry example.

Figure 2: Cylinder geometry example.

Figure 3: Sphere geometry example.

Example Input Syntax

[UserObjects<<<{"href": "../../syntax/UserObjects/index.html"}>>>]
  [point_source_location]
    type = TRISOMonteCarloPointSourceLocation<<<{"description": "Generate random locations of point sources for TRISO particles.", "href": "TRISOMonteCarloPointSourceLocation.html"}>>>
    min_radius<<<{"description": "The minimum radius of cylindrical or spherical fuel element."}>>> = 0.0138
    max_radius<<<{"description": "The maximum radius of cylindrical or spherical fuel element."}>>> = 0.018
    geometry<<<{"description": "Specifies the domain geometry."}>>> = SPHERE
    sampler<<<{"description": "The sampler object that performs TRISO particle Monte Carlo simulation."}>>> = sample
    fuel_element_blocks<<<{"description": "List of fuel element blocks in which to apply point sources."}>>> = fuel
    execute_on<<<{"description": "The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html."}>>> = 'INITIAL'
  []
[]
(test/tests/triso_pebble/3D_pebble.i)

Input Parameters

  • center0 0 0Center coordinates of the Sphere or Cylinder geometry.

    Default:0 0 0

    C++ Type:libMesh::Point

    Controllable:No

    Description:Center coordinates of the Sphere or Cylinder geometry.

  • fuel_element_blocksList of fuel element blocks in which to apply point sources.

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

    Controllable:No

    Description:List of fuel element blocks in which to apply point sources.

  • geometryPLATESpecifies the domain geometry.

    Default:PLATE

    C++ Type:MooseEnum

    Options:PLATE, CYLINDER, SPHERE

    Controllable:No

    Description:Specifies the domain geometry.

  • height1The height of the Cylinder geometry.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The height of the Cylinder geometry.

  • max_location1 Location of upper bound of uniformly distributed randomly generated points location for PLATE geometry.

    Default:1

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Location of upper bound of uniformly distributed randomly generated points location for PLATE geometry.

  • max_num_tries1000The maximum number of tries to add random particle locations.

    Default:1000

    C++ Type:unsigned int

    Controllable:No

    Description:The maximum number of tries to add random particle locations.

  • max_radius1The maximum radius of cylindrical or spherical fuel element.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The maximum radius of cylindrical or spherical fuel element.

  • min_location0 Location of lower bound of uniformly distributed randomly generated points location for PLATE geometry.

    Default:0

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Location of lower bound of uniformly distributed randomly generated points location for PLATE geometry.

  • min_radius0The minimum radius of cylindrical or spherical fuel element.

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The minimum radius of cylindrical or spherical fuel element.

  • num_particles0Number of TRISO particles.

    Default:0

    C++ Type:unsigned int

    Controllable:No

    Description:Number of TRISO particles.

  • particle_space0minimum spacing of particles, measured from center to center.

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:minimum spacing of particles, measured from center to center.

  • samplerThe sampler object that performs TRISO particle Monte Carlo simulation.

    C++ Type:SamplerName

    Controllable:No

    Description:The sampler object that performs TRISO particle Monte Carlo simulation.

Optional Parameters

  • allow_duplicate_execution_on_initialFalseIn the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

    Default:False

    C++ Type:bool

    Controllable:No

    Description:In the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

  • execute_onTIMESTEP_ENDThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

    Default:TIMESTEP_END

    C++ Type:ExecFlagEnum

    Options:XFEM_MARK, NONE, INITIAL, LINEAR, NONLINEAR_CONVERGENCE, NONLINEAR, POSTCHECK, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

  • execution_order_group0Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.

    Default:0

    C++ Type:int

    Controllable:No

    Description:Execution order groups are executed in increasing order (e.g., the lowest number is executed first). Note that negative group numbers may be used to execute groups before the default (0) group. Please refer to the user object documentation for ordering of user object execution within a group.

  • force_postauxFalseForces the UserObject to be executed in POSTAUX

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Forces the UserObject to be executed in POSTAUX

  • force_preauxFalseForces the UserObject to be executed in PREAUX

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Forces the UserObject to be executed in PREAUX

  • force_preicFalseForces the UserObject to be executed in PREIC during initial setup

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Forces the UserObject to be executed in PREIC during initial setup

Execution Scheduling 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:Yes

    Description:Set the enabled status of the MooseObject.

  • use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

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

Input Files