Commit 8e221de7 authored by Martin Bauer's avatar Martin Bauer
Browse files

Merge branch 'fluctuating' into 'master'

Fluctuating LB needs zero mean and unit variance random numbers

See merge request pycodegen/lbmpy!4
parents 1c4dfcf8 4cd1c355
......@@ -63,7 +63,8 @@ def fluctuation_correction(method, rng_generator, variances=SymbolGen("variance"
conserved_moments = {sp.sympify(1), *MOMENT_SYMBOLS}
# A diagonal matrix containing the random fluctuations
random_matrix = sp.Matrix([0 if m in conserved_moments else next(rng_generator) for m in method.moments])
random_matrix = sp.Matrix([0 if m in conserved_moments else (next(rng_generator) - 0.5) * sp.sqrt(12)
for m in method.moments])
random_variance = sp.diag(*[v for v, _ in zip(iter(variances), method.moments)])
# corrections are applied in real space hence we need to convert to real space here
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment