dltred - nicolob/pep-full GitHub Wiki
Type: subroutine
Defined in: dltred.f
Definition: subroutine DLTRED(in0, nstop, init)
Author: ash
Created: August 1967
- modified for *command july 1978 r.b. goldstein
m.e. ash aug 1967 subroutine dltred
read in data controlling observation series changes and error
weighting and also data controlling dummy observations, then
write into disk data set iobcon.
modified for *command july 1978 r.b. goldstein
modified to allow blank fields in data editing mode
1980 march - z.m.goldberg and j.f. chandler
* * * warning * * * there must be something non-blank in
cols 1-16, or peptic will treat it as all blank * * *
ncodf = code indicating type of observation series
ncodf=1 radar observation series of time delay and
doppler shift
ncodf=4 meridian circle observation series of right
ascension and declination referred to the true
equinox and equator of date
ncodf=5 photographic observation series of right
ascension and declination referred to the mean
equinox and equator of reference epoch
ncodf=11 interferometry observation series of differential
delay and differential delay rate
ncodf=12 quasi-vlbi observation series of differential
n-count or differential delay increment
ncodf.gt.20 observation series of type ncodf - 20 of two
observed objects
***note. description here of first card of series incomplete
***see comment cards in subroutine prmred for first card of series
***for observation card data set iobs
nplnt= planet number of observed body
0=sun
1=mercury
2=venus
4=mars
5=jupiter
6=saturn
7=uranus
8=neptune
9=pluto
10=moon
11-30= other possible natural planets,satellites or asteroids
31,...= artificial space probes
site1 = first four characters of eight character receiving
observing site name for radar and optical observations
series = four characters giving observation series name
site2 = first four characters of eight characters sending
observing site name for radar observations
spot = four characters giving name of spot actually observed
on given body nplnt, if not the center of the body or
sub-radar point.
erwgt(i)=factor by which quoted error of measurement i is
multiplied
i=1 radar measurement of time delay or optical
measurement of right ascension
i=2 radar measurement of doppler shift or optical
measurement of declination
if erwgt(1).le.-1.e3 and erwgt(2).le.-1.e3, then whole
observation series is skipped
acctim = time accuracy constant for observation series
for radar observations: accuracy constant for time
delay iteration usually 10**-6 (seconds of delay)
for meridian circle observations: accuracy constant for
meridian crossing iteration, usually 10**-3 (radians of
Earth rotation).
for transit/occultation observations: accuracy constant
for alignment iteration, usually 10**-3 (seconds of time)
itime = time code for observation series
= 10*c + f (for c .ge. 0)
= c (for c .lt. 0)
For radar observations, c is forced to be non-negative, so
f may be -1 in this case (means same as f=2).
Only last two digits of year are given for observations, so
an indication must be given at start of series what first
two digits are. A series must not cross the start of a
century year, except for dummy observations.
c is the century code, i.e., YEAR/100 - 19
1 21st century observations
0 20th century observations
-1 19th century observations
-2 18th century observations,etc.
f is a flag for the type of observable
(treated as 0 for c .lt. 0)
0 optical: before atomic time
0 radar: observation time tag is UT2
1 atomic time exists, offset to be computed
observation time tag is UTC
2 AT - UT offset suppied with data
3 radar: observation time tag is UTC send time
5 normal point pseudo-obs at coordinate time
these values of itime are necessary because each
observation card only has the last two digits of the
year and an indication must be made at the start of
the series what the first two digits are
ctlg = name of reference star catalog used in reducing
photographic observations to r.a. and dec.
fdev = fractional offset in units of 10**-10 from a.1
time of unit of time used in time delay measurement
for radar observation series
freq = frequency of sending radar site for radar
observation series
nrewnd= 0 at start of observation series only those tapes are
rewound which are not used in the series
nrewnd= -1 same as nrewnd=0 with site card(s) read after 1st card
nrewnd= 1 at start of observation series all tapes are rewound
nrewnd= 2 same as nrewnd=1 with site card(s) read after 1st card
ntape = observation library tape number
if 0, signal to program to generate theoretical value of
observations and partial derivatives for given
observation series.
must have ntape greater or equal to previous ntape read in
nseq = sequence number of observation series on given observation
library tape.
must have nseq greater than previous nseq read in
for same value of ntape.
if ntape is greater than zero, the observations of the given
observation series lying between julian date jd(1) at
hour ihr(1), minute imin(1), second sec(1) and julian date
jd(2) at hour ihr(2), minute imin(2), second sec(2) have the
errors of their first and second measurements multiplied by
erobs(1) and erobs(2), respectively.
intday and intsec have no meaning if ntape is greater than zero.
if ntape is less than or equal to zero, then the theoretical
values and partial derivatives of the theoretical values of the
observations of the given observation series lying between julian
date jd(1) at hour ihr(1), minute imin(1), second sec(1) and
julian date jd(2) at hour ihr(2), minute imin(2), second sec(2)
are calculated at intervals of intday days & intsec seconds. for
use in forming the coefficient matrix of the normal equations, the
errors of these dummy observations are assumed to be erobs(1) and
erobs(2) for measurements 1 and 2 respectively.
for both the options ntape.le.0 or ntape.gt.0 above, if erobs(i)
is zero, theoretical value of measurement i is calculated but
not used in normal equations, whereas if erobs(i) is .le. -1.e03,
the theoretical value of measurement i is not calculated (i=1,2).
changes to observation series
for each series
card 1
columns
1- 2 ncodf (type of series) i2
3- 5 nplnt (observed planet no.) i3
6- 6 htype (flag for extra header cards) a1
7-10 receive site name -first 4 characters a4
12-15 series name -first 4 characters a4
17-20 sending site name -first 4 characters a4
22-25 spot name -first 4 characters a4
26-31 errwgt(1) error weight for 1st observable e6.0
32-37 errwgt(2) error weight for 2nd observable e6.0
38-43 acctim (time accuracy constant) e6.0
44-45 itime (time code for series) i2
46-52 fdev (frac.offset from a.1 time in units of 1e-10) f7.2
53-70 freq (frequency of sending site) d18.11
71-72 nrewnd i2
73-75 ntape (observation library tape) i3
76-80 nseq (sequence number of observation series) i5
notes-must put in order of increasing nseq
-this format corresponds to record 3 of obs.lib.
-if errwgt(i).le.-1.e3 then whole obs.series is deleted!
-if jct(69).gt.0 the 1st card has a different format from
column 46 onward, and there may be 1 or more extra cards.
-the format may also be selected via '#80' or '#72' cards
inserted in front of any series (for old and new formats,
respectively). in any case, the format remains selected
until changed by another '#' card. the new format has:
columns
46-63 freq (frequency of sending site) d18.11
64-65 nrewnd i2
66-68 ntape (observation library tape) i3
69-72 nseq (sequence number of observation series) i4
-if jct(69).gt.0 and htype=':' there is an extra header
card ('colon card') with the following format:
columns
1- 1 htype (further card indicator) a1
2- 8 fdev (frac.offset in time) f7.2
9-16 ctlg (name of star catalog) a8
-if ncodf.gt.20 an extra card is read with format:
columns
1- 2 nplnt2 (planet no. of second observed object) i2
(or, if jct(69).gt.0)
1- 3 nplnt2 (planet no. of second observed object) i3
4- 7 second spot name -first 4 characters a4
8-25 freq2 (reference frequency for second object) d18.11
card 2 (may be more than one of these cards)
columns
1- 7 jd(1) if ntape.le.0 then obs.from time jd(1) i7
8-10 ihr(1) ihr(1) i3
11-13 imin(1) imin(1) i3
14-21 sec(1) sec(1) f8.4
25-31 jd(2) to time jd(2) i7
32-34 ihr(2) ihr(2) i3
35-37 imin(2) imin(2) i3
38-45 sec(2) sec(2) are calculated with assumed f8.4
49-56 errobs(1) errors errobs(1) e8.1
57-64 errobs(2) errobs(2) e8.1
65-66 intday at intervals of intday days i2
67-72 intsec intsec seconds i6
if ntape.gt.0 then obs. are calculated with values of errobs
if errobs(i).le.0 then meas(i) is deleted
in the normal equations.
dltflg.inc
fcntrl.inc
inodta.inc
obsdta.inc
in0
nstop
init
- ...
- ...