                             CALC 10.0 User's Guide
 
 
                                David Gordon
 
 
                                2006.04.20
 
 
Questions and comments about this guide should be sent to:
 
David Gordon ( dgg@leo.gsfc.nasa.gov )
 
 
                                Table of contents:
 
 
1 ................ Overview
 
 
________________________________________________________________________________
 
        1 Overview
        ==========
 
For CALC 10.0 to execute successfully the input database must contain a minimum
set of data elements. Databases which have been created by DBEDIT will be
guaranteed to contain those elements. To run CALC 10.0, a run string in the
following form must be submitted:
 
  >calc 0  N  File_name1
or:
  >calc 0  N  File_name1  File_name2
 
File_name1 is the name (with path if neccessary) of the CALC control file. N
must be either 0 or -1. If 0, the standard CALC observation lines are
written to the users terminal. If -1 all observation lines are supppressed,
but setup and warning messages are still listed. The Calc control file
(traditionally called the 'calcon' file) must contain 3 lines per data base
and be in the following form:
 
Calc 10.00 with External Inputs  -DG-
$06APR03XA               $06APR03XA
00000000000000000000000000000000000000000000000000000000000000
 
The first line is a history entry. The second line contains the input and
output database names and version numbers (format: A10, I10, 5X, A10, I10).
Normally the input and output database names are the same, and the version
numbers are left blank. The third line contains the flow control flags,
described below. Normally it is a string of 62 zeroes. They are in pairs,
with the first one controlling module options, and the second turning ON (1)
or OFF (0) the module debug printouts. To process more than one database in
a single Calc run, lines 4-6, and 7-9, etc., should be like the first three
lines.
 
File_name2 is the name of an external input control file. If file_name2 is
not given, then Calc will operate as in earlier versions, using the site,
source, and Earth orientation information in the input data bases via
data base GET's. If file_name2 is given, then Calc 10 will look for the
various a priori information in the files specified in file_name2.
File_name2 should look like the following:
 
Sites    /solve/apriori_files/blokq.dat
Sources  /solve/apriori_files/blokq.dat
Ocean    /solve/apriori_files/blokq.dat
EOPs     /solve/apriori_files/usno_finals.erp
Tilts    /solve/apriori_files/tilt.dat
 
In the above example, Calc would get site, source, Ocean Loading, EOP, and
fixed-axis tilt information from the files specified. To get some information
from the database and some from external files, File_name2 could look like
the following:
 
Sites    /solve/apriori_files/blokq.dat
Sources  /solve/apriori_files/blokq.dat
Ocean    None
EOPs     None
Tilts    /solve/apriori_files/tilt.dat
 
The input formats for sites, sources, and ocean loading are identical
to those in the Mark III 'blokq.dat' file, and 'blokq.dat' should appear
in the file name. (For other files and/or formats, contact D. Gordon for
advice.) The input format for EOP's are in the SOLVE standard EOP mod file
format. (Note that the EOP file now MUST be at 1-day intervals.)
The tilt.dat file contains fixed-axis tilts for the VLBA antennas. It should
not be changed, except for updating the Pietown tilts. The tilt.dat file can
be made optional here, provided it is specified in the param.i file
($MK5_ROOT/include/param.i, variable 'A_TILTS'). If so, it can be omitted
from File_name2, and will still be applied. (It should be defined in param.i
so that it will be applied when the external input mode is not used - but
you will probably have to set it manually.)
 
Databases coming from the correlators do NOT have the apriori information.
Also, the old Mark3 programs 'apriori', 'skeleton', and 'ut1pm' are no
longer supported. So for any analysis beginning with version 1 databases,
you MUST use the external input mode. A short Fortran program (up10) and
some scripts are availble, or can be written, to create the calcon file
and start Calc in the external input mode. For help here, contact D. Gordon.
 
There is an alternate source input format, which allows proper motion
velocities (arc-secs/year in RA and Dec) and/or source distances (parsecs)
to be read in. (These can also be read in using data base GET's).
 
IMPORTANT NOTE: When using the external input mode, the standard leap second
file must be availble to Calc. The location of this file is given in the
'param.i' file ($MK5_ROOT/include/param.i, variable 'DFLEAP'). If it is not
available, you will get very disturbing solutions with Solve.
 
Also: Make sure the JPL DE405 ephemeris file is available and properly
referenced in the param.i file. For Linux users, 'JPL_405' should be
'...../DE405_le.jpl' [little Endian]). For HP-UNIX users, 'JPL_405' should be
'...../DE405_be.jpl' [big Endian]). There is a chance of using the wrong
file or even a DE403 file, and not getting any error messages.
 
The following describes the individual module flow control and debug flags
in Calc 10. The defaults are all zero. Non-zero options are for various
non-standard functions. They are generally for testing purposes or for
compatability with earlier versions of Calc. Using them will cause alternate
module control messages to be written in the database header, but they will
probably not be supported by Solve. The debug flags are there mostly for
historical reasons. See the module and subroutine source code to determine
what the debug printout will be. The flag functions are as follows:
 
