MultiSample/MultiSampleMeshCombiner

This action builds a CombinerGenerator with the inputs parameter populated by multi_sample_size copies of it's own subblock name with the sample index appended (separated by an underscore). For example

[MultiSample<<<{"href": "../index.html"}>>>]
  [GeneratedMeshGenerator<<<{"href": "../GeneratedMeshGenerator/index.html"}>>>]
    [mymesh]
      multi_sample_number_params<<<{"description": "List of Real value parameters to set for the generated objects"}>>> = 'xmin xmax'
      multi_sample_number_values<<<{"description": "List of Real or Integer value vectors for each parameter, multi_sample_size entries each"}>>> = "0 1.1 2.2 3.3 ;
                                    1 2.1 3.2 4.3"
      multi_sample_size<<<{"description": "Number of objects to create"}>>> = 4

      dim<<<{"description": "The dimension of the mesh to be generated"}>>> = 2
      nx<<<{"description": "Number of elements in the X direction"}>>> = 5
      ny<<<{"description": "Number of elements in the Y direction"}>>> = 5
    []
  []

  [SubdomainIDGenerator<<<{"href": "../SubdomainIDGenerator/index.html"}>>>]
    [subs]
      input<<<{"description": "The mesh we want to modify"}>>> = mymesh
      multi_sample_size<<<{"description": "Number of objects to create"}>>> = 4
    []
  []

  [MultiSampleMeshCombiner<<<{"href": "index.html"}>>>]
    [subs]
      multi_sample_size<<<{"description": "Number of submeshes or samples."}>>> = 4
    []
  []
[]
(test/tests/multi_sample_action/blocks.i)

creates four (multi_sample_size = 4) GeneratedMeshGenerators named mymesh_0 through mymesh_3, which are each chained to a SubdomainIDGenerator named subs_0 through subs_3.

The MultiSampleMeshCombiner then takes subs_0 through subs_3 and combines them into subs_combiner.

commentnote

Note that the subblock names [mymesh] and [subs] are determining the names of the emitted mesh generators.

Example

[MultiSample<<<{"href": "../index.html"}>>>]
  [GeneratedMeshGenerator<<<{"href": "../GeneratedMeshGenerator/index.html"}>>>]
    [mymesh]
      multi_sample_number_params<<<{"description": "List of Real value parameters to set for the generated objects"}>>> = 'xmin xmax'
      multi_sample_number_values<<<{"description": "List of Real or Integer value vectors for each parameter, multi_sample_size entries each"}>>> = "0 1.1 2.2 3.3 4.4 5.5 6.6 7.7 8.8 9.9;
                            1 2.1 3.2 4.3 5.4 6.5 7.6 8.7 9.8 10.9"
      dim<<<{"description": "The dimension of the mesh to be generated"}>>> = 2
      nx<<<{"description": "Number of elements in the X direction"}>>> = 3
      ny<<<{"description": "Number of elements in the Y direction"}>>> = 3
    []
  []

  [MultiSampleMeshCombiner<<<{"href": "index.html"}>>>]
    [mymesh]
    []
  []

  [DirichletBC<<<{"href": "../DirichletBC/index.html"}>>>]
    [leftbc]
      multi_sample_number_params<<<{"description": "List of Real value parameters to set for the generated objects"}>>> = value
      multi_sample_number_values<<<{"description": "List of Real or Integer value vectors for each parameter, multi_sample_size entries each"}>>> = '1 2 3 4 5 6 7 8 9 10'
      value<<<{"description": "Value of the BC"}>>> = 0
      boundary<<<{"description": "The list of boundary IDs from the mesh where this object applies"}>>> = left
      variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = u
    []
    [rightbc]
      multi_sample_number_params<<<{"description": "List of Real value parameters to set for the generated objects"}>>> = value
      multi_sample_number_values<<<{"description": "List of Real or Integer value vectors for each parameter, multi_sample_size entries each"}>>> = '-1 -2 -3 -4 -5 -6 -7 -8 -9 -10'
      value<<<{"description": "Value of the BC"}>>> = 0
      boundary<<<{"description": "The list of boundary IDs from the mesh where this object applies"}>>> = right
      variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = u
    []
  []
[]
(test/tests/multi_sample_action/test.i)