繁体   English   中英

在 CGAL 中,可以将超过三个维度的三角剖分转换为多面体吗?

[英]In CGAL, can one convert a triangulation in more than three dimensions to a polytope?

如果这个问题在相关网站上更合适,请告诉我,我很乐意移动它。


我在 ℤ 11中有 165 个顶点,所有这些顶点都与原点的距离为 √8,并且是它们对应的凸包上的极值点。 CGAL能够在我的笔记本电脑上使用不到 1 GB 的 RAM 在 133 分钟内计算出他们的d维三角剖分


Magma非常快地管理了一个类似的 66 顶点情况,而且,对于我的应用程序而言,至关重要的是,它返回一个实际的多面体而不是三角剖分。 因此,我可以将每个d维面视为单个 object 可以由任意数量的顶点限制。

此外,虽然对我的应用程序不太重要,但我也可以使用Graph: TorPol -> GrphUnd来计算有关这些面如何连接的所有拓扑信息,然后AutomorphismGroup: Grph -> GrpPerm, ...来找到相应的自同构组那个细胞结构。

不幸的是,当应用于原始多面体时,Magma 的AutomorphismGroup: TorPol -> GrpMat只返回GL d (ℤ)的子群,而不是完整的自同构群G ,这是我真正希望计算的。 作为一个矩阵群, G ∉ GL 11 (ℤ),而是 ∈ GL 11 (),其中表示代数数 一般来说,我不需要有理数的完整代数闭包 ℚ̅,而只需要一些域扩展。 但是,我可以使用G的任何非平凡强大的表示。

通过两天的计算,Magma 可以管理 165 个顶点的情况,但只能提供有关多面体原始 165 个顶点、10 个面和体积的信息。 但是,尝试枚举d面,对于任何 2 ≤ d < 10,会很快消耗我可以使用的 256 GB RAM。


另一方面,CGAL 的三角剖分只计算d -simplices 的 collections ,所有这些单形都有d + 1 个顶点。 从这样的三角测量中得出相同的面部信息似乎是可能的,但我还没有想到一种简单的方法来编码。


我在 CGAL 中遗漏了一些明显的东西吗? 您对计算多面体的面部信息或找到我的点集的完整自同构群的替代方法有什么建议吗?

您可以在 CGAL 中使用 package组合图,它能够表示 nD 中的多面体。 组合 map 描述了所有细胞以及细胞之间的所有关联和邻接关系。

在这个 package 中,有一个未记录的方法are_cc_isomorphic允许从两个起点测试是否存在同构。 我认为您可以从所有可能的起点对使用此方法来查找所有自同构。

不幸的是,没有从 dD 三角剖分构建组合 map 的方法。 3D 中存在这种方法(参见此文件)。 它可以在 dD 中扩展。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM