第二章 数学知识

2.1 简介

在生活中你可以看到许多不同种类的水并希望它们足够真实。自然界中不同类型的水有几个共同的特性,但有些特性截然不同。水的主要特性是:

2.2 水面的光学效果

2.2.1 反射

根据维基百科的定义:“反射是指波在两个不同介质之间发生的方向改变。常见的例子包括光线,声音和波浪的反射。”从某种程度上说水面就像一面镜子。光会在水面发生反射。物理规律是:反射角等于入射角,我们根据表面的法线测量这两个角度,即αβ

图2-1
图2-1:反射定律,入射角α等于反射角β

只考虑水面的反射很容易计算水面像素的颜色。将相机的位置关于水表面镜像:只需确定通过水面的每个像素的物体颜色就可以了,原理如图2-2所示:

图2-2
图2-2:从水面获取反射的颜色

如果相机在A点,水面的颜色就是物体通过B点的交点的颜色。B点离开水面的距离与A点相同,这两个距离用图中的字母“k”表示。

2.2.2 折射

电磁波的速度在不同媒质中是不同的。光从一个介质通过另一个介质时速度会发生改变,这时会发生折射现象。根据斯涅耳定律(得名于荷兰数学家Willebrord Snellius),入射角和折射角之间的关系是:它们的比值是一个常数,取决于介质,更确切地说两者的正弦之比等于两介质中的波速之比:

sinθ1/sinθ2v1/v2n2/n1

n1sinθ1n2sinθ2

这两个角度是相对于界面法线的说的。根据这个规律,入射光会发生偏折,偏折程度由两介质的相对折射率决定。如图2-3所示:

图2-3
图2-3:斯涅耳定律,在此图中,第二个介质中的光速小(V2<V1),所以在第二个介质中光线将更靠近法线方向

空气中的折射率为1,而水中为4/3。

2.2.3 三维空间

前面讨论的规律和例子只在2维平面中,但要描述现实世界,一切都需要三维。 [ MFGD ]提出了下列方程。s为入射光(向量),t是经过变换的光线,n为表面法线。转换的向量t有两个分量:一个平行于法线,另一个垂直于法线,可写成下列形式:

t = -n cosθ2 + msinθ2

要计算两个系数,我们需要用到这样一个关系:即只有沿表面的角会发生变化而不是整个方向都变化。m可以定义如下:

m = perpns / sinθ1 = s - (s) n / sinθ1

由前面的方程[ MFGD ]结果如下:

\[{\bf{t}} = - {\bf{n}}\left( {\sqrt {1 - \frac{{\eta _1^2}}{{\eta _2^2}}(1 - {{({\bf{n}} \cdot {\bf{s}})}^2})} + \frac{{{\eta _1}}}{{{\eta _2}}}({\bf{n}} \cdot {\bf{s}})} \right) - {\bf{s}}\frac{{{\eta _1}}}{{{\eta _2}}}\]

该方程中有可能包含负的平方根,这意味着方程的每个系数并不确定,物理原因如下描述。

2.3.4 临界角

我要提及的一个重要现象与折射有关。如果光线从光密媒质射向光疏媒质,折射角会变大,当入射角增至某一数值时,折射角等于90度,这时,折射光线消失,这种现象称为全反射,对应的这个入射角叫做全反射临界角,水射向空气的临界角约为50度。见图2-4:

图2-4
图2-4临界角

上面的图片来着维基百科和和

http://www.glenbrook.k12.il.us。

还有一个的Flash游戏可以理解反射和折射,在这个网址:

http://www.ps.missouri.edu/rickspage/refract/refraction.html

译者:以上知识可参见《新概念物理-光学》6至14页

2.2.5 多次反射和折射

光线在水面会发生反射和折射,但一定程度上光线会在表面再次反射和折射,图2-5说明了这种情况:

图2-5
图2-5多次反射和折射

图像来自于[ TEoNIaRT ]。

2.2.6 反射和折射的比例:菲涅尔效果

译者注:对水面来说,当观察者和水面的角度越小时,反射效果越明显,角度越大时,折射效果越明显,称为菲涅尔效果。

本章的前两节介绍了反射和折射,它们在界面上是同时发生的,如图2-6所示:

图2-6
图2-6在界面同时发生反射和折射
动画显示

