用计算机写欧拉恒等式,震惊!计算器里竟然藏着这样一个秘密!

这篇博客探讨了开普勒方程的解析解,涉及了数学中的数值验证、拉格朗日反演、贝塞尔函数以及赫维茨-勒奇超越函数等概念。通过变换和级数展开,博主展示了如何解决这个天文学中的经典问题,同时也揭示了数学在解决实际问题中的美妙应用。
摘要由CSDN通过智能技术生成

c7c11ace64a27ad668211759e5bca429.png

真男人从不回头看数值验证

只有娘们才喜欢用特殊函数

0c3b1f3b300add9f4730babadc5e151e.png

玩计算器的发现

大家都玩过计算器吧,不知注意到没有。

输入任意数,然后不断按cos ANS 最后总会输出0.739085。

什么,你说明明记得是:0.999847哦,因为你用了角度制。

这一系列操作等价于求解方程x=cosx,角度制下就是

5807a9125f3cc4af3618d3adaf53f649.png

当然对于现在的你来说求数值解没啥意思了,要求就求解析解是吧。

不过这两个方程其实是一样的,我们先变个形:

1619b184f798191574fae82265d5c415.png

也就是说:

于是我们现在只要解决Ax-B=sin(x)这一个方程了。

最早研究这个问题的是天文学家,毕竟那时候也没什么计算器给你玩,一切要从实际出发...

9b2b01b0d70e79b09fe6b0e6d20d83bd.png

开普勒方程

你可能听说过,三体问题很困难,直到一百多年前的庞加莱时代才被搞定。

而二体问题则简单的多,400年前开普勒时代就研究的差不多了。

你至少知道这个成果,两个天体以一个为焦点,另一个必定在圆锥曲线上运动。

2594eca8a161d9ed96c4fff05d0df921.png

一般天体遵循椭圆轨道,如图椭圆是实际运行的轨道,与椭圆相切的是一个以半长轴为半径的辅助圆。

在一定的时间t内,椭圆轨道上的质点运行到了p点,而辅助圆上的假想质点运行到了y点。

椭圆轨道上所转过的角度∠T被称为真近点角(True Anomaly)

辅助圆轨道上假想质点所转过的角度∠M被称为平近点角(Mean Anomaly)

将椭圆上的质点向上作延长线,交辅助圆于x点所形成的角∠E被称为偏近点角(Eccentric Anomaly)

天文学家发现,它们满足如下关系式:

Kepler Equation:9d1251300510e16c68d4b3b4ca28cfaa.png

抛物线就是

ce6eef4f1ca748c04d3175f226c7acc8.png

的特殊情况,双曲线有所不同。

Hyperbolic Kepler Equation:

39f8017436064b499311a2a2090a8b73.png

但从数学上讲,这个式子其实就是:

8de4dde0269e4587b94005a1c7b7d427.png

也就是说不考虑物理意义其实是一样的。

b97970fef7a766994e3eefe9a99db6ff.png

开普勒方程的解析解

有了方程当然接下来就是求解了咯,古代计算力比较值钱,毕竟没有计算机,所以大家对解析解都有一种病态的追求。

怎么着推一天公式要比算一整天的牛顿迭代有趣吧?

91ee418dc97cfc0be9d80f0ba21e62ea.png

作一下等价性检验:

In [] = FindRoot[x==Cos@x,{x,0}] x-Pi/2/.FindRoot[Pi/2==x-Sin@x,{x,1}] FindRoot[x==Cos[Pi x/180],{x,0}] 180x/Pi-90/.FindRoot[Pi/2==x-Pi Sin@x/180,{x,1}] Out[] = 0.7390851332151605` {x -> 0.7390851332151607`} 0.9998477415310987` {x -> 0.9998477415310881`}

a8429de2726b20da00d9dc4875cd9488.png

拉格朗日反演

E不能分离但M,展开M(E),然后直接用级数反演即可。

29050829b37691c424dfe4ff866ddf4f.png

Mathematica 可以很方便的执行级数反演。

Series[M- Sin[M], {M, 0, 10}]//InverseSeries Series[M-e Sin[M], {M, 0, 10}]//InverseSeries

早期解这个方程使用了关于离心率

3b596ab6519de2414578598e83336c0b.png

的麦克劳林展开。

cb7d2ecb3ec1e799b9042e09fcc942ef.png

这不是个整函数,所以引入了所谓的拉普拉斯极限。

3f42267f087e6c3be37b03c6b8635574.png

超出收敛域的部分级数失效,级数反演则很好的解决了这个问题。

0d334b18b77946530a250efbb128a803.png

贝塞尔函数解

当然无穷级数不利于计算,能否使用微积分表达是我们接下来的探索重点。

我们来考虑函数方程:

44407609c082d3e750f861486589b51b.png

我们假设它可以展开为傅里叶级数,分析原函数方程性态可以期望这是个正弦级数。

1a91698f981795cba25d86341cca4b4c.png

那么系数可以表达为:

69cab5ee38d4af83071eb53b0952d834.png

我们来尝试计算,嗯?没思路怎么办...

无脑分部积分展开到能搞定为止呗。

523f7b5014954521d242347cb2d58f70.png

而这正好是贝塞尔函数的定义式之一:

Bessel Function of the First Kind:

eb864249d3517111a27989116e9e3326.png

于是原式可以写成

501735f8f4f192a6e9d8ff4e198215f3.png

768b098a44e2acec61785fbf2e0219a4.png

赫维茨-勒奇超越函数解

Stack Exchange上有个用反三角函数和三角函数表示的解析解,这个解比较有难度。

fe232c23549ce20f6d902317d2066c12.png

特殊函数论中将以下级数称为赫维茨-勒奇超越函数(Lerch Transcendent Function)

eaa9bd1514a573aacb8daca33029586b.png

我们从上面的贝塞尔函数解开始,还原掉贝塞尔函数:

3d65e06656c508a7fd702199f3338eaa.png

然后交换积分求和顺序。

8efa4ac62015193ebb7a0b2767d72c6a.png

里面的部分圈起来叫F(M),用欧拉公式展开。

676d880ec25a629a0602c7f8aec9934c.png

其中:

aca7363e71fee6799a21544876d86bf7.png

可以发现其实都是

03f716f48a11da0864f7c66e74e1a198.png

的结构。

我们引入多对数函数:

7dc37639c2575cc7fcbc62dad370303d.png

也就是说:

e10d3ce56f0f6c28f7eac73b78030232.png

用这个函数化简等式:

24edd385136a603476f020d1fc49be1e.png

同样的整理一下:

ce073456c98199f4ce5cb84c2f132901.png

可以合并成两组,然后再次展开,运算量有点大。

化简的时候注意恒等式:

b6103becb1374ef514e8017020188d1f.png

fa9e8df05d303117a3fea3e5ba6d66a1.png

注意到第二部分:

59ff2bc1a0101a10eeab6bde6189846f.png

最后代回去大功告成!

278be5ec2e3b7eb2d7dc5cbd937303ac.png

代入数据就得到了 Stack Exchange 一样的结果。

我对arctan(tan(x))这种写法感到很不爽。

这个当然不能直接抵消,由于arctan(tan(x))≠x,我们作复展开。

40ab0a8980a4c248ac7f467ad02c1d2e.png

严格来说这两者不是完全相等的,因为这样一来消掉了奇点。

不过积分的时候完全可以划等号,因为区间开闭完全不影响积分值。

4b63665c256ff2e831fa56fd11f49d42.png

综上所述,最后代入值,我们得到了:

eb602e7c8671042d442049708dd39d14.png

(*真男人从不回头看数值验证*) (2 + I Integrate[Log[-I/E^(I*(t - Sin[t]))], {t, 0, Pi}])/(2*Pi)//N (Pi + 90I Integrate[Log[(-I)*E^((-I)*t + (1/180)*I*Pi*Sin[t])], {t, 0, Pi}])/Pi^2//N > 0.7390851332151609` > 0.9998477415310951`

a6cf9b7eb2124765d6a7554d9d65469f.png

只有娘们才喜欢用特殊函数

最后一个是百度贴吧上的,这个答案就非常魔幻了,它和上面两个方法不是一个系列的,和第一个方法有关。

暴力求解拉格朗日反演的解析形式,场面非常的少儿不宜...

我一时半会儿也没看懂,详情看参考书目(3)。

aced468037f33f5c00757adb093dea23.png

从这个结果上也能看出这个方法有多残暴...

(*怎么可以这么暴力的说*) \[Pi]/2 Exp[NIntegrate[1/(\[Pi] x) ArcTan[((\[Pi] x+2)Log[(Sqrt[1-x^2]+1)/x]x)/(x^2Log[(Sqrt[1-x^2]+1)/x]^2-\[Pi] x-1)],{x,0,1},WorkingPrecision->50]] ArcCot[1+1/(2\[Pi] ) NIntegrate[Log[((1-x^2)Pi^2+4(Sqrt[1-x^2]ArcTanh[x]+x)^2)/((1-x^2)Pi^2+4(Sqrt[1-x^2]ArcTanh[x]-x)^2)],{x,0,1},WorkingPrecision->50]] > 0.73908513321516064165531208767387340401341175890075746496567242428255184768807`50.12267193056545 > 0.73908513321516064165531208767387340401341175890075746496567993239614795659229`51.22422170141253

参考书目

1.On Taylor series and Kapteyn series of the first and second type

2.Kepler's equation, radiation problems and Meissel's expansion

3.An exact analytical solution of Kepler's Equation

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值