aboutsummaryrefslogtreecommitdiff
path: root/ldc_2d/cpp/generate.py
diff options
context:
space:
mode:
Diffstat (limited to 'ldc_2d/cpp/generate.py')
-rwxr-xr-xldc_2d/cpp/generate.py20
1 files changed, 10 insertions, 10 deletions
diff --git a/ldc_2d/cpp/generate.py b/ldc_2d/cpp/generate.py
index 167cc1b..4222e98 100755
--- a/ldc_2d/cpp/generate.py
+++ b/ldc_2d/cpp/generate.py
@@ -5,6 +5,8 @@ import argparse
from boltzgen import LBM, Generator, Geometry
from boltzgen.lbm.model import D2Q9
+import config
+
argparser = argparse.ArgumentParser(
description = 'Generate a C++ implementation of a lid driven cavity simulation using LBM')
argparser.add_argument(
@@ -12,29 +14,27 @@ argparser.add_argument(
args = argparser.parse_args()
-geometry = Geometry(128, 128)
-
-functions = ['collide_and_stream', 'equilibrilize', 'collect_moments', 'momenta_boundary']
-
-lbm = LBM(D2Q9)
+lbm = LBM(config.descriptor)
generator = Generator(
- descriptor = D2Q9,
+ descriptor = config.descriptor,
moments = lbm.moments(),
- collision = lbm.bgk(f_eq = lbm.equilibrium(), tau = 0.52),
+ collision = lbm.bgk(f_eq = lbm.equilibrium(), tau = config.tau),
target = 'cpp',
- precision = 'double',
+ precision = config.precision,
index = 'XYZ',
layout = 'AOS')
if args.output is None:
args.output = '.'
+functions = ['collide_and_stream', 'equilibrilize', 'collect_moments', 'momenta_boundary']
+
with open('%s/kernel.h' % args.output, 'w') as kernel:
- kernel.write(generator.kernel(geometry, functions))
+ kernel.write(generator.kernel(config.geometry, functions))
ldc_src = ''
with open('ldc.cpp.mako', 'r') as template:
ldc_src = template.read()
with open('%s/ldc.cpp' % args.output, 'w') as app:
- app.write(generator.custom(geometry, ldc_src))
+ app.write(generator.custom(config.geometry, ldc_src))