但是,如何获取准确的反射和折射的比例?Augustin-Jean Fresnel 在19世纪初得出了规律。他的方程用不同的强度定义了反射角和边界上的透光率,方程的导出过程已经超出本教程的范围。波有两个偏振分量:一个平行一个垂直。Ei是入射波振幅,ErEt 是反射波的振幅和透射波的振幅。

r = Er/Ei

t = Et/Ei

垂直部分的方程如下:

r = (nicosθintcosθt)/(nicosθi + ntcosθt)

t =2nicosθi)/(nicosθi+ ntcosθt)

下一个方程显示的平行部分:

r = (nicosθintcosθi)/(nicosθt + ntcosθi)

t = 2nicosθi/(nicosθt + ntcosθi)

更优雅的版本有:

perpendicular r = −(sinθi−sinθt)/(sinθi+sinθt)

parallel r =(tanθi−tanθt)/(tanθi+tanθt)

如果光的偏振只有垂直部分,我们称之为S 极化。同样地,如果只有平行部分,称之为P极化。图2-7展示了取决于角度的系数在同时存在S 极化和P极化下的情况:

图2-7
图2-7:由图可见,若从光密媒质射向光疏媒质(右图所示),反射系数为1大于临界角,这种现象叫做全反射。

http://en.wikipedia.org/wiki/Fresnel_term

http://hyperphysics.phy-astr.gsu.edu/Hbase/phyopt/freseq.html

http://www.inyourfacefotos.com/fresnel.htm

译者:以上知识可参见《新概念物理-光学》276至288页

2.3水的移动

2.3.1 波

描述海浪是一个巨大的挑战。它有几个不同的部分并组合在一起形成一个非常复杂的系统。有两种不同类型的机械波:横波和和纵波。横波的中质点的振动方向与波的传播方向垂直,如图2-8所示:

图2-8
图2-8:横波

而纵波中质点的振动方向与波的传播方向在一直线,如图2-9所示:

图2-9
图2-9:纵波

例如,声波在空气中的传播是纵波而弹吉他弦是横波。对于两种波来说,振幅是偏离平衡位置的最大位移,而波长是运动情况总相同的两质点间的最短距离。频率表示一秒内质点的振动次数,从以上数据很容易计算波速:波速等于频率乘以波长。

风和重力的共同作用构成了海浪沿表面的传播。这个复合系统既有横波又有纵波,使水粒子沿着一个圆形路径运动。越接近表面的粒子运动半径越大。这种波称为表面波,可用图2-10表示:

图2-10
图2-10表面波

A点水较深,是圆形路径,B点水较浅,运动路径随着深度的增大变成椭圆并越来越扁。箭头#1表示波的传播方向。#2表示波峰,#3表示波谷。下面的动画显示了这个过程:

水波动画
图像来自于Kettering University.的网页

以下公式描述了表面波的散射关系(来自scienceworld homepage):

\[{\omega ^2} = gk + \frac{{\gamma {k^3}}}{\rho }\]

ω是角频率,g是重力加速度,k是波数,γ是表面张力,ρ是密度。可用下式求ω

\[\omega = \sqrt {gk + \frac{{\gamma {k^3}}}{\rho }} \]

2.3.2 复合系统-不同波的合成

先前讨论的理论足以描述海浪的运动,但我们需要使用更多具有不同振幅和波长的波获得更为真实的效果,如图2-11:

图2-11
图2-11:不同振幅和波长的波

不同的波组合在一起形成如图2-12所示的波:

图2-12
图2-12:波的叠加

在三维世界中波的不同组成部分不仅有不同的振幅和波长,还有不同的传播方向。占主导地位的方向是最大幅度和最长周期的那个波。图2-13展示了三个组成部分:

图2-13
图2-13:三维波

三者的组合可以近似的模拟真实的海表,如图2-14:

图2-14
图2-14:三维波的叠加图片

图片来自于 http://www.glenbrook.k12.il.us/gbssci/phys/Class/waves/u10l1c.html

http://www.carbontrust.co.uk/technology/technologyaccelerator/ME_guide2.htm

有用的链接:

http://oceanworld.tamu.edu/resources/ocng_textbook/chapter16/chapter16_01.htm

2.3.3 Gerstner波

捷克科学家Jozef Gerstner在1802年第一次提出了精确描述水波任意幅度的解决方法。他的模型还介绍了表面波的摆线运动。在这个模型中,水深比波长大。这个曲线也称为摆线。偏移量是由下列方程决定的:

x = X0-(k/k0) * A sin( k * X0 - ωt)

y = A cos( k * X0 - ωt)

公式中X0是不受干扰的表面上的点,A是振幅,k是波矢,k0是其大小。如果振幅很小,Gerstner波接近正弦,但如果振幅很大波会破碎,见图2-15:

图2-15
图2-15:不同振幅的Gerstner波

这些性质使Gerstner波可以用来描述不同情况下的波。更多细节可参见 [IAoOW] 或[GW]。

2.3.3 纳维-斯托克斯(Navier-Stokes)方程

Navier - Stokes方程(NSE)是非线性偏微分方程,用来描述的不可压缩的液体的运动。在NSE中有三个力:

公式中的时间t依赖于混沌,流体的随机行为称为动荡,Navier - Stokes方程用来描述这个现象,但现在还没有解决这个方程的求解。谁能作出初步的数学理论将有助于理解这种现象,奖金是100万美元。Navier - Stokes方程如下:

纳维-斯托克斯(Navier-Stokes)方程

uº(x)给定,C∞divergence-free矢量场Rn上,fi(x, t)是给定的分量,外加力(如重力),ν是粘滞系数,

\[\Delta = \sum\limits_{i = 1}^n {\frac{{{\partial ^2}}}{{\partial x_i^2}}} \]

是拉普拉斯算符。欲了解详情,请参阅[ NSEP ]或[ GPUGEMS ]。

译者:这个公式十分眼熟,原来在几个月前看的一本名叫《千年难题》书中见过。此书描述了七大“悬赏一百万美元的难题”,从简到难分别是:黎曼假设,杨-米尔斯理论和质量缺口假设,P对NP问题,纳维-斯托克斯方程,庞加莱猜想,戴尔猜想,霍奇猜想。纳维-斯托克斯方程排第四,纳维是法国当时最著名的工程师之一,他的名字被刻在了埃菲尔铁塔上。纳维改进了欧拉的方程,使之能适用于有一定黏性的流体这一更为实际的情况。纳维的数学推理是有缺陷的。但由于运气好(或者说由于工程师的过人直觉),他最后得出的方程是正确的。几年之后,爱尔兰数学家斯托克斯(在月亮和火星上都有以他名字命名的环形山)作出了正确的推导。但没有人能够找出一个解纳维-斯托克斯方程的公式。确切地说,没有人能够在原则上证明这个方程是否有解!(当然,每当一种真实的流体作了一次流动,大自然就“解”了一次这个方程)

千年难题

2.4各种水现象

2.4.1镜面反射

具有一个平面的材料(如:皮革,玻璃和水)有一个有趣的现象,这点我前面没有提及。有几种不同的反射模式,其中一些模式使图像更加逼真,同时也有助于改近小的细节。其中一个是镜面反射。像沙子之类的材料有不规则,不平坦的表面,这使得入射光在每一个方向都会反射。图2-16表示了这个现象:

图2-16
图2-16:反射光的方向

但是,如果材料具有光滑表面,入射光将会平行反射。由于这个性质,如果入射光从特定角度入射的话,会在皮革、不同的金属或水之类的物体上形成光泽和亮点。Phong光照模型是三维图形中最常用的方式。Phong Bui Tong在1975年提出了这个模型至今仍使用得很普遍。根据这个模型,点的亮度有三个组成部分:一个环境光,一个漫反射光和一个镜面反射光。如果观察者远离反射光的方向,那么镜面反射将变弱。图2-17显示了相关的矢量:

图2-17
图2-17:向量L指向光源,V指向观察者,N是表面法线,R是反射方向,而H为V和L的角平分线。

在Phong模型中,反射强度近似为角度余弦的幂,原始公式是:

kspec cosnβ

其中β是RV的夹角,kspec是镜面反射系数。指数n可以影响锐度的大小,指数越大反射越强。两个向量的点乘等于它们之间的角度的余弦,所以公式可以写成:

kspec (VN)n

这里的“ • ”表示点乘。使用漫反射光照模型Phong光照模型如下表示(I是指强度):

I = kambient * Iambient + (Ip /(d)) [kdiffuse * (NL) + kspecular * (VR)n]

k是环境、漫反射、镜面反射系数,“ • ”指点乘,即点的光强等于三者的和。

http://www.dgp.toronto.edu/~karan/courses/csc418/fall_2002/notes/illum_local.html

http://www.mini.pw.edu.pl/~kotowski/Grafika/IlluminationModel/Index.html

2.4.2 刻蚀(Caustics)

水面还有刻蚀:光束从弯曲的表面反射或折射,因此只聚焦在受光面上的某些区域,于是就产生了刻蚀现象,如图2-18所示:

图2-18
图2-18:刻蚀

刻蚀的原理如图2-19所示

图2-19
图2-19:刻蚀是光线聚焦的明亮区域

2.4.3 Godrays

引起刻蚀的相同物理效果也会形成Godrays(在[ DWAaR ]中提及)。不断变化的水面使光线不断聚焦和失焦。水中漂浮的小颗粒可以进入这些焦点中,并在短期内可见。由这些效果产生的光斑不断变化被称为Godrays,如果您从水下看光源就可以看到这种现象。图2-20是一个渲染的例子:

图2-20
图2-20:Godrays – 这张图片是由Typhoon 引擎创建的[TYPHOON]

2.4.4 白浪和泡沫(Whitecaps and foam))

波浪的破碎会形成泡沫,堆积的部分叫做白浪。根据[ RNW ],白浪取决于水的温度和水面上空气的化学性质。他们使用一个经验公式来近似覆盖泡沫的水的光学特性:

f = 1.59 * 10-5 U2.55 exp[0.086 * (Tw - Ta )]

其中f是小数部分,U是风速,TWTa是水和空气摄氏温度。

2.4.5 开尔文水楔(The Kelvin Wedge)

在开放的水域,移动的船只会产生波浪。这些波浪不能视为纵波。这种现象,称之为水楔,首先是由开尔文勋爵提出的。一个理想化的例子可见图2-21

图2-21
图2-21:理想化的开尔文水楔

船只后面的复杂波形受到水的粘度、移动方向、重力的影响,如果振幅很大,还要产生非线性俄效果。Stern波和涡流互相叠加,and not infrequently, other wave systems may be discerned originating from somewhere between the bow and stern。事实上,与船的速度无关,该角有开尔文水楔封闭,解释这个超出了本文的范围。详细信息请参阅[ FDfP ]。

参考资料

[MFGD] - Mathematics for Game Developers - Christopher Tremblay - Thomson course technology.

[DWAaR] - http://www.gamasutra.com/gdce/2001/jensen/jensen_04.htm,Deep-Water Animation and Rendering

[TEoNIaRT] -http://delivery.acm.org/10.1145/1110000/1103932/cs31.pdf?key1=1103932&key2=1886155021&coll=GUIDE&dl=GUIDE&CFID=59177333&CFTOKEN=24688997,The elements of nature: interactive and realisic techniques

[RNW] - http://www.cs.utah.edu/vissim/papers/water/waterColorPG.pdf,Rendering Natural Waters - Simon Premoze, Michael Ashikhmin

[TYPHOON] - http://www.gameprog.it/hosted/typhoon/water.htm,Typhoon 3D engine

[NSEP] - http://www.claymath.org/millennium/Navier-Stokes_Equations/navierstokes.pdf,CHARLES L. FEFFERMAN: Existence and smoothness of the Navier-Stokes equation

[GPUGEMS] - http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_ch38.html,Gpu Gems - Chapter 38. : Mark J. Harris: Fast Fluid Dynamics Simulation on the GPU

[FDfP] -http://books.google.hu/books?id=9LaWEx4XbvYC&pg=PA188&lpg=PA188&dq=kelvin+ship+waves&source=web&ots=-h_cO-AtAy&sig=7uoGo8atyiDN2V7XmsUUShJOmU8&hl=en#PPA188,M1",T. E. Faber: Fluid Dynamics for Physicists

[IAoOW] -http://www-evasion.imag.fr/Publications/2002/HNC02/wavesSCA.pdf,Damien Hinsinger, Fabrice Neyret, Marie-Paule Cani: Interactive Animation of Ocean Waves

[GW] - Jefrey Alcantara ,http://www-viz.tamu.edu/students/jd/658/T_algorithms.html


发布时间:2009/4/9 16:33:08  阅读次数:11899

2006 - 2024,推荐分辨率1024*768以上,推荐浏览器Chrome、Edge等现代浏览器,截止2021年12月5日的访问次数:1872万9823 站长邮箱

沪ICP备18037240号-1

沪公网安备 31011002002865号