Specifying a geometry
The following inputs are defined using the mfix prefix.
Description |
Type |
Default |
|
|---|---|---|---|
geometry |
Select a predefined EB geometry |
String |
‘’ |
geometry_filename |
The CSG file that defines the EB geometry |
String |
‘’ |
levelset__refinement |
Refinement factor of levelset resolution relative to level 0 resolution |
Int |
1 |
Most simulations require a user to specify some kind of geometry. For example, the geometry could be a basic cylinder used to model flow inside a pipe, or it may be an irregularly shaped solid to study external flow around a bluff body, or the geometry may be the proposed design of a complex, multi-stage chemical reactor undergoing performance assessment. In the following sections, several options for specifying a geometry are described.
Caution
Any domain extent that is not periodic or defined as a Dirichlet or Neumann boundary condition must be fully covered. To state this another way, if a domain extent is not periodic or an inflow or outflow boundary condition, then it should be excluded from (outside of) the domain by the embedded boundary geometry.
Pre-defined geometries
The mfix.geometry input is used to choose one of the basic pre-defined geometries, or to
select the option to use a user-defined geometry constructed from native AMReX implicit functions.
Constructive solid geometry
Use the mfix.geometry_filename input to select a constructive solid geometry (CSG) that defines
the system geometry.
Regions and boundary conditions
Simple geometries can be created by combining planar regions and no-slip wall
boundary conditions. The mfix.geometry and mfix.geometry_file
inputs should remain undefined when using this method.
In the following example, the domain is periodic in the x- and z- directions; therefore,
walls only need to cover the low and high xz faces. First, wall1 and wall2 are defined
in the regions section, then they are used to specify two no-slip wall boundary conditions.
# Define periodicity and domain extents
# -------------------------------------------------------------
geometry.coord_sys = 0
geometry.is_periodic = 1 0 1
geometry.prob_lo = 0. 0. 0.
geometry.prob_hi = 0.01 0.01 0.005
# Define two planar regions
# -------------------------------------------------------------
mfix.regions = wall1 wall2
regions.wall1.lo = 0.000 1.25e-6 0.000
regions.wall1.hi = 0.010 1.25e-6 0.005
regions.wall2.lo = 0.000 9.99875e-3 0.000
regions.wall2.hi = 0.010 9.99875e-3 0.005
# Use the regions to define no-slip wall boundaries
# -------------------------------------------------------------
bc.regions = wall1 wall2
bc.wall1 = nsw
bc.wall1.normal = 0.0 1.0 0.0
bc.wall2 = nsw
bc.wall2.normal = 0.0 -1.0 0.0
Caution
It is highly recommended that planar regions not be defined coincident to domain boundaries. It is better to specify planes slightly offset from the domain as demonstrated in the above example.