不要走开,精彩马上开始。

生命是近似的艺术。如果我们考虑生活方方面面的每个细节,将永远无法取得新进展。当然,我们需要小心地选择忽略哪些事情,因为如果那些细节里包含众所周知的魔鬼,他们可能会反过来咬我们一口。

数学家们已经吃过很多次苦头了。一个典型的例子是斯托克斯现象(Stokes' phenomenon)。它起源于近二百年前一个关于彩虹的问题,并衍生出了一个数学的子领域。事实上,今年剑桥汇集了一些这个领域最聪明的人才,就这个话题开展了一个虚拟研究项目。这个问题涉及非常小的量——呈指数级小。但经过时间和空间的推移,这个小量可以按照指数级增长到很大。了解这些潜在的可以爆炸性增长的量不仅对数学、也对从制造喷气发动机到理论物理学的工程与科学各个领域都至关重要。

彩虹之下

这个问题始于1838年,当时天文学家乔治·比德尔·艾里(George Biddell Airy)对彩虹很感兴趣。

如果足够幸运的话,仔细观察彩虹会发现,在彩虹主体(主虹)下方有一个或几个不太明显的弧线,主要是绿色、粉色和紫色。艾里对这些多余的条纹(附属虹,supernumerary fringes)感兴趣,并不是因为他们本身,而是因为在光学透镜中也出现了类似的边缘效应。作为一名需要经常使用望远镜的天文学家,艾里想要理解这一现象背后的原因。

有附属虹的彩虹。摄影:Johannes Bahrdt

艾里函数

艾里函数Ai(r)是下列微分方程的一个解:

它由这个积分给出:

沿着垂直穿过彩虹的坐标轴,光的强度与艾里函数的平方有关

在17世纪初,勒内·笛卡尔(René Descartes)使用一种将光想象成由射线组成的理论解释了主彩虹的成因。“但光的射线理论并不能预测附属条纹的存在,所以我们不能模拟出它是什么”克里斯·豪斯说,他也是牛顿研究所项目的共同发起人。“艾里使用了光的波动理论,这种方法自然地导出了附属条纹。”

艾里写下了一个数学公式,这个公式现在被称为艾里函数(Airy function),从中可以得到主虹和附属虹的光强,当用一个垂直于彩虹的直线坐标轴来描述彩虹时,我们还能得到彩虹弧线的位置。“艾里想计算这些多余的条纹在哪里,因为这将有助于改善望远镜的光学性能。”豪斯说。

艾里函数的问题是很难计算,给定一个特定的x值,很难计算出艾里函数值Ai(x)。起初,艾里使用求积方法(quadratures),费尽心力地计算了x从-4到4间隔0.2时艾里函数的值。十一年后,他使用数学家奥古斯都·德·摩根(Augustus de Morgan)推荐的方法改进了结果:使用无穷多项级数的和来对函数做近似。

利用现代方法我们可以计算艾里函数值并画出图像。最右边的主凸起代表了主彩虹,左边较小的凸起代表附属虹。(艾里函数的平方给出了光强。)图源:豪斯

指数的力量

无穷级数求和的想法乍一看似乎很奇怪,让我们来看个例子。

考察指数函数

其中e是欧拉常数e=2.718281…

这个函数由下面这个无穷多项求和的泰勒级数给出:

级数的每一项都是变量x的幂函数。

现在给变量x赋予任意一个特定值,我们永远不能将这个级数的每一项都加起来(因为没有无限的时间),但是可以对前n项求和,得到所谓的部分和。我们得到的结果是ex的一个近似:n越大(也就是部分和中包含的项数越多),这个近似就越精确。事实上,只要将n取得足够大(即部分和中包含的项足够多),我们可以得到任意精度的近似值。数学上认为这个级数对于所有的x都可以收敛到值f(x)。

举个例子,现在为了估计x=2时ex的值,我们取x=2简单地计算泰勒级数(也叫麦克劳林级数)的前几项,保留前五项,我们得到:

而函数f(x)在x=2时的真实值是f(2) = e2 ≈ 7.4.

所以在这个例子中,甚至只取泰勒级数的前五项就可以给出x=2时函数值的一个合理近似。

泰勒级数存在于一整类函数中。并且泰勒定理可以告诉我们近似值与函数的真实值差距有多大。

泰勒的失败

泰勒级数在理论上很棒,并且艾里使用与艾里函数相对应的泰勒级数也确实可以计算出x从-5.6取到5.6时函数的值。但仍然有一个障碍。尽管艾里函数的泰勒级数可以收敛到函数本身,但它收敛得太慢了。“在得到第一个附属条纹前,我们甚至需要计算13到14项”豪斯说,“在1838年这非常困难,因为当时的科学家不得不用手算,这是不切实际的。”

蓝色曲线是艾里函数,红色曲线保留前三项泰勒级数得到的近似,可以看到近似值只与代表主彩虹的右方第一个凸起相符。图源:豪斯

为了找到一种更简单的近似艾里函数的方法,数学家乔治·加布里埃尔·斯托克斯(George Gabriel Stokes)在1850年决定冒险使用一个不收敛的级数做近似。

撒旦级数

容易想象,不是所有的级数都收敛在有限值。一个简单地例子是下面这个级数:

当部分和中包含越来越多项时,得到的结果也越来越大,最终超过所有的边界——它们不会接近一个有限值。这个级数会发散到无穷大

发散级数像马戏团里的野兽,危险但可以用各种技巧控制。在1828年,就在斯托克斯开始研究艾里函数前不久,挪威数学家尼尔斯·亨里克·阿贝尔(Niels Henrik Abel)就用“魔鬼的发明”来描述发散级数,并且声称“任何基于发散级数的证明都是可耻的”。

但斯托克斯在寻求对艾里函数做近似时并没有被吓倒。出于对艾里函数数学本质的深入剖析,他开始考虑运用发散级数。事实上,发散级数给出了一个对艾里函数很好的近似。

“驯兽”的技巧在于知道从哪里停止。由于斯托克斯使用的级数发散到无穷,所以如果部分和中的项数取得过多,近似值会变得巨大并且远远偏离对应的有限大小的艾里函数值。但如果部分和的项数取得刚刚好,那么近似值就会很接近实际函数值。

当把发散级数越来越多的项加起来,我们会得到一个越来越大的结果,最终发散至无穷。但是斯托克斯知道对于他使用的发散级数,取适当多的项可以得到艾里函数的一个好的近似。

斯托克斯的精妙方法使他能够“非常方便地”在所求的x值处近似得到艾里函数值,所以他基本上解决了计算出附属彩虹的问题。下图蓝色曲线代表实际的艾里函数,红色曲线代表斯托克斯的近似。可以看到红线对蓝线的拟合非常接近。仅有的不符出现在x=0的附近,在红色曲线发散向无穷的中间。

就彩虹而言,这种差异并不重要,因为我们感兴趣的是艾里函数在x=0左侧代表附属虹的行为。

蓝色曲线是实际的艾里函数,红色曲线是斯托克斯的渐进近似。公式给出了在不同部分的近似。图源:豪斯

这里,“渐进”这个词代表近似只在x为足够大的正数和足够小的负数时有效。(类似于我们在学校中学过的直线渐近线。这里给出了渐进的严格定义。)

尽管成功解决了问题,斯托克斯却并不满意。他的近似的两部分由两个十分不同的数学公式描述(在上图给出),令斯托克斯十分困扰。“斯托克斯想知道的是,如何从一个表达式过渡到另一个。”豪斯说,“从1850年到1902年,这个问题一直困扰着他。”斯托克斯最终给出的答案显示,当涉及到渐进近似时,微小的指数项可以突然出现然后增长到占据支配地位。各中详情,请听下回分解。

作者:Marianne Freiberger

翻译:藏痴

审校:zhenni

原文链接:

https://plus.maths.org/content/stokes-phenomenon-asymptotic-adventure


翻译内容仅代表作者观点


编辑:zhenni

我们是谁:

MatheMagician,中文“数学魔术师”,原指用数学设计魔术的魔术师和数学家。既取其用数学来变魔术的本义,也取像魔术一样玩数学的意思。文章内容涵盖互联网,计算机,统计,算法,NLP等前沿的数学及应用领域;也包括魔术思想,流程鉴等魔术内容;以及结合二者的数学魔术分享,还有一些思辨性的谈天说地的随笔。希望你能和我一起,既能感性思考又保持理性思维,享受人生乐趣。欢迎扫码关注和在文末或公众号留言与我交流!

扫描二维码

关注更多精彩

魔术表演的核心秘密(六)——从障眼法到错误引导和案例分享

信息——人类现代文明的奇迹

对称与魔术初步(六)——魔术《4选1的诅咒》等

你眼中的魔术,也是美的吗?

聊一聊数学中的基本定理(五)——主定理

点击阅读原文,往期精彩不错过!

彩虹也能“生”出小彩虹相关推荐

  1. 一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生, // 假设所有耗子都不死,请问20个月之后共有多少只耗子?...

    一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生, 假设所有耗子都不死,请问20个月之后共有多少只耗子? public class 计算老鼠数量 {public stat ...

  2. 用聚合数据API快速写出小程序

    利用聚合数据API快速写出小程序,过程简单. 1.申请小程序账号 2.进入开发 3.调用API.比如"苏州实时公交"小程序,选择的是苏州实时公交API. 苏州实时公交API文档:h ...

  3. html生成小窗口,用JS制作9种弹出小窗口(HTML)

    进入许多网站时,有弹出式小窗口,它们五花八门,使我们捉摸不透下面就来介绍用JS制作9种制作弹出小窗口: 1.最基本的弹出窗口代码 其实代码非常简单: window.open ("page.h ...

  4. JS设置弹出小窗口。

    经常上网的朋友可能会到过这样一些网站,一进入首页立刻会弹出一个窗口,或者按一个连接或按钮弹出,通常在这个窗口里会显示一些注意事项.版权信息.警告.欢迎光顾之类的话或者作者想要特别提示的信息.其实制作这 ...

  5. typescript 怎么表示当前时间减一个月_吃什么减肚子最快最有效 4种刮油食物吃出小蛮腰...

    肚子上的赘肉真的很难减吗?既然小肚子是吃出来的,那么小蛮腰也可以吃出来,吃什么减肚子最快最有效呢?本期小编为你推荐4款刮油食物,轻松吃出小蛮腰 1.葡萄 葡萄里面含有一种特殊物质,它能有效抑制我们身体 ...

  6. 微同城生活圈小程序源码系统+前后端+搭建教程

    微同城生活圈小程序源码系统功能相当丰富,做本地生活必备,拥有此套系统你就可以轻松搭建本地同城小程序了,同时源码系统也是多用户的,也可以帮助别人制作微同城小程序,盈利模式十分清晰. 开发组合:PHP+M ...

  7. 有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

    Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测 ...

  8. 【Java】有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

    有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? 输入 输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n ...

  9. 用聚合数据API(苏州实时公交API)快速写出小程序

    利用聚合数据API快速写出小程序,过程简单. 1.申请小程序账号 2.进入开发 3.调用API.比如"苏州实时公交"小程序,选择的是苏州实时公交API. 苏州实时公交API文档:h ...

  10. 用聚合数据API快速写出小程序(苏州实时公交)

    利用聚合数据API快速写出小程序,过程简单. 1.申请小程序账号 2.进入开发 3.调用API.比如"苏州实时公交"小程序,选择的是苏州实时公交API. 苏州实时公交API文档:h ...

最新文章

  1. LeetCode Flatten Nested List Iterator(栈)
  2. 【数据挖掘】神经网络 后向传播算法 ( 梯度下降过程 | 梯度方向说明 | 梯度下降原理 | 损失函数 | 损失函数求导 | 批量梯度下降法 | 随机梯度下降法 | 小批量梯度下降法 )
  3. dos窗口显示中文的一种方法
  4. 【AC Saber】数据结构
  5. hdu4609 3-idiots
  6. Java Synchronized 关键字
  7. 为什么我们拒绝使用 Docker
  8. BZOJ2934 : [Poi1999]祭坛问题
  9. Loopback、Null0接口揭秘
  10. mysql分库分表 mycat_你们要的MyCat实现MySQL分库分表来了
  11. “云湖共生 • 数智未来”数据湖应用实践白皮书重磅发布
  12. JavaEye被CSDN收购
  13. mysql 测试数据生成器_测试数据生成器
  14. matlab求导函数作图,excel对数据求导作图/如何用excel计算导数
  15. wordpress网站打开速度优化压缩html代码
  16. 车性能测试软件是什么,3DMark制造商推首款汽车性能测试软件
  17. python开启显卡_python查看显卡gpu信息
  18. 融会贯通,从oracle...,融会贯通Oracle数据库的25条基本知识:
  19. android手机直播推流
  20. MATLAB中readtimetable函数用法

热门文章

  1. 老板让全体员工《致加西亚的信》
  2. win10虚拟机下安装ubuntu16.04详细教程(含锐捷联网教程)
  3. 高德地图应用:接口调用权限安全升级( web端API接口加密)(文档篇)
  4. 解谜游戏中谜题与剧本
  5. JS验证邮箱 身份证 VISA 卡[转]
  6. 微信第三方授权获取用户信息
  7. 关于IDEA无法使用搜狗输入法输入中文问题
  8. ysoserial exploit/JRMPListener原理剖析
  9. 作为一名开发者,要警惕这五个浪费生命的现象
  10. python实现局域网文件互传_Python+pyftpdlib实现局域网文件互传