[time-nuts] Allan Variance Processor for TAC32Plus
Brian Kirby
kirbybq at bellsouth.net
Tue Aug 16 04:45:59 UTC 2005
For those of you using TAC32Plus, I have written a program that will
convert data from a "T" file to Allan variances. If you are interested,
please send an email and I will send you the program.
Data Processor for Modified Allan Variance
V1.01, Copyright August 2005 by Brian Kirby N4FMN
This program is design to manipulated data from the TAC32Plus software
package. It
will calculate Allan Variance for 1-second data rates, and Modified
Allan Variance for 2,
3, 4, 5, 6, 7, 8, and 9-second rates, and decades' rates to 10,000
seconds (37
averages/files).
This program was created to produce accurate outputs. I had previously
used a
spreadsheet program to process data to calculate Allan variances and it
had several
limitations. The first problem is the spreadsheet program is limited to
64K input lines.
This limitation makes it impossible to process 1-second data for a day
or any other data
over 64K elements.
The program was written and compiled with QuickBasic Extended (Professional
Development System V7.0). This program uses IEEE double-precision
floating-point
calculations. This program was tested with MS-DOS V6.22, Windows NT4
SP6A, and
Windows 2000 SP4.
The program expects to work in a directory in the root directory named
C:\TAC. It
expects a "T" file from TAC32Plus, and this file has to be renamed
DATA.CSV for the
program to use it. The "T" file has to be recorded at a 1 second rate.
You can combine
multiple "T" files by copying them at the command prompt to combine
them. An
example: COPY GPSA123T.CSV + GPSA124T.CSV + GPSA125T.CSV DATA.CSV,
etc. A "T" file recorded in a 1 second rate, generates around 4.8 MB per
day. At the
present, this program uses the 6th data element only, the corrected time
interval
measurement, of the "T" file. If you use a different stop/start
reference for your
HP53131A time interval counter, instead of a GPS receiver, you may
consider turning off
sawtooth correction in TAC32.
When executing the program you should see progress indicators showing
data is being
extracted. During the extraction process, the program will generate many
CSV files,
which can be used with other programs. After extraction, the program
will generate and
display variances, samples, and range on the display. The program will
generate a file
named RESULTS.TXT, which will be the results of the calculations. Note
the file
expresses scientific notation as D instead of E. This is a byproduct of
QBX running
double precision floating-point math. The program will also generate a
second file
named RESULTSE.TXT, which uses abbreviated results and uses E for
scientific
notation.
Output format for the file and display is 1) Averaging periods, in
seconds; 2) Modified
Allan variance, in scientific numbers; 3) Samples converted (minus 1
sample for the
results of variance samples), and 4) Range which is maximum time
interval error, in
nanoseconds, of the measurement.
If you want to save the data generated previously, you need to move it
before executing
the program again – the program will overwrite previously generated data.
If you find an error, I would appreciate a notification via email at
kirbybq at bellsouth.net
Please report which version of the program you were using, and report
all details of the
errors that occurred.
As a benchmark, I have included some performance data on various
processors and
operating systems. This data is the time it took the program to complete
processing a 19
MB files, about 4 days of data.
300 Mhz Pentium II, Windows NT4 SP6A 18 minutes, 7 seconds
400 Mhz AMD K6-2, Windows NT4 SP6A 11 minutes, 14 seconds
500 Mhz Pentium III, Windows 2000 SP4 12 minutes, 17 seconds
500 Mhz AMD K6-2, Windows 2000 SP4 12 minutes, 25 seconds
1 Ghz Athlon, MS-DOS V6.22 17 minutes, 31 seconds *
1 Ghz Athlon, Windows NT SP6A 5 minutes, 57 seconds
1 Ghz Athlon, Windows 2000 SP4 5 minutes, 53 seconds
1.6 Ghz Pentium M, Windows 2000 SP4 3 minutes, 2 seconds
2.4 Ghz Celeron, Windows 2000 SP4 5 minutes, 38 seconds
Note: For whatever reasons, I noticed it was hitting the hard drive all
the time.
The only error message I have encountered is when executing the program
and it does not
find the input file DATA.CSV. The error message is: "File not found in
line no line
number in module ALLANVAR at address 0DC1:3D60. Hit any key to return to
system".
The compiled program size is 99 Kb.
>
>
More information about the Time-nuts_lists.febo.com
mailing list