diff options
Fix SSS population padding
D2Q9 and D3Q27 worked by coincidence, should now work for all lattices.
-rw-r--r-- | lid_driven_cavity/cpp/config.py | 2 | ||||
-rw-r--r-- | lid_driven_cavity/cpp/ldc.cpp.SSS.mako | 2 | ||||
-rw-r--r-- | shell.nix | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/lid_driven_cavity/cpp/config.py b/lid_driven_cavity/cpp/config.py index 0ea626b..63386f6 100644 --- a/lid_driven_cavity/cpp/config.py +++ b/lid_driven_cavity/cpp/config.py @@ -8,7 +8,7 @@ precision = 'double' streaming = 'SSS' ## 3D LDC -#descriptor = D3Q27 +#descriptor = D3Q19 #geometry = Geometry(64, 64, 64) #tau = 0.6 #precision = 'double' diff --git a/lid_driven_cavity/cpp/ldc.cpp.SSS.mako b/lid_driven_cavity/cpp/ldc.cpp.SSS.mako index ed2f938..eb041e5 100644 --- a/lid_driven_cavity/cpp/ldc.cpp.SSS.mako +++ b/lid_driven_cavity/cpp/ldc.cpp.SSS.mako @@ -98,7 +98,7 @@ padding = (max(geometry.size_x,geometry.size_y,geometry.size_z)+1)**(descriptor. ${float_type}* f[${descriptor.q}]; % for i, c_i in enumerate(descriptor.c): - f[${i}] = f_aa.get() + ${layout.pop_offset(i) + padding}; + f[${i}] = f_aa.get() + ${padding + layout.pop_offset(i, 2*padding)}; % endfor std::vector<std::size_t> ghost; @@ -27,7 +27,7 @@ pkgs.stdenvNoCC.mkDerivation rec { src = builtins.fetchGit { url = "https://code.kummerlaender.eu/boltzgen/"; - rev = "27ce855378a80dff680c2989800af1f4e69975fe"; + rev = "d136bb30bc8a9393372ec905aea500a0b61000e3"; }; propagatedBuildInputs = with pkgs.python37Packages; [ |