Best way to estimate the arc length of a sine wave?

207 Views Asked by At

I need to estimate the arc length of a sine wave of a given equation:

$y=a\sin\left(\frac{\pi x}{c}\right)$

I read a method to do this via a polynomial equation and I got an explanation for the implementation here:

Estimating the arc length of a sine wave using this polynomial formula?

I graphed this solution here:

https://www.desmos.com/calculator/21up1qjhyq

That polynomial equation calculates an arc length for half a period of a sine wave over a length of $[0,c]$ given an amplitude of $a$.

The problem with this solution is it only gives remotely valid answers for amplitude around $a>=0.171$. Any lower amplitude and you get a lesser number than is mathematically possible.

ie. For $y = a sin(x)$ with amplitude of $0$ you get an arc length for the half period of 3.0881429428239 which is of course impossible since the arc length for a half period in this equation should be a minimum of pi.

Still this approach is useful for me and I would just have to use this with amplitudes above $0.171$.

Estimating arc lengths of sine waves seems like a relatively common issue. I searched and found lots of people asking, but no other general solutions or approaches that are mathematically feasible in a simple coding or DSP scenario like this polynomial.

Are there other polynomial solutions to this problem people have published or are aware of that maybe would do better close to $a=0$ as well, even if they are more computationally expensive?

1

There are 1 best solutions below

0
On

For the case of $$y=a\sin\left(\frac{\pi x}{c}\right)$$ the arclength is given by $$L=\int_0^c \sqrt{1+\frac{\pi ^2 a^2 }{c^2}\cos ^2\left(\frac{\pi x}{c}\right)}\,dx=\frac c \pi\int_0^\pi \sqrt{1+\frac{\pi ^2 a^2 }{c^2}\cos ^2(t)}\, dt$$ that is to say $$L=\frac {2c} \pi \sqrt{1+\frac{\pi ^2 a^2}{c^2}} E\left(\frac{a^2 \pi ^2}{\pi ^2 a^2+c^2}\right)$$ Let $\alpha=\frac {a \pi}c$ to make $$L=\frac {c} \pi \Big[\color{red}{2 \sqrt{\alpha ^2+1} E\left(\frac{\alpha ^2}{\alpha ^2+1}\right)}\Big]$$ For the part in red, you already have the polynomial regression (just replace $a$ by $\alpha$).