Skip to main content
1 of 3
Peter K.
  • 26k
  • 9
  • 47
  • 93

From the (limited) description the uHz rotator algorithm sounds like one of the phase-weighted averages from this site, but it's not an algorithm I am familiar with.

The Cramér–Rao lower bound$^1$ for estimating the frequency of sinusoid with amplitude $A$ in white noise with variance $\sigma^2$ is given by:

$$ \mathrm{var}(\hat{f}) \ge \frac{12}{(2\pi)^2\eta N(N^2-1)} $$

where $N$ is the number of samples and $\eta = A^2/(2\sigma^2)$ (taken from Kay's Fundamentals of Statistical Signal Processing, Estimation Theory equation 3.41).

So, assuming $A =1$, $\sigma^2 = 0.1$, and assuming that frequency accuracy can exceed 8 significant digits means that $\mathrm{var}(\hat{f}) < (10^{-8})^2$ we get: $$ \begin{array} \ (10^{-8})^2 &\ge& \frac{12}{(2\pi)^2 5 N(N^2-1)}\\ \frac{20}{12} \pi^2 \times 10^{-16} &\ge& \frac{1}{N(N^2-1)}\\ N(N^2-1) &\ge& 6.079271 \times 10^{14}\\ N &\ge& 84713 \end{array} $$

This means that your data length would need to be 84713 samples to achieve this accuracy.

$^1$ The Cramér–Rao lower bound is the lowest achievable variance of an unbiased estimator.

Peter K.
  • 26k
  • 9
  • 47
  • 93