Commit 46415911 authored by Michael Kuron's avatar Michael Kuron
Browse files

fix force test

parent c3dbce3c
......@@ -174,7 +174,7 @@ class Schiller:
uf = u.dot(force) * sp.eye(len(force))
omega = get_shear_relaxation_rate(lb_method)
omega_bulk = get_bulk_relaxation_rate(lb_method)
G = (u * force.transpose() + force * u.transpose() - uf * sp.Rational(2, 3)) * sp.Rational(1, 2) * \
G = (u * force.transpose() + force * u.transpose() - uf * sp.Rational(2, lb_method.dim)) * sp.Rational(1, 2) * \
(2 + omega) + uf * sp.Rational(1, 3) * (2 + omega_bulk)
result = []
......
......@@ -2,6 +2,7 @@ from pystencils.session import *
from lbmpy.session import *
from lbmpy.macroscopic_value_kernels import macroscopic_values_setter
import lbmpy.forcemodels
from lbmpy.moments import is_bulk_moment
import pytest
from contextlib import ExitStack as does_not_raise
......@@ -103,7 +104,7 @@ def test_stress(stencil):
force_moments = sp.simplify(method.moment_matrix * sp.Matrix(method.force_model(method)))
# The momentum modes should contain the force
assert force_moments[1:dim+1] == F
assert list(force_moments[1:dim+1]) == F
# The stress modes should match eq. 47 from https://doi.org/10.1023/A:1010414013942
u = method.first_order_equilibrium_moment_symbols
......@@ -121,4 +122,7 @@ def test_stress(stencil):
method.moments[dim+1:dim+1+num_stresses]):
ref = moment.subs(subs)
diff = sp.simplify(ref - force_moment)
assert diff == 0 or isinstance(diff, sp.Rational) # difference should be zero or a constant
if is_bulk_moment(moment, dim):
assert diff == 0 or isinstance(diff, sp.Rational) # difference should be zero or a constant
else:
assert diff == 0 # difference should be zero
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