LatticeGeom¶
LatticeGeom 是面向凝聚态模型的带类型周期几何层。它把紧凑的声明式 UnitCell
编译成有限、不可变的 Lattice,同时保留精确对角化、Monte Carlo、张量网络、
Luttinger--Tisza 与 Bloch 空间工作流所需要的整数周期关系。
它负责什么¶
- site 的笛卡尔坐标与原胞基矢;
- 带精确整数原胞位移的有向、带类型 bond;
- 带类型、有方向的 plaquette 与 loop 模板;
- 有限尺寸以及混合的开放/周期边界条件;
- 压缩后的周期像索引与笛卡尔平移;
- 原胞和有限模拟超胞的倒空间几何;
- 可选的可视化与建模期近邻搜索。
它不负责什么¶
LatticeGeom 不保存跃迁振幅、交换常数、在位能、Peierls 相位、flux 数值、算符、
状态或 Hamiltonian 矩阵。type 只对几何进行分类;下游模型再把类型映射为参数。
因此同一个晶格可以被自旋、费米子、玻色子和经典模型复用,而不必接受某种预设的 Hamiltonian 约定。
文档导航¶
最小示例¶
from latticegeom import triangular
lat = triangular((4, 4), pbc=True)
rows = lat.find_bonds(type="a1", crossing=True)
areas = lat.plaquette_signed_areas()
print(lat)
print(rows)
print(areas[:4])
LatticeGeom 目前处于 alpha 阶段,要求 Python 3.10 或更高版本。