Multiblock#
The multiblock feature allows for subdivision of the computational domain in finer grid refinement regions. This is illustrated by the figure below

Multiblock example#
The refinement structure is separated in levels whose resolution is always the double of previous level, beggining on level 0.
The transition between levels must always occur from a previous to a next level (e.g: a transition from level 1 to level 3 must include a level 2 region in-between).
The refined regions are determined in domain.refinement
field:
domain:
refinement:
static:
volume_refinement_lvl1:
volumes_refine:
- is_abs: true
lvl: 1
start: [0.0, 0.0, 0.0]
end: [32.0, 160.0, 64.0]
volumes_not_refine:
- is_abs: false
start: [0, 0.15, 0.1]
end: [0.1, 0.2, 0.3]
body_refinement_lvl3:
bodies:
- body_name: solid-body1
lvl: 3
normal_offsets: !range [-0.25, 0.2501, 0.125]
volume_refinement_limit:
is_abs: true
start: [0, 10, 0]
end: [40, 50, 150]
Important
It’s reccomendable to avoid placing too many Lagrangian mesh nodes in the level transition regions. Hence when using the body refinement, an offset interval of at least +/- 1 block may be necessary.
To fill the regions between offset limits, we suggest to use !range
as shown above.
Overlap F2C#
In the current multiblock framework, the communication between coarse and fine level requires an overlap of both grids, as shown below:

Overlap in F2C (fine to coarse)#
Important
For turbulent flows, it is common practice to use at least 2 nodes for the overlap to provide certain flow development between level transitions.
This configuration is set in the models.multiblock
field:
multiblock:
overlap_F2C: 2
# It's possible to define custom overlaps of F2C for specific levels
# To do so, use as [lvl_from]: overlap to use
custom_overlap_F2C:
1: 3
2: 3
5: 1