From d4dab626ea25c088e2a5c7256e17d115d4f80478 Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Wed, 12 Jun 2019 22:20:51 +0200 Subject: Make it easier to exchange initial equilibration logic --- implosion.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'implosion.py') diff --git a/implosion.py b/implosion.py index 75e9640..d2754c2 100644 --- a/implosion.py +++ b/implosion.py @@ -29,14 +29,27 @@ def box(nX, nY, x, y): else: return 1 -nUpdates = 1000 +pop_eq = """ + if ( sqrt(pow(get_global_id(0) - ${nX//2}.f, 2.f) + pow(get_global_id(1) - ${nY//2}.f, 2.f)) < ${nX//10} ) { +% for i, w_i in enumerate(w): + preshifted_f_a[${i*nCells}] = 1./24.f; + preshifted_f_b[${i*nCells}] = 1./24.f; +% endfor + } else { +% for i, w_i in enumerate(w): + preshifted_f_a[${i*nCells}] = ${w_i}.f; + preshifted_f_b[${i*nCells}] = ${w_i}.f; +% endfor +}""" + +nUpdates = 2000 nStat = 100 moments = [] print("Initializing simulation...\n") -lattice = Lattice(nX = 1024, nY = 1024, tau = 0.8, geometry = box) +lattice = Lattice(nX = 1024, nY = 1024, tau = 0.8, geometry = box, pop_eq_src = pop_eq) print("Starting simulation using %d cells...\n" % lattice.nCells) -- cgit v1.2.3