Power Law Noise Identification for AllanTools

For AllanTools statistics both bias-correction and confidence interval calculation requires identifying the dominant power law noise in the input time-series.

The usual noise-types studied have phase PSD noise-slopes "b" ranging from 0 to -4 (or even -5 or -6), corresponding to frequency PSD noise-slopes "a" ranging from +2 to -2 (where a=b+2). These 'colors of noise' can be visualized like this:


Four colors of noise. Note frequency PSD slope "a" related to phase PSD slobe "b" by a=b+2. Lower graphs show tau-slopes "mu" for ADEV and MDEV. Data point colors don't match with figures below - sorry.

I've implemented three noise-identification algorithms based on Stable32-documentation and other papers: B1, R(n), and Lag-1 autocorrelation.

B1 (Howe 2000, Barnes1969) is defined as the ratio of the standard N-sample variance to the (2-sample) Allan variance. From the definitions one can derive an expected B1 ratio of (the length of the time-series is N)

where mu is the tau-exponent of Allan variance for the noise-slope  defined by b (or a). Since mu is the same (-2) for both b=0 and b=-1  (red and green data) we can't use B1 to resolve between these noise-types. B1 looks like a good noise-identifier for b=[-2, -3, -4] where it resolves very well between the noise types at short tau, and slightly worse at longer tau.

R(n) can be used to resolve between b=0 and b=-1. It is defined as the ratio MVAR/AVAR, and resolves between noise types because MVAR and AVAR have different tau-slopes mu. For b=0 we expect mu(AVAR, b=0) = -2 while mu(MVAR, b=0)=-3 so we get mu(R(n), b=0)=-1 (red data points/line). For b=-1 (green) the usual tables predict the same mu for MVAR and AVAR, but there's a weak log(tau) dependence in the prefactor (see e.g. Dawkins2007, or IEEE1139). For the other noise-types b=[-2,-3,-4] we can't use R(n) because the predicted ratio is one for all these noise types. In contrast to B1 the noise identification using R(n) works best at large tau (and not at all at tau=tau0 or AF=1).

The lag-1 autocorrelation method (Riley, Riley & Greenhall 2004) is the newest, and uses the predicted lag-1 autocorrelation for (WPM b=0, FPM b=-1, WFM b=-2) to identify noise. For other noise types we differentiate the time-series, which adds +2 to the noise slope, until we recognize the noise type.

Here are three figures for ACF, B1, and R(n) noise identification where a simulated time series with known power law noise is first generated using the Kasdin&Walter algorithm, and then we try to identify the noise slope.

For Lag-1 ACF when we decimate the phase time-series for AF>1 there seems to be a bias to the predicted a (alpha) for b=-1, b=-3, b=-4 which I haven't seen described in the papers or understand that well. Perhaps an aliasing effect(??).


leap-seconds.list SHA1 checksum

For fun I wrote a simple program that computes the SHA1 checksum for leap-seconds.list.

It turns out there's quirky convention of writing out the 40-character SHA1 checksum in 5 groups of 8 hex characters - whith the special undocumented rule that leading zeros are suppressed. This means the SHA1 check fails for some files where we happen to have a leading zero in one of the 8-character groups - unless you happen to know about the undocumented rule...

The output looks like this. "New" is the checksum computed by the program, "Old" is the checksum contained in the published file.
read  117  lines
New:  1e2613791c4627c2d0a34c872ece0ae428dfb714
Old:  1e2613791c4627c2d0a34c872ece0ae428dfb714
Identical ?  True
read  220  lines
New:  3f00425591f969f7252361e527aa6754eb6b7c72
Old:  3f00425591f969f7252361e527aa6754eb6b7c72
Identical ?  True
read  250  lines
New:  5101445a69948b5109153e2b2086e3d8d54561a3
Old:  5101445a69948b519153e2b2086e3d8d54561a3
Identical ?  False
read  250  lines
New:  5101445a69948b5109153e2b2086e3d8d54561a3
Old:  5101445a69948b519153e2b2086e3d8d54561a3
Identical ?  False
read  250  lines
New:  5101445a69948b5109153e2b2086e3d8d54561a3
Old:  5101445a69948b519153e2b2086e3d8d54561a3
Identical ?  False

There's also another simple script for authoring a leap-seconds.list file. It might be used for adding an artificial leap-second, generating a leap-seocnds.list file, and testing how different devices react to a leap-second - without having to wait for a real leap-second event.

In other news IERS recently announced there will be no leap-second in the summer of 2018.

See also time-stamp for leap-seconds.list.

Olofsborg by Night

Artist Kari Kola, "Luminous 100"

See also: Nyslott.

Iltarastit Kivikko

Missing the control circle on #2 from the large stones about 75m away, +5 min. Then too large a detour to #5 and about +4 min there. Otherwise mostly OK. Maybe +12 C and glimpses of sun.

Circular-T nr.357

Following the publication of Circular-T nr. 357 we shall take a look at the RMS error of UTC-UTC(k) in different laboratories across the world. Should we rank the 75 laboratories that have complete UTC-UTC(k) records by RMS error for this month we find the following.

Warning: Past performance is not an indicator of future results.

Circular-T 357 RMS Ranking list, top 10 labs
Rank Lab (Location)       RMS( UTC-UTC(k) ) / ns
1  MIKE (Espoo)           0.524 ns
2  PTB (Braunschweig)     1.056 ns
3  NIST (Boulder)         1.528 ns
4  ORB (Bruxelles)        1.556 ns
5  NPL (Teddington)       1.627 ns
6  NTSC (Lintong)         1.671 ns
7  OP (Paris)             2.090 ns
8  TL (Chung-Li)          2.095 ns
9  USNO (Washington_DC)   2.356 ns
10  SP (Boras)            2.409 ns

It's much easier to be lucky than brilliant, so maybe we have to look one further month back and do the same thing for Circular T 356:

Circular-T 356 RMS Ranking list, top 10 labs
Rank Lab (Location)     RMS( UTC-UTC(k) ) / ns
1  ESTC (Noordwijk)     0.504 ns
2  PTB (Braunschweig)   1.058 ns
3  OP (Paris)           1.198 ns
4  BY (Minsk)           1.340 ns
5  APL (Laurel)         1.409 ns
6  USNO (Washington_DC) 1.468 ns
7  NIST (Boulder)       2.372 ns
8  MIKE (Espoo)         2.683 ns
9  ORB (Bruxelles)      2.711 ns
10  SP (Boras)          2.920 ns

For completeness, here is the whole list for Circular-T nr. 357:

Circular-T 357 RMS Ranking list, all labs with complete data
Rank Lab (Location)       RMS( UTC-UTC(k) ) / ns
1  MIKE (Espoo)           0.524 ns
2  PTB (Braunschweig)     1.056 ns
3  NIST (Boulder)         1.528 ns
4  ORB (Bruxelles)        1.556 ns
5  NPL (Teddington)       1.627 ns
6  NTSC (Lintong)         1.671 ns
7  OP (Paris)             2.090 ns
8  TL (Chung-Li)          2.095 ns
9  USNO (Washington_DC)   2.356 ns
10  SP (Boras)            2.409 ns
11  APL (Laurel)          2.450 ns
12  CNM (Queretaro)       2.793 ns
13  UA (Kharkov)          2.870 ns
14  SG (Singapore)        2.981 ns
15  BY (Minsk)            3.137 ns
16  ONRJ (Rio_de_Janeiro) 3.600 ns
17  JATC (Lintong)        3.604 ns
18  ESTC (Noordwijk)      3.606 ns
19  ROA (San_Fernando)    3.763 ns
20  AOS (Borowiec)        3.944 ns
21  NIM (Beijing)         3.963 ns
22  IT (Torino)           4.025 ns
23  SU (Moskva)           4.842 ns
24  ZA (Pretoria)         5.394 ns
25  NICT (Tokyo)          5.683 ns
26  SMD (Bruxelles)       6.120 ns
27  NMIJ (Tsukuba)        6.273 ns
28  IMBH (Sarajevo)       6.473 ns
29  INXE (Rio_de_Janeiro) 7.582 ns
30  PL (Warszawa)         8.894 ns
31  DMDM (Belgrade)       9.541 ns
32  INTI (Buenos_Aires)   10.073 ns
33  NPLI (New-Delhi)      12.113 ns
34  INM (Bogota_D.C.)     14.139 ns
35  JV (Kjeller)          15.528 ns
36  VMI (Ha_Noi)          17.306 ns
37  UAE (Abu_Dhabi)       17.589 ns
38  VSL (Delft)           18.876 ns
39  TP (Praha)            21.305 ns
40  ICE (San_Jose)        21.597 ns
41  CH (Bern-Wabern)      24.486 ns
42  CNMP (Panama)         27.643 ns
43  CNES (Toulouse)       28.227 ns
44  BEV (Wien)            28.679 ns
45  SCL (Hong_Kong)       29.698 ns
46  NIS (Cairo)           31.465 ns
47  DTAG (Frankfurt/M)    32.215 ns
48  BIRM (Beijing)        32.899 ns
49  INPL (Jerusalem)      33.533 ns
50  NRC (Ottawa)          46.487 ns
51  KRIS (Daejeon)        46.607 ns
52  NAO (Mizusawa)        91.237 ns
53  INCP (Lima)           123.056 ns
54  DLR (Oberpfaffenhofen)147.241 ns
55  LT (Vilnius)          158.796 ns
56  KIM (Serpong-Tangerang)174.536 ns
57  NIMT (Pathumthani)    214.943 ns
58  SIQ (Ljubljana)       297.257 ns
59  MSL (Lower_Hutt)      299.413 ns
60  KZ (Astana)           314.082 ns
61  AUS (Sydney)          413.887 ns
62  SASO (Riyadh)         614.583 ns
63  NMLS (Sepang)         692.325 ns
64  BOM (Skopje)          837.749 ns
65  IFAG (Wettzell)       936.185 ns
66  HKO (Hong_Kong)       1089.931 ns
67  MTC (Makkah)          1167.348 ns
68  SMU (Bratislava)      1419.064 ns
69  NIMB (Bucharest)      1812.964 ns
70  ONBA (Buenos_Aires)   2222.486 ns
71  UME (Gebze-Kocaeli)   2403.381 ns
72  BIM (Sofiya)          7003.478 ns
73  DFNT (Tunis)          20450.450 ns
74  MBM (Podgorica)       52659.580 ns
75  MKEH (Budapest)       65626.933 ns

Iltarastit Solvalla

As daylight disappears Iltarastit moves to Sundays. +11 C or so. Too nervous right after stepping off the path towards #1. Then quite tentative towards #21. The long compass-legs 5-4 and 8-16 look surprisingly good.

Itärastit Salmenkallio

Zigzag around salmenkallio. Easy pace, but 8-9-10 looks pretty crooked anyway. Maybe +13 C.

Delay-tuning with trimmer-caps

Despite length-matching traces between a distributor-stage and the individual output-stages on my pulse distribution amplifier there remains a 2-300 ps peak-to-peak output skew between the channels.

Here's a test where a 50 pF or 10 pF trimmer-cap is added just before the input of the output-stage. I found that tuning the cap results in a variable delay of 60-80 ps/pF, so if initially the channels are within 300 ps of each other the 500 ps tuning-range of the 10 pF trimmer-cap is sufficient.

As a test I first tuned all channels to within 20 ps peak-to-peak, then verified this the following day and got 52 ps peak-to-peak. BNC-connectors might not be the greatest for picosecond level repeatability.


Around 11km hike around the red route in Salmi. Double rainbow.


Itärastit Paloheinä

Decent running for a change... I decided to run without compass on this easy map, and this seems to sharpen the mind and senses. 5th overall until control #3, but then dropping to 9th on #4 and 10th at the finish. The route choice to #4 is maybe too safe, driven by the lack of a compass (see also #11)..


© 2018

Theme by Anders NorénUp ↑