2016-07-11 57 views
0

如何生成由均匀面积/顶点均匀分布的瓦片组成的圆形网格?均匀密度的圆形网格

我需要将拉普拉斯算子应用于我的程序的每一帧。

应用拉普拉斯算子很容易,矩形网格由直角坐标系指定位置,因为对于(i,j)处的图块,我知道其相邻图块的位置是(i-1 ,(i,j-1),(i + 1,j)和(i,j + 1)。

虽然我想使用极坐标,但我不确定是否查询瓦片的邻域会如此简单。

我在OpenGl中工作,可以渲染三角形或点。三角形看起来效率更高(并且具有填充顶点之间区域的良好效果),但似乎更适合笛卡尔坐标。也许我可以渲染点,然后极坐标会正常工作?

另一个问题是瓷砖的密度。我希望在这个网格的表面上传播的波具有相同的分辨率,而不管它们是否在中心。

所以两个主要问题是:生成网格的方式允许容易查询瓦片的邻域,并且保持瓦片的均匀密度分布。

+5

什么是“圆形网格”? –

回答

-1

我想你是在问一些不可能的事情。

但是,this是一种技术,用于将规则的正方形2D网格重新映射成具有相对较低变形量的圆形形状。这可能足以解决您的问题。

+0

非常有趣的链接!谢谢。 – Yaque

-1

您可能想看看this paper,它已写入示例球体,但您可能可以将其适应圆形。

+0

精彩..非常感谢。 – Yaque

-1

一个选项可以使用具有恒定角步长但径向步长不同的极坐标网格,以便所有单元具有相同的面积,即(R + dR)²-R²= Cst,给出dR为R.

您可能希望通过每隔一段时间改变单元的数量(通过加倍)来降低各向异性(某些单元变得非常细长)。这将在网格中引入奇点,即具有五个顶点而不是四个的单元。

查看https://mathematica.stackexchange.com/questions/78806/ndsolve-and-fem-support-for-non-conformal-meshes-of-a-disk-with-kernel-crash的数字

+0

谢谢你的伟大的链接! – Yaque