blob: e4dd0b78f38f4f41db9e371ca75784b77e75174d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
import sympy
from mako.template import Template
from pathlib import Path
from simulation import Geometry
from symbolic.generator import LBM
import symbolic.D3Q19 as D3Q19
lbm = LBM(D3Q19)
moments = lbm.moments(optimize = True)
collide = lbm.bgk(f_eq = lbm.equilibrium(), tau = 0.6, optimize = True)
geometry = Geometry(32, 32, 32)
program_src = Template(filename = str(Path(__file__).parent/'template/standalone.mako')).render(
descriptor = lbm.descriptor,
geometry = geometry,
steps = 100,
moments_subexpr = moments[0],
moments_assignment = moments[1],
collide_subexpr = collide[0],
collide_assignment = collide[1],
float_type = 'double',
ccode = sympy.ccode,
enable_omp_simd = True
)
print(program_src)
|