Atmosphere Module. (KATMC is column 1; KATMD is column 2.)
KATMC = 0 Compute atmosphere contributions based on the Niell dry and
          wet models but do not add to the theoreticals.
      = 1 ADD the Niell dry atmosphere contributions to the theoreticals.
 
Axis Offset Module. (KAXOC is column 3; KAXOD is column 4.)
KAXOC = 0 Include the effects of axis offsets in the theoreticals.
      = 1 Do not include the effects of axis offsets in the theoreticals.
 
Pole Tide Module. (KPTDC is column 5, KPTDD is column 6.)
KPTDC = 0 Compute pole tide and apply to the theoreticals.
      = 1 Do not compute pole tide.
      = 2 Compute pole tide contributions but do not apply to the theoreticals.
 
Diurnal Polar Motion Module. (KDNPC is column 7, KDNPD is column 8)
KDNPC  -  No longer defined, no function.
 
Earth Tide Module. (KETDC is column 9; KETDD is column 10.)
KETDC = 0 Include the effects of solid Earth tides using the 2003 IERS
          Conventions model (default).
      = 1 Turn off solid Earth tides, no corrections computed.
 
Ion Module. (KSIOC is column 11, KIOND is column 12)
KIONC  -  Module nonexestant, no function.
 
Nutation Module. (KNUTC is column 13, KNUTD is column 14).
KNUTC = 0 Compute and use X, Y, and s (new paradigm bias-precession-
          nutation quanties). They are used to compute the theoreticals.
          Also computes classical nutation using the IAU200A model (but
          not used to compute the theoreticals). Also computes the older
          Wahr (IAU 1976/1980) nutation and inserts a correction into
          the data base to convert to the Wahr model. (For use in Solve.
          This is somewhat ad-hoc and not completely accurate. Its use
          is not recommended. Note also, changes in the fundamental
          arguments means that the Wahr nutation values will not be
          identical to Calc 9.1x versions.)
      = 1 Do NOT compute the effects of bias-nutation-precession (X,Y,s)
          or of classical nutation.
 
Precession Module. (KPREC is column 15, KPRED is column 16.)
KPREC = 0 Compute precession (classical method) and use for classical
          rotation matrix (not used to compute the theoreticals).
      = 1 Do not compute precession.
 
Relativity/Theory module. (KRELC is column 17, KTHED is column 18)
KRELC = 0 Include the effects of gravitiational bending in the Consensus
          model.
      = 1 Do not include gravitational bending.
 
Site Module. (KSITC is column 19, KSITD is column 20)
KSITC  -  No function.
 
Star Module. (KSTRC is column 21, KSTRD is column 22)
KSTRC = 0 Do not add proper motion constants to data base when in external
          file mode  (Lcode 'PRMOTION'). Do not compute any proper motion
          contributions. Remove any previous proper motion contribution Lcodes.
      = 1 Add proper motion constants ('PRMOTION') if in external file input
          mode. Compute proper motion contributions if proper motion
          constants are available and insert in data base under Lcode
          'PMOTNCON'. Do NOT add these contributions to the theoretical.
          [They can be ADDED in SOLVE to get proper motion corrected delays
          and rates.]
      = 2 Add proper motion constants ('PRMOTION') if in external file input
          mode. Also, ADD the proper motions to source vector and use the
          proper motion corrected source vector throughout all computations.
          Compute a contribution (ADD to theoretical) that will
          (approximately) return the delays and rates to their non-proper
          motion corrected values, and put in Lcode 'PMOT2CON'. Recommended
          when there is a large accumulated proper motion (greater than ~1
          arcsec). Intended for correlator useage only - but USE WITH CAUTION!!
 
UT1 Module. (KUT1C is column 23, KUT1D is column 24.)
KUT1C = 0 Do spline interpolation for a 1-day series using TAI-UT1 (true UT1).
          Smoothing is no longer performed, and the EOP series MUST be at
          1-day intervals.
      = 1 Module completely off, that is, UT1 set equal to AT (UT1-TAI=0).
      = 2 Use TAI-UT1 as in #0; but use cubic interpolation. The EOP series
          MUST be at 1-day intervals.
      = 3 Use TAI-UT1 as in #0; but use linear interpolation. The EOP series
          MUST be at 1-day intervals.
      = 4 Convert table to TAI-UT1S UT1 using the UT1S model of Defrainge
          and Smits, 1999. Do spline interpolation, then restore to
          TAI-UT1 (true UT1). The EOP series MUST be at 1-day intervals.
 
Wobble Module. (KWOBC is column 25, KWOBD is column 26.)
KWOBC = 0 Compute polar motion effects and apply to the theoreticals. Use
          spline interpolation for a 1-day series.
      = 1 Set polar motion offsets to zero.
      = 2 Compute polar motion effects and apply to the theoreticals. Use
          linear interpolation.
      = 3 Compute polar motion effects and apply to the theoreticals. Use
          cubic interpolation for a 1-day series.
 
UTCCM Module. (KUTCC is column 27, KUTCD is column 28)
KUTCC  - No function.
 
ATIME Module. (KATIC is column 29, KATID is column 30)
KATIC = 0 ATIME utility turned on.
      = 1 ATIME utility turned off.
 
CTIME Module. (KCTIC is column 31, KCTID is column 32)
KCTIC = 0 ON.
      = 1 OFF.
      = 2 Periodic terms off.
 
PEP module (KPEPC is column 33, KPEPD is column 34)
KPEPC  -  No options. Solar system geometry will be taken from the
          JPL DE/LE405 ephemeris file. (Sun, Moon, Earth, and all other
          planets except Pluto) The location of this file must be specified
          in the param.i include file.
 
Diurnal spin utility. (KDIUC is column 35, KDIUD is column 36)
KDIUC  -  No function.
 
J2000 rotation matrix utility. (KM20C is column 37, KM20D is column 38)
KM20C  -  No function.
 
J2000 site rotation utility. (KROSC is column 39, KROSD is column 40)
KROSC  -  No function.
 
SITCR Module. (KSTEC is column 41, KSTED is column 42)
KSTEC  -  No function.
 
?????? Module. (KSUNC is column 43, KSUND is column 44)
KSUNC  -  No function.
 
?????? Module. (KSARC is column 45, KSARD is column 46)
KSARC  -  No function.
 
Thery Module. (KTHEC is column 47, KTHED is column 48)
KTHEC  -  No function.
 
Matrix utility. (KMATC is column 49, KMATD is column 50)
KMATC  -  No function.
 
Vector utility. (KVECC is column 51, KVECD is column 52)
KVECC  -  No function.
 
Ocean Loading Module. (KOCEC is column 53, KOCED is column 54.)
KOCEC = 0 Compute the effects of ocean loading and store the contribitions
          in the database, but do not apply to the theoreticals.
          [Note for correlator users. For historical reasons, these
           corrections are not applied here, but are usually turned on
           during the geodetic SOLVE/GLOBL analysis. They have alway been
           found to improve the solution. When Calc_user = 'C', and
           Apply_ocean = 'Y' in cuser.i, as recommended, this option gets
           reversed and these corrections WILL then be applied to the
           theoreticals.]
      = 1 Do not compute ocean loading effects.
      = 2 Compute ocean loading contributions and apply them to the
          theoreticals. (Reminder: Ocean Loading is different from other
          modules in that the default is to NOT apply the model to the
          theoreticals. Correlator users should apply these corrections
          using the options in cuser.i - see #0 option above.)
      = 3 Same as #1, except proceed even if the horizontal catalog is not in
          the database. Zero out the horizontal catalog.
 
U/V Module. (KASTC is column 55, KASTD is column 56)
KASTC  - The computation of U,V coordinates.
       = 0 ON. For analysis system users - computes 'UVF/ASEC', U/V
         coordinates in fringes per arcsec. (Previously computed by the
         Mark 3 correlators.) Multiply by 206264.81 to get familiar numbers.
         For correlator useage, computes 'UVF/MHz ', U/V coordinates in
         fringes per arcsec per MHz.
       = 0 OFF, no computations.
 
Start Module. (KSTAC is column 57, KSTAD is column 58)
KSTAC  -  No function.
 
Parallax Module. (KPLXC is column 59, KPLXD is column 60)
KPLXC = 0 Module partially on. Compute parallax partials with respect to the
          parallax parameter (old computation, but still valid - Lcode
          'PLX PART') and with respect to the inverse distance (in parsecs)
          (Lcode PLX1PART).
      = 1 Module completely on. Compute the two partials as above; also
          compute a delay and rate correction if a distance, in parsecs, is
          supplied (either via access code 'DISTPSEC' or via external file
          input of source coordinates.
 
Feed Rotation Module. (KPANC is column 61, KPAND is column 62)
KPANC = 0 Module on. Feed rotation applied to phase delays.
      = 1 Module off. No corrections.
 
The following is the correspondance between CALC control and debug
flags and the columns in line #3 of the CALC control file.  Many of
the flags have no function.
 
     KATMC     1
     KATMD     2
     KAXOC     3
     KAXOD     4
     KPTDC     5
     KPTDD     6
     KDNPC     7
     KDNPD     8
     KETDC     9
     KETDD    10
     KIONC    11
     KIOND    12
     KNUTC    13
     KNUTD    14
     KPREC    15
     KPRED    16
     KRELC    17
     KRELD    18
     KSITC    19
     KSITD    20
     KSTRC    21
     KSTRD    22
     KUT1C    23
     KUT1D    24
     KWOBC    25
     KWOBD    26
     KUTCC    27
     KUTCD    28
     KATIC    29
     KATID    30
     KCTIC    31
     KCTID    32
     KPEPC    33
     KPEPD    34
     KDIUC    35
     KDIUD    36
     KM20C    37
     KM20D    38
     KROSC    39
     KROSD    40
     KSTEC    41
     KSTED    42
     KSUNC    43
     KSUND    44
     KSARC    45
     KSARD    46
     KTHEC    47
     KTHED    48
     KMATC    49
     KMATD    50
     KVECC    51
     KVECD    52
     KOCEC    53
     KOCED    54
     KASTC    55
     KASTD    56
     KSTAC    57
     KSTAD    58
     KPLXC    59
     KPLXD    60
     KPANC    61
     KPAND    62
