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

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

玩计算器的发现

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

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

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

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

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

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

也就是说:

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

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

开普勒方程

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

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

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

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

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

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

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

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

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

Kepler Equation:

抛物线就是

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

Hyperbolic Kepler Equation:

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

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

开普勒方程的解析解

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

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

作一下等价性检验:

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`}

拉格朗日反演

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

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

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

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

的麦克劳林展开。

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

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

贝塞尔函数解

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

我们来考虑函数方程:

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

那么系数可以表达为:

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

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

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

Bessel Function of the First Kind:

于是原式可以写成

赫维茨-勒奇超越函数解

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

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

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

然后交换积分求和顺序。

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

其中:

可以发现其实都是

的结构。

我们引入多对数函数:

也就是说:

用这个函数化简等式:

同样的整理一下:

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

化简的时候注意恒等式:

注意到第二部分:

最后代回去大功告成!

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

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

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

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

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

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

(*真男人从不回头看数值验证*) (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`

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

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

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

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

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

(*怎么可以这么暴力的说*) \[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

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

  1. 圆周率怎么计算来的?教你利用欧拉恒等式,生成圆周率万能公式!

    原文链接:http://www.twoeggz.com/news/4791962.html 在古代,缺少数学技巧的情况下,圆周率的计算是相当困难的,我们国家伟大的数学家,天文学家祖冲之(429-500 ...

  2. 多线程之基于积分法与欧拉恒等式法的圆周率计算及OMP优化

    文章目录 一.问题描述 二.积分法 算法推导 编程实现 OMP优化 三.欧拉恒等式 算法推导 编程实现 前期准备 加法 减法 乘法 除法 算法实现 OMP优化 四.总结 积分法与欧拉恒等式法的对比 O ...

  3. 数论数学:欧拉恒等式的证明

    今天突然想到我应经写过泰勒展开了! 正好又遇到了欧拉恒等式,就顺便在博客上记录一下啦.. 题目: 试 证 明 : e π i + 1 = 0 试证明:e^{\pi i}+1=0 试证明:eπi+1=0 ...

  4. 被众人膜拜的欧拉恒等式是个什么东东?

    老子说:道生一,一生二,二生三,三生万物.万物的本源既是数,自然世界造化了万物,也造化了人类,聪明的人类参照了大自然造化万物的方法,自已又物化出了一个能够认知.解释和预测自然界的一套逻辑方法.而数学, ...

  5. 【转载】三种证明欧拉恒等式的方法(3 methods of proving Euler's Formula )

    [转载]三种证明欧拉恒等式的方法(3 methods of proving Euler's Formula ) 如下证明来自维基百科,本文属于转载如有版权涉及问题,概不负责. These proofs ...

  6. 虚数与欧拉恒等式e^ix=cosx+isinx

    虚数i=√-1是一个不属于实数的数.在高中时,我们就知道复数加法与乘法的几何意义(即向量相加与旋转拉长).当然,它还有更多的应用,如欧拉恒等式e^ix=cosx+isinx(可以简单地用泰勒展开经行证 ...

  7. 计算机方法欧拉,欧拉方法详解

    高中牛顿力学回顾 有一个具有一定速度在运动的物体: 当我们需要对其进行模拟时,自然会想起高中的 位移 = 速度 * 时间,即: $$s = v * t$$ 而当该物体具有恒定加速度(恒力)时: 我们可 ...

  8. 关于动漫的计算机知识点,这些好看的动画片里竟然藏着许多知识点(附2019年观影日历)...

    原标题:这些好看的动画片里竟然藏着许多知识点(附2019年观影日历) 撰文/李青 本文选自<知识就是力量>杂志 嗨,各位小伙伴好! 喜爱动漫的你是不是已经在期待今年有哪些好片可以看了? 今 ...

  9. 被人崇拜的欧拉恒等式

    - 为什么要发明复数? 我们知道,在实数域上,加法.减法可以看成是沿数轴的左右平移,乘法.除法可以看成是沿数轴的拉伸和压缩(也可认为是重复平移),这可以认为是运算符最简单的理解.而数学,是建立在对物理 ...

  10. 计算机图形学【GAMES-101】14、动画(物理模拟、质点弹簧系统、粒子系统、运动学、动作捕捉、欧拉方法)

    快速跳转: 1.矩阵变换原理Transform(旋转.位移.缩放.正交投影.透视投影) 2.光栅化(反走样.傅里叶变换.卷积) 3.着色计算(深度缓存.着色模型.着色频率) 4.纹理映射(重心坐标插值 ...

最新文章

  1. VSFTP用户目录指定
  2. BZOJ 4810 [Ynoi2017]由乃的玉米田 ——Bitset 莫队算法
  3. Spark Executor内幕
  4. linux磁盘混乱,Linux磁盘设备文件混乱源于Linux内核自身
  5. iOS之常用的正则表达式
  6. 分布式作业 Elastic Job 如何动态调整
  7. 介绍当前流行的一些开源Flash视频播放器
  8. 基于设备树的TQ2440 DMA学习(3)—— DMA控制器驱动
  9. python编程入门指南-《中小学生Python编程入门指南》3.4 字典
  10. LeetCode 647 回文子串
  11. 循迹小车c语言程序51单片机,51单片机循迹小车Proteus仿真程序
  12. mysql sasl_SASL认证失败的原因(authentication failed)
  13. 企业应该怎么运营微信公众号?
  14. vscode 修改显示文件顺序
  15. Jquery--一个form中两个submit事件如何进行区分
  16. 最好用的 20 款数据可视化工具
  17. 步进电机(四相五线为例子)步进角度和工作原理介绍
  18. python:鸡尾酒疗法
  19. 2022VS CORD安装教程
  20. MATLAB中的一些方法

热门文章

  1. 软考_2021年11月真题
  2. 定时器 java qua_Quartz定时任务调度机制解析(CronTirgger、SimpleTrigger )
  3. 我的世界服务器物品管道,物品导管 (Item Conduit)
  4. 一瑞士法郎是多少人民币
  5. Torch安装及使用
  6. 2010国家节假日安排
  7. LED闪烁 闪灯芯片IC 手电筒IC 闪灯控制IC 闪烁IC流水灯
  8. 各种透明玻璃厚度测量双边对射厚度测量精密测量厂家
  9. 华三服务器虚拟化交换机配置聚合,华三交换机(S5130)初始化配置讲解
  10. HNOI 2015 亚瑟王 题解