Networking 如何用周期、螺旋等边界条件可视化晶格?

Networking 如何用周期、螺旋等边界条件可视化晶格?,networking,visualization,Networking,Visualization,我正在尝试编写一个特殊的六边形晶格生成器,它有几种边界条件,如螺旋BC、周期BC,我发现很难验证它是否正确工作。我试着用二维网络图(使用networkx)来绘制它们,正如我所预料的那样,结果是一团糟。现在我必须事先计算出邻接矩阵,并用计算出的邻接矩阵验证生成的网络。对于规则晶格来说,这很好,但是如果我在晶格上引入一些随机扰动,这种方法非常烦人。如果我能看到正确绘制的网络,那就容易多了 是否有可能正确显示具有各种边界条件的晶格?还是在其他软件工具中?有没有一种方便的方法来测试这种网络生成器 谢谢。

我正在尝试编写一个特殊的六边形晶格生成器,它有几种边界条件,如螺旋BC、周期BC,我发现很难验证它是否正确工作。我试着用二维网络图(使用networkx)来绘制它们,正如我所预料的那样,结果是一团糟。现在我必须事先计算出邻接矩阵,并用计算出的邻接矩阵验证生成的网络。对于规则晶格来说,这很好,但是如果我在晶格上引入一些随机扰动,这种方法非常烦人。如果我能看到正确绘制的网络,那就容易多了

是否有可能正确显示具有各种边界条件的晶格?还是在其他软件工具中?有没有一种方便的方法来测试这种网络生成器


谢谢。

假设你有每个点的3d坐标,一个相当简单的可视化工具是gnuplot。Gnuplot将为每个由换行符分隔的块绘制一条单独的线,因此

0  1  0
0  1  1

0  1  0
0  2  0
如果发出命令,将绘制两条线,从(0,1,0)到两点(0,1,1)和(0,2,0)

splot 'somefile' with lines
唯一的问题是,如果沿着某条直线有3个点,并且你画了一条线AC而不是AB和BC,它将不清晰


但是,您可以通过拖动旋转3d绘图,这将有助于您的检查。

有趣的解决方案。但在这种情况下,必须计算出网络的三维坐标。例如,如果我们有一个具有周期性边界条件的正方形晶格,我们将必须计算网络中的节点如何在环面上展开。