Exemplo n.º 1
0
    def test_notation_i(self):
        clip_z_dimension = True

        m_seed = [0, 1, 2]
        rmoments_order = get_m_order_as_in_r(m_seed, m_seed, m_seed)

        e_seed = [0, 1, -1]
        ex, ey, ez, e_new = get_e_as_in_r(e_seed, e_seed, e_seed)

        if clip_z_dimension:
            rmoments_order = rmoments_order[0:9]
            q, d = rmoments_order.shape
            d = 2
            ex = ex[0:9]
            ey = ey[0:9]
            ez = ez[0:9]
            e_D2Q9 = e_new[0:9, :]
        else:
            q, d = rmoments_order.shape

        expected_e = Matrix([[0, 0, 0], [1, 0, 0], [-1, 0, 0], [0, 1, 0],
                             [1, 1, 0], [-1, 1, 0], [0, -1, 0], [1, -1, 0],
                             [-1, -1, 0]])

        assert e_D2Q9 == expected_e

        rev_i = get_reverse_indices(e_D2Q9)
        expected_rev_i = np.array([0, 2, 1, 6, 8, 7, 3, 5, 4])

        np.testing.assert_array_equal(rev_i, expected_rev_i)
import numpy as np
import pandas as pd
from SymbolicCollisions.core.cm_symbols import moments_dict, e_D3Q27, ex_D3Q27
from SymbolicCollisions.core.MatrixGenerator import get_m_order_as_in_r, get_e_as_in_r

e_seed = [0, 1, -1]

grid = get_m_order_as_in_r(e_seed, e_seed, e_seed)
moments_order = grid.to_numpy()
print(f"order of moments: \n {moments_order}")
ex_D3Q27new, ey_D3Q27new, ez_D3Q27new, e_D3Q27new = get_e_as_in_r(
    e_seed, e_seed, e_seed)
print(f"lattice velocities - e: \n {e_D3Q27new}")
print(e_D3Q27)

print(ex_D3Q27)
print(ex_D3Q27new)

print()
# > U
#    Var1 Var2 Var3
# 1     0    0    0
# 2     1    0    0
# 3    -1    0    0
# 4     0    1    0
# 5     1    1    0
# 6    -1    1    0
# 7     0   -1    0
# 8     1   -1    0
# 9    -1   -1    0
# 10    0    0    1
Exemplo n.º 3
0
print('\n//Force -> Force_cm - from continous definition: \n'
      'k_mn = integrate(fun, (x, -oo, oo), (y, -oo, oo)) \n'
      'where fun = forceM(rho,u,x,y) *(x-ux)^m *(y-uy)^n *(z-uz)^o ')
F_cm = get_mom_vector_from_continuous_def(
    ccmt.get_force_Guo,
    continuous_transformation=ccmt.get_cm,
    moments_order=moments_dict[lattice])
print_as_vector(F_cm, 'F_cm')

print('\n//Force -> Force_cm - from continous definition: \n'
      'k_mn = integrate(fun, (x, -oo, oo), (y, -oo, oo)) \n'
      'where fun = forceM(rho,u,x,y) *(x-ux)^m *(y-uy)^n *(z-uz)^o ')

lattice = 'D3Q27'
F_cm = get_mom_vector_from_continuous_def(
    ccmt.get_force_He_MB,
    continuous_transformation=ccmt.get_cm,
    moments_order=moments_dict[lattice])
print_as_vector(F_cm, 'F_cm')

m_seed = [0, 1, 2]
rmoments_order = get_m_order_as_in_r(m_seed, m_seed, m_seed)
F_cm = get_mom_vector_from_continuous_def(
    ccmt.get_force_He_MB,
    continuous_transformation=ccmt.get_cm,
    moments_order=rmoments_order)
print_as_vector(F_cm, 'F_cmr', output_order_of_moments=rmoments_order)

print(f'\n\n Done in {time.process_time() - start} [s].')