wayne 发表于 2018-3-10 18:09:27

N等分椭圆周长的快速数值算法

讨论一个有效的算法模型,尽可能的将椭圆周长平分成$n$份。
==========
如果根据椭圆的弧长函数,即第二类椭圆函数,那么,计算量还是蛮大的。绕开这条路是否可行呢?

mathematica 发表于 2018-3-11 12:10:08

一个粗略的算法,角度反比半径,

mathe 发表于 2018-3-12 11:19:59

https://www.sciencedirect.com/science/article/pii/S0377042713000630?via%3Dihub
Numerical computation of inverse complete elliptic integrals of first and second kinds

lsr314 发表于 2018-3-12 11:31:50

本帖最后由 lsr314 于 2018-3-12 11:34 编辑

核心是求$int_0^x\sqrt(1-e^2sin(t)^2)dt=(kL)/(aN)=q$的解,可以用迭代法求解:
$x_0=(2pi)/N,x_(n+1)=x_n-(int_0^(x_n)\sqrt(1-e^2sin(t)^2)dt-q)/sqrt(1-e^2sin(x_n)^2)$
试了一下,收敛速度还是蛮快的。
页: [1]
查看完整版本: N等分椭圆周长的快速数值算法