Input Files¶
When running OpenImpala from the command line (C++ executable), configuration
is specified via AMReX ParmParse text files. The file is passed as the first
argument:
./Diffusion3d inputs
Example input file¶
# --- Image Input ---
image.filename = microstructure.tiff
image.threshold = 128
# --- Solver Configuration ---
tortuosity.direction = 2 # 0=X, 1=Y, 2=Z
tortuosity.phase_id = 0 # Phase to solve for
tortuosity.solver_type = PCG # PCG, FlexGMRES, GMRES, BiCGSTAB, SMG, PFMG
# --- HYPRE Solver Parameters ---
hypre.eps = 1.0e-9 # Convergence tolerance
hypre.maxiter = 200 # Maximum iterations
# --- AMReX Grid Configuration ---
amr.max_grid_size = 64 # Box decomposition size
# --- Output ---
results.path = ./results # Output directory
tortuosity.write_plotfile = false # Write AMReX plotfile of solution
tortuosity.verbose = 1 # 0=silent, 1=basic, 2+=detailed
Key parameters¶
Image input¶
Parameter |
Type |
Description |
|---|---|---|
|
string |
Path to 3D image (TIFF, HDF5, RAW, DAT) |
|
float |
Binarisation threshold value |
|
string |
HDF5 dataset path (default: |
Solver¶
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
int |
0 |
Flow direction: 0=X, 1=Y, 2=Z |
|
int |
0 |
Phase ID of the conducting phase |
|
string |
PCG |
HYPRE solver algorithm |
|
float |
0.0 |
Dirichlet BC at inlet |
|
float |
1.0 |
Dirichlet BC at outlet |
Multi-phase transport¶
tortuosity.active_phases = 0 2 # Phase IDs with non-zero D
tortuosity.phase_diffusivities = 1.0 0.5 # Corresponding D values
Grid decomposition¶
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
int |
32 |
Maximum box size for domain decomposition |
Smaller values create more boxes (better MPI load balance); larger values reduce communication overhead. Powers of 2 that divide the domain dimensions evenly are recommended.
Output files¶
File |
Description |
|---|---|
|
Structured JSON with all computed properties |
|
Human-readable summary |
|
AMReX plotfile (if |