Add jet, surface and fixed-patch tests and runnable examples
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
"""Explicit, isolated low-Mach GPU test configuration."""
|
||||
import json
|
||||
from pathlib import Path
|
||||
from tempfile import TemporaryDirectory
|
||||
|
||||
from CelerisLab.simulation import Simulation
|
||||
|
||||
|
||||
def make_sim(nx=128, ny=64, *, streaming="double_buffer", precision="FP32",
|
||||
shifted=False, collision="SRT", y_wall="bounce_back", **physics):
|
||||
config_path = Path(__file__).resolve().parents[2] / "src/CelerisLab/configs/config_lbm.json"
|
||||
cfg = json.loads(config_path.read_text())
|
||||
cfg["grid"].update(nx=nx, ny=ny, nz=1, lattice_model="D2Q9")
|
||||
cfg["physics"].update(viscosity=0.05, velocity=0.02, rho=1.0)
|
||||
cfg["physics"].update(physics)
|
||||
cfg["method"].update(collision=collision, streaming=streaming,
|
||||
store_precision=precision, ddf_shifting=shifted, y_wall_bc=y_wall)
|
||||
cfg["method"]["les"]["enabled"] = False
|
||||
with TemporaryDirectory(prefix="celeris-test-config-") as temp:
|
||||
lbm = Path(temp) / "lbm.json"
|
||||
bodies = Path(temp) / "bodies.json"
|
||||
lbm.write_text(json.dumps(cfg))
|
||||
bodies.write_text('{"objects": []}')
|
||||
return Simulation(lbm_config_path=str(lbm), body_config_path=str(bodies))
|
||||
Reference in New Issue
Block a user