Graph 顶点指曲面的图形的体积标识

Graph 顶点指曲面的图形的体积标识,graph,theory,volume,identification,Graph,Theory,Volume,Identification,这是过去几天一直困扰我的一个问题——我的同事认为这是一个经过充分研究的问题,但我在网上找不到任何论文(也许我使用的关键词不正确)。 给定一个图,其中每个顶点对应于一个曲面,如果对应曲面在一条直线上相交,则两个顶点之间存在一条边,我将如何识别组合形成闭合体积的曲面 例如,立方体(曲面编号为1到6)的邻接列表可能如下所示: 1 -> [4,2,5,6] 2 -> [1,3,5,6] 3 -> [2,4,5,6] 4 -> [3,1,5,6] 5 -> [1,2,3,4]

这是过去几天一直困扰我的一个问题——我的同事认为这是一个经过充分研究的问题,但我在网上找不到任何论文(也许我使用的关键词不正确)。 给定一个图,其中每个顶点对应于一个曲面,如果对应曲面在一条直线上相交,则两个顶点之间存在一条边,我将如何识别组合形成闭合体积的曲面

例如,立方体(曲面编号为1到6)的邻接列表可能如下所示:

1 -> [4,2,5,6]
2 -> [1,3,5,6]
3 -> [2,4,5,6]
4 -> [3,1,5,6]
5 -> [1,2,3,4]
6 -> [1,2,3,4]
除此信息外,我还知道某些曲面是否具有自由边(即这些边不与任何其他曲面共享),这意味着我可以立即排除这些曲面,因为具有自由边的曲面不能是腔边界的一部分。此外,如果两个表面相交,它们将在边界处干净地相交-无掠击等

我希望能够做的不仅仅是识别空腔的存在,还可以输出曲面和它们包含的空腔之间的映射。例如,在两个立方体在边缘相遇的情况下(声誉不足以发布图像,因此这里是一个侧视图):

…假设曲面1-6构成立方体1,曲面7-12构成立方体2,则这将是所需的输出:

Volume 1 -> [1,2,3,4,5,6]
Volume 2 -> [7,8,9,10,11,12]
请注意,在这种情况下,一些曲面在图中有六个邻居,而其他曲面只有四个邻居


任何帮助都将不胜感激

是的,这个区域被称为计算拓扑。它的中心对象是称为同源群的循环代数群(当循环由1维边形成时为H1,当我们谈论2维面时为H2)

我们可以通过形成一个同源群矩阵来分析这类群。对于某些查询,需要H1和H2矩阵

当矩阵可以重新排列成独立的块时,这意味着形状不相互作用。当一个单块同源矩阵有N个等级时,表示形状有N个空腔(孔)。简单的形状,如立方体有0个孔,圆环有1个,等等

< >可以找到C++和MATLAB的开源软件包。p>
希望它能提供一些有用的关键字

看起来像是家庭作业或面试问题。你到达了多远?有什么代码,算法吗?我有多远?我唯一能弄明白的是,应该丢弃具有自由边的曲面。我简单地考虑了一下循环标识——但反例却很容易找到。至于这是一个家庭作业或面试问题,我不在学校,目前也没有找工作,所以不,这两者都不是。迈克尔,非常感谢!我一定会查这个的!不客气。我知道这个题目很粗糙;您可以了解如何为简单图构建同调矩阵(本质上是关联矩阵)。这个矩形矩阵的秩说明了很多关于图的结构。类似的矩阵可以建立在面部边缘关联度等方面。它们的排名将讲述关于孔洞的故事。(顺便说一句,如果你喜欢这个答案,你可以将其标记为“接受”和/或“投票表决”;不胜感激)
Volume 1 -> [1,2,3,4,5,6]
Volume 2 -> [7,8,9,10,11,12]