[time-nuts] Modified Total Deviation calculation

Magnus Danielson magnus at rubidium.dyndns.org
Mon Jan 18 02:29:49 UTC 2010


Dear fellow time-nuts,

In my effort to implement the suite of ADEV and friends, I have been 
implementing various forms of them along with the 1000 frequency sample 
test sequence out of NIST SP1065:
http://tf.nist.gov/timefreq/general/pdf/2220.pdf

However, I seem to be unable to perfectly match the numbers for the MTotDev.

My numbers so far:

         m = 1        m = 10       m = 100
Max     0.9957452943 0.7003371204 0.5489367785
Min     0.0013717599 0.2545924150 0.4533354120
Avg     0.4897744629 0.4897744629 0.4897744629
Sdev    0.2884663647 0.0929635201 0.0320665644
NAdev   0.2922318781 0.0996573606 0.0389780433
OSAdev  0.2922318781 0.0915995342 0.0324134303
OAdev   0.2922318781 0.0915995342 0.0324134303
MAdev   0.2922318781 0.0617237638 0.0217092091
Tdev    0.1687201535 0.3563623166 1.2533817739
Hdev    0.2943883291 0.1052754194 0.0391086056
OHdev   0.2943883291 0.0958108317 0.0323763825
MHdev   0.2942275231 0.0621023549 0.0213087110
TOTdev  0.2922318781 0.0913474326 0.0340653025
MTOTdev 0.2303857898 0.0555288598 0.0195467513

The MTOTdev numbers according to page 118 (of PDF, page number 108 
according to the printed pagenumbers) should be

Modified Total Dev 2.418528e-01 6.499161e-02 2.287774e-02

Do anyone happend to have an implementation (in source) of MTOTdev at 
hand giving the NIST SP1065 numbers?

Please note that W. Riley has about the same document in his Handbook, 
and it reflects the same number. I would also suspect that a STABLE32 
run would give those numbers.

I have been using both SP1065 and the original article as reference:
http://tf.nist.gov/general/pdf/1369.pdf

I've put care into ensuring that I implement it as close to these as 
possible, but with no luck in fixing the numbers.

I use the averaging of the two half-ranges of the 3*m block tecnique 
rather than the minimum square estimator as recommended. The formulation 
given may seem strange, but it is the 3/2*m sample average of the

f(i)=(x[n+3/2*m+i)-x[n+i])/ (3/2*m)

frequency estimation where i varies from 0 to 3/2*m-1.

I have already verified my test-sequence and the numbers produced by the 
other algorithms have been able to match after removing various bugs. An 
independent implementation may be a good clue.

An alternative may be that the published numbers is incorrect for some 
reason, but I don't have sufficient proof for that.

I have however made two different implementation variants that crunch 
out the same numbers.

Cheers,
Magnus




More information about the Time-nuts_lists.febo.com mailing list