44 #ifndef GNSSTK_ALLANDEVIATION_HPP
45 #define GNSSTK_ALLANDEVIATION_HPP
71 Exception e(
"Need more than 2 point to compute a meaningful allan variance.");
81 for(
int m = 1; m <= (
N-1)/2; m++)
86 for(
int i = 0; i < (
N-2*m); i++)
89 if((phase[i+2*m]==0 || phase[i+m]==0 || phase[i]==0)
90 && i!=0 && i!=(
N-2*m-1))
93 sum = phase[i+2*m] - 2*phase[i+m] + phase[i];
97 sigma = sigma / (2.0*((double)
N-(
double)
numGaps-0-2.0*(double)m)*tau*tau);
98 sigma = ::sqrt(sigma);
104 void dump(std::ostream& s = std::cout)
const noexcept
106 std::vector<double>::const_iterator i=
deviation.begin(),j=
time.begin();
108 s << *j <<
" " << *i << std::endl;