分形,噪声状态变量

2021年1月5日

今天我们将您介绍comsol多物理学®(的的工具工具工具工具工具的的变量。你将学习学习分形分形分形分形分形分形分形分形分形分形分形分形分形分形分形分形分形它们它们它们它们它们它们它们它们它们它们它们它们它们它们它们它们它们例如例如著名著名著名著名著名著名著名著名著名著名著名的的的的的的芒德布罗芒德布罗芒德布罗集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合集合个强大强大强大强大强大强大强大强大强大强大强大强大的的的的的的的的但是,这篇提供一种启发性,并且有趣的方式方式,可以方式,可以可以可以可以更更多多地地地了解了解

什么是分形?

广义讲,分形指物体在尺度上表现某种形式的相似性相似性。。这这这听起来起来起来起来可能抽象抽象抽象抽象抽象,但是很很抽象很很很很很很很很但是但是遇到过它们。

例如,蕨类植物出模式。中示每个个蕨叶由较小小的分支分支分支或细分羽状叶针戴()组成,它们沿着,并并出主叶的模式。单个羽状叶又由细分细分细分细分细分细齿)组成,在,在植物,细齿可细更小的。。

真实的绿色蕨类植物的照片。
计算机生成的Barnsley Fern离开的图像,部分重复结构放大并突出显示。

Barnsley蕨蕨蕨蕨蕨蕨蕨蕨

数学对应体发现受中发现的图案,即,即,即巴恩斯利蕨。的数学表示在具有具有计算机上上生成生成,这上上上上上上上迭代迭代迭代迭代功能功能功能功能只只需要需要需要几几几几行行代码代码就就就能能能能。生成类似于形状组成,这些形状主叶片实际上实际上,Barnsley蕨蕨会无限细分为较较小形状形状形状形状

分形除了的外观外,还,例如,例如,例如,例如分形单极天线和材料另个应用图像图像,例如生成图像图像图像游戏中中模拟模拟自然自然自然物体物体物体逼真的景观。

芒德布罗集合

也许最的一个是是芒德布罗集合简而言之简而言之简而言之一个的的的组复数如果如果将将复数插入插入插入到个迭代函数迭代函数中中中中中中中中中中中一部分检查个是否部分部分部分部分部分部分部分

z_ \ textrm {n + 1} = z_ \ textrm {n}^2 + c \ qquad \ textrm {其中} \ qquad z_0 = 0

例如,我们我们尝试数字数字C = 1+0.25 i代入。第一迭代产生z_1 = 1+0.25 i||z_ \ textrm {n} || = 1.03),第二第二产生z_2 = 1.94+0.75 i||z_ \ textrm {n} || = 2.08),第三第三产生z_3 = 4.19+3.16 i||z_ \ textrm {n} || = 5.25),等等。种下下,绝对||z_ \ textrm {n} ||似乎发生发散,所以,,,1+0.25 i不属于芒德布罗。

在comsol多物理学®中计算芒德布罗集合

实际上,在comsol Multiphysics中中计算为为,我们为,我们创建一一个个二维几,可以何,可以可以将将(x,y)在这个上代表一复数复数c = x+i y,我们我们点迭代方程中必须跟踪之前的结果z_ \ textrm {n},来来下个数z_ \ textrm {n+1}

对于从的步骤中数据的情况,状态变量特征是一方便的工具在在状态变量特征中,我们可以需要多变量在芒德布罗集合时时,我们时,我们Zn光环

状态变量的屏幕截图具有“状态组件”部分扩展的设置窗口。
定义状态变量。

在任何步骤以及中任何给定点,第一定点定点定点状态状态变量跟踪初始值列中对Zn进行初始化。该更新表达式是我们,通过通过函数我们结果结果Zn的平方从迭代添加到。。还添加了另一个为为为为为为为为为为为的的的的的的的的的的状态状态状态状态状态变量,并Zn的绝对值大于2。

可以,,z_ \ textrm {n}最终,如果,如果||z_ \ textrm {n} ||> 2在某些。如果我们这些这些两次求解并绘制结果结果,我们图图,我们我们图图图图

25次迭代次迭代次迭代的的的的光环光环“光环”。

黑灰色形状复数,是是集合变量变量Zn)一一次迭代,我们次中实际作为集合部分的的。不同不同灰色阴影阴影表示值值Zn对于,迭代函数始值,迭代函数单值,而值,而会个在在不同不同不同的的值值之间之间,在跳转,在,它动画,它中中字段光环,它指示的速度集合的边界边界,在边界边界边界

曼德布罗特套件接近边界的视图,螺旋结构的300迭代以较浅,较浅的颜色显示,并以紫色包围。
螺旋结构位置位置,300次迭代次迭代。图像的的宽度为为为为为为为为为为为为为为为为为为为为为为为。。。。。得出得出得出位置位置位置位置位置位置

分形噪声

我们了和状态接下来接下来接下来接下来接下来,我们我们分形分形在在在计算机计算机生成图像图像图像图像领域领域领域中中更实际实际的的的应用地地说。这项技术实际上已在 COMSOL Multiphysics 中用于实现各种材料的逼真可视化,这将在后面讨论。分形噪声的另一个常见应用是在计算机游戏中以程序的方式生成看起来自然的地形。

我们噪声一景观。这里这里这里这里这里这里这里这里噪声理解理解为随机值机值。。换换句句句话话话说说说说说说机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值机值数。被为给定位置处的地形。使用使用使用使用使用使用使用使用使用使用使用随机函数,我们我们创建((详可参看篇:从从分布函数中抽取抽取随机数数xy在在在在在,这些这些将随机且独立地一一一个个个坐标坐标坐标跳到跳到下一一。。显然显然显然显然显然显然显然显然显然显然显然显然这的方法。

具有均匀分布的白噪声的灰度可视化。
白噪声分布值在最小值和大之间之间跳跃跳跃。

佩林噪声

我们正在一随机值的的噪声函数噪声函数噪声函数噪声函数噪声函数噪声函数函数显得显得显得显得显得显得太随机太随机太随机太随机而而而而而应显得自然一些一些。。相相邻点邻点邻点邻点之间之间佩林噪声它噪声形式形式,它它允许坐标伪随机值机值机值机值机值机值机值机值机值机值伪随伪随伪随伪随伪随伪随从一一一个个个点点到相邻点的的过渡过渡是是平滑平滑的这种种种发现的模式。

三个并排图像显示了如何生成2D Perlin噪声,左侧的网格定义,中心的绝对值以及右侧的插值噪声。
(a)(a)网格网格网格。红色红色随机生成的梯度矢量矢量矢量((((矢量梯度梯度梯度缩放缩放以更更地显示显示显示显示显示显示显示显示显示显示。。。。。蓝色箭头从从周围左下梯度矢量第一点积的绝对值。。介介于于于于黑色黑色黑色黑色黑色和和和和和和和和和白色白色白色白色白色白色白色之间之间之间之间的的值((((((内内内内。

将上面的几步骤步步步步步步步步步步步步步步步平面平面划分划分为单元单元正方形正方形正方形网格点网格点网格点网格点。。。。在在在每每处处处处处处处处处处处处处处处处(((())。。。个关联四四周围的(x,y)只是伪随机的,因为因为同计算时,它们噪声时时利用梯度梯度,我们矢量,我们我们(x,y)。对于的点,计算计算的个个,以及,以及点积点积点积(x,y)((箭头)。

d_ \ textrm {i} = \ mathbf g_ \ textrm {i} \ cdot(\ mathbf x - \ mathbf x_ \ textrm {gi})\ qquad \ qquad \ textrm {其中}

四个解释梯度对所选噪声水平的影响。矢量\ Mathbf g_ \ textrm {i}以及位置矢量\ Mathbf X - \ Mathbf X_ \ Textrm {Gi}的点积,会最值,当当当矢量同个方向时;;而当两个矢量相互垂直时会达到达到最最小生成生成的的的的值并。涉及精巧选择插值插值插值,可可平滑步长函数我们在在自己自己的的域域域上获得获得平滑过渡过渡。。。有关有关有关有关有关如何如何如何如何计算计算参考文献1

分形噪声

我们生成的的过渡过渡过渡过渡过渡过渡过渡过渡过渡看起来不大多数现实世界世界世界中的的的的的地形地形地形地形那样那样。。中中中中中中中中中中较小。该怎么模拟呢个解决方案是叠加不同噪声八度,,这就概念基本上基本上基本上基本上基本上基本上基本上基本上基本上基本上更高的频率频率产生产生产生更的噪声噪声噪声噪声噪声,换换噪声噪声噪声噪声噪声说说说说说说说说说倍增加。降低高频的幅度,并的幅度幅度幅度添加到到基本基本基本噪声中中中中中上,我们噪音(),而是该,然后函数函数函数与后的。。

h(x,y)= \ sum_ {j = 0}^n \ frac {\ texttt {noings}(2^j x,\ 2^j y)} {\ texttt {scale}(j)}

如果我们将H解释为景观高度,第一第一迭(((j = 0)得出得出,特征山脉例如例如)的的的的的平滑近似似值;;第二迭代可能可能来自来自更当地当地丘陵丘陵和和洼地第三第三迭代迭代迭代迭代迭代迭代迭代可能

四行的视图:顶部的一维分形噪声和下面的珀林噪声的前三个频率。
((()。。以下是前频率频率,这些,这些加加在一起

comsol多物理学中中中中中不同不同不同不同频率的中此此时时,再次时时时时时时此此,再次再次地时时时操作此此此此此此此此此此此此此操作操作操作时时操作状态状态状态状态状态状态变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量变量其中,随着每的的,地形出现,地形多,该出现出现

我们模拟中使用的几何形状,例如来创建随机表面形状的,以及,以及从图像或文件创建任意几何形状的方法。

通过使用噪声材料外观

你是否我们可以在绘图中添加噪声来改善改善改善改善改善改善改善改善改善改善改善改善改善改善改善改善来来来来中中中中中中中中的材质材质外观外观外观????从从从从从从从从从从从可视化选项。某些类型类型,例如生锈钢皮革水水,会,会单纯噪声创建更纹理单纯噪声与噪声相似相似相似相似,ken perlin开发开发。你可以自己调整噪声参数参数以以获得获得获得。

Comsol多物理模型构建器具有图形窗口中浅水方程模型的可视化。
海啸冲上谷海滩的模型模型中利用噪声可视化水。

具有生锈的钢表面的扳手模型通过单纯形噪声可视化。
使用单纯形噪声可视化具有表面的的的扳手的和应变模型。

自己尝试

想不自己文中讨论的集合或佩林噪声?单击下面下面的按钮按钮按钮按钮mph文件,就了了了了了了

参考文献

  1. K. Perlin,“改善噪音”,纽约大学,2002年。https://mrl.cs.nyu.edu/~perlin/paper445.pdf

扩展阅读

阅读下面文章,了解了解分形噪声状态变量更更


评论(0)

留言
登录|注册
正在... ...
浏览comsol博客