|
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.naic.edu/~phil/usrprojdoc.html
Дата изменения: Wed Feb 3 00:47:19 2016 Дата индексирования: Sun Apr 10 00:18:34 2016 Кодировка: Поисковые слова: http www.astronomy.ru forum index.php topic 4644.0.html |
NAME:
a1963checktimes - example script to check a1963 times.
SYNTAX: .run a1963checktimes.
ARGS: none
DESCRIPTION:
An example file to process a set of a1963 src files and compute
the amount of time available between source positions. You should
copy this file to a local directory and edit it to do what you
want..
After copying the file to a local directory:
compute the times available given the az and ra (taken from the files)
1. update todo array to include dates and files you want.
to add to the end, just copy the last line, increment the index
and fill in the two fields yymmdd and fname
2. set makehardcopy=1 if you want hardcopy. You then need to
define psfilename..
The routine will :
1. compute the info for each day using cmptimes
2. plot all of the days 1 per page using plottimes
3. print a list of the results to the screen.
A simplified version of this file could be:
srcfile='/usr/obs4/usr/a1963/n2903_nov30.dat'
a1963cmptimes,041130,srcfile,datI ; do the computatinos
a1963plottimes,datI ; make the plots
a1963printtimes,datI ; print the table
NOTE:
Do @usrprojinit to include the path to this routine.
(See /pkg/rsi/local/libao/phil/usrproj/a1963checktimes.pro)
NAME:
a1963cmptimes - a1963 compute times given az,ra from source files
SYNTAX: a1963cmptimes,yymmdd,srcfile,datI,srctime=srctime
ARGS:
yymmdd: long date (AST) for source file. It will find the first transit
of each position for this AST date.
srcfile: string the observing file used. It needs the ra,dec and the
AZ= in the comments field.
srctime: long number of seconds to track each source. The default
is 480 seconds.
RETURNS:
dateI[n]:{} structure holding the computed data. 1 entry per
source position. The structure contains:
YYMMDD LONG 41130 ; date user specified
RAH DOUBLE 9.4693056 ; ra in hours from file (J2000)
DECD DOUBLE 21.540556 ; dec in degrees from file (J2000) ;
AZ DOUBLE 252.47028 ; azimuth in degrees from file.
ROTD DOUBLE -56.000000 ; rotation angle from file (degrees)
srcTime double 480. ; integration time in seconds.
AZDIF DOUBLE 0.00010479062 ; azRequested - azComputed in degrees
ZA DOUBLE 11.834881 ; zacomputed in degrees
JD DOUBLE 2453339.9 ; jd for the az,za computed
lst DOUBLE 0. ; lst for this start time
ASTH DOUBLE 4.4785450 ; AST hour of day for computed time.
DESCRIPTION:
A1963 is using the fixedazimuth pattern. They are using a source file
that contains and ra,dec and azimuth position for each drift. The datataking
starts when the source arrives at the specified azimuth.
This routine will verify that the azimuths/radecs are reasonable.
It will use the ra/dec and azimuth to backcompute the julian date
and za for the start of each drift. This information can then be used
to verify that there is enough time between sources.
For each drift in a file the computation is:
1. compute The Jd for the start of the specified ast day (yymmdd)
2. compute the lst for this jd
3. precess the ra position to this jd.
4. compute the transit time of the source for this ast day
(raCurrent- jdMidnite)
5. create an array of 300 jd times centered at the transit time and
spaced by 1 solar second.
6. use ao_radectoazza() to compute the az,za for each of these positions.
Include the /nomodel keyword since a1963 is inputting az,za
without model corrections (they are included later).
7. find the azimuth that is closest to the requested azimuth.
8. store : ra,dec,az,rotation Angle from the srcfile as well as the computed:
za,jd,lst,astHour, and the difference between the reqested
and computed azimuth.
EXAMPLE:
a1963cmptimes,041129,'/share/obs4/usr/a1963/n2903_nov29.cat',datI
a1963plotpattm,datI ; plot the data
NOTE:
Do @usrprojinit to include the path to this routine.
WARNINGS:
1. This routine uses precess from the goddard routines.
You need this in your path
(eg. addpath,'/pkg/rsi/idl/locallib/astron/pro/astro/')
The routine expects the source file to look like:
srcname ra dec coord
vel
az252d2151 092809.5 +215126 j 0 # AZ=252.47028 rot_an=-56
It needs the ra,dec,#,AZ=, and rot_an= in the file.
It parses the line after the # looking for AZ= and rot_an=
(See /pkg/rsi/local/libao/phil/usrproj/a1963cmptimes.pro)
NAME:
a1963plottimes - a1963 plot the pattern times.
SYNTAX: a1963plottimes,datI,h1=h1,v1=v1,h2=h2,v2=v2,v3=v3,thick=thick,$
hardcopy=hardcopy,psname=psname
ARGS:
datI[n]: {} Times computed be comptimes routine
KEYWORDS:
h1[2]: float [min,max] horizontal values for top plot on page
v1[2]: float [min,max] vertical values for top plot on page
h2[2]: float [min,max] horizontal values for middle and bottom
plot on page
v2[2]: float [min,max] vertical values for middle plot on page
v3[2]: float [min,max] vertical values for bottom plot on page
thick: float line thickness for plots. Default value is 1. A larger
number will make the line thicker. Some laser printers
need this to be set to 2 so the line is visible.
hardcopy: If set then write to psfile rather than screen.
default psfilename is 'idl.ps'
psname : string If hardcopy is set then the routine writes to a psfile.
The default name is 'idl.ps'. You can change the name
using psname=filename
DESCRIPTION:
Plot the position time info for a a1963 patterns. This information
is computed in the comptimes() routine and stored in the datI array
of strucutres.
The routine makes 3 plots per page:
TOP PLOT:
This is the azimuth, zenith angle for the start of each
drift in the map.
MIDDLE PLOT:
It contains 3 plots in white, red, and green:
white: the time available between each position. This is computed
from the azimuths and ra,decs.
red: the time needed to move between these az,za's
green: the total time need between patterns. it includes the
requested integration times plus move times.
BOTTOM PLOT:
The extra time available for between each pattern. It is
available time - (integration + movetime).
The values at location I are computed using the start of I - start(I-1)
(eg. data at 2 has the times from start of pat 1 to start of pat 2).
The move times use the slew rate. The actual time to move will take
longer so these estimates are minimum time needed.
EXAMPLES:
a1963comptimes,041130,'/share/obs4/usr/a1963/n2903_nov30.cat',datI
a1963plottimes,datI
To make hard copy you can put 1 plot per file or multiple plots per
file:
1 plot per file
a1963plottimes,dati,/hardcopy,psname='a196330nov04.ps'
multiple plots per file
pscol,'a1963nov03',/full
a1963plottimes,dati28
a1963plottimes,dati29
a1963plottimes,dati30
hardcopy
x
NOTE:
Do @usrprojinit to include the path to this routine.
(See /pkg/rsi/local/libao/phil/usrproj/a1963plottimes.pro)
NAME:
a1963printtimes - print pattern times to stdout.
SYNTAX: printtimes,datI
ARGS:
datI[n]: {} structure computed by comptimes()
DESCRIPTION
print out the a1963 timing information computed from the
routine times. The output goes to stdout (the terminal).
The output consists of:
info for : 41202 integration time: 480.00000
Jd frac lmst ra dec az availTm ExtraTm
0.85170 084531.17 092809.50 211326.00 252.47 0.0 0.0
0.85692 085303.39 092809.50 210356.00 250.64 451.0 -70.7
041202 is the date in yymmdd format.
480 is the integration time in seconds.
col description
JD fraction: the fraction of jd day
lmst: the sidereal time start of strip. format is hhmmss.ss
ra: J2000 ra in hhmmss from the file
dec: J2000 dec in ddmmss from the file
az: azimuth in degrees from the file
availTm: available time in seconds. Computes from the azimuths and ra,dec
extraTm: extra time in seconds. This is the available time -
the (integration time + moveTime).
This used the slew rates for the move time. It is probably
a maximum value.
EXAMPLE:
cmptimes,041130,'/share/obs4/usr/a1963/n2903_nov30.cat',datI
printtimes,datI
info for : 41130 integration time: 480.00000
Jd frac lmst ra dec az availTm ExtraTm
0.84925 083405.83 092810.00 215126.00 252.46 0.0 0.0
0.85573 084327.36 092810.00 215126.00 249.87 560.0 29.5
0.86236 085301.93 092810.00 215126.00 245.80 573.0 42.5
...
NOTE:
Do @usrprojinit to include the path to this routine.
(See /pkg/rsi/local/libao/phil/usrproj/a1963printtimes.pro)