Visualizing LQLGA circuits#

[1]:
from qlbm.components.lqlga.collision import GenericLQLGACollisionOperator
from qlbm.components.lqlga.initial import LQGLAInitialConditions
from qlbm.components.lqlga.lqlga import LQLGA
from qlbm.components.lqlga.streaming import LQLGAStreamingOperator
from qlbm.lattice.lattices.lqlga_lattice import LQLGALattice
[2]:
lattice = LQLGALattice(
    {
        "lattice": {
            "dim": {"x": 8},
            "velocities": "d1q3",
        },
        "geometry": [{"shape": "cuboid", "x": [3, 5], "boundary": "bounceback"}],
    },
)
[3]:
LQGLAInitialConditions(lattice, [(tuple([2]), (False, False))]).draw("mpl")
[3]:
../../_images/examples_notebooks_lqlga_vis_3_0.png
[4]:
LQLGAStreamingOperator(lattice).draw("mpl")
[4]:
../../_images/examples_notebooks_lqlga_vis_4_0.png
[5]:
GenericLQLGACollisionOperator(lattice).draw("mpl")
[5]:
../../_images/examples_notebooks_lqlga_vis_5_0.png
[6]:
LQLGA(lattice).circuit.draw("mpl")
[6]:
../../_images/examples_notebooks_lqlga_vis_6_0.png
[ ]: