周期性边界 - 实施策略

计算科学 边界条件
2021-11-28 08:11:30

我设法实现了具有周期性边界条件的最近邻伊辛模型,这是可行的。我还制作了它的修改版本,其中交互将比最近的邻居更进一步。在这种情况下,周期性边界条件的实现变得更加复杂(矩阵而不是单个变量)。

另一个例子是没有周期性边界实现的仿真软件。我自己实现它们是可能的(当然如果它是开源的)。根据工具的脚本编写可能性,甚至可以将一些执行此操作的脚本组合在一起。

因此,我的问题是: 实现周期性边界条件的一般途径是什么?什么被认为是快速和肮脏的,什么是正确的方法?尝试实施它们的人可能会错过什么/注意什么?(我知道这取决于问题)

是否有创造性的枚举技术或其他智能技巧可以帮助创建周期性边界。为 FEM、FDM 或其他方法进行操作时应遵循哪些一般原则?

1个回答

在 Ising 模型及其推广的特定情况下,假设您枚举自旋,然后创建一个矩阵H在哪里ij第条目Hij表示自旋之间的耦合强度ij. 您显然可以仅使用此矩阵来实现 Ising 系统的动力学。特别是,能量只是产品sTHs在哪里s是包含正数或负数的向量,具体取决于自旋是向上还是向下。

然后一维 Ising 模型对应一个矩阵H其中只有对角线和直接非对角线是非零的。如果您与更远的旋转有交互,那么更远的地方也会有非零条目。对于一维、最近邻、周期性 Ising 模型,您将得到一个矩阵H其中矩阵的对角线、直接的上和下非对角线条目以及矩阵的左下角和右上角元素都是非零的,并且所有其他元素都是零。

使用矩阵和系统之间的这种联系,您可以很容易地概括原始 Ising 模型:只需按照以下方式编写您的算法H,然后选择H这与您关心的情况相对应。