LatticeGeom

English

LatticeGeom 是面向凝聚态模型的带类型周期几何层。它把紧凑的声明式 UnitCell 编译成有限、不可变的 Lattice,同时保留精确对角化、Monte Carlo、张量网络、 Luttinger--Tisza 与 Bloch 空间工作流所需要的整数周期关系。

它负责什么

  • site 的笛卡尔坐标与原胞基矢;
  • 带精确整数原胞位移的有向、带类型 bond;
  • 带类型、有方向的 plaquette 与 loop 模板;
  • 有限尺寸以及混合的开放/周期边界条件;
  • 压缩后的周期像索引与笛卡尔平移;
  • 原胞和有限模拟超胞的倒空间几何;
  • 可选的可视化与建模期近邻搜索。

它不负责什么

LatticeGeom 不保存跃迁振幅、交换常数、在位能、Peierls 相位、flux 数值、算符、 状态或 Hamiltonian 矩阵。type 只对几何进行分类;下游模型再把类型映射为参数。

因此同一个晶格可以被自旋、费米子、玻色子和经典模型复用,而不必接受某种预设的 Hamiltonian 约定。

文档导航

  1. 安装与快速上手
  2. 核心概念
  3. 几何使用指南
  4. 倒空间
  5. 可视化
  6. 一次性近邻搜索
  7. API 参考
  8. 架构与设计边界

最小示例

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 或更高版本。