[Previous]
[Next]
NAME:
G_H
PURPOSE:
Converts Yohkoh pointing information to heliographic coordinates.
The Yohkoh coordinates are based on quarter resolution SXT pixel
locations.
CALLED BY:
ars2_plan, obs_coord2
Note: the Yohkoh coordinates are positiv towards E and N.
CALLING SEQUENCE:
g_h,yy,xx
INPUTS:
xx = W-E coordinate in SXT quarter resolution image
yy = S-N coordinate in SXT quarter resolution image
KEYWORDS (INPUT):
suncenter = [center_x, center_y]. Sun center position
(in Yohkoh coordinates).
If not supplied, the default [120, 142] will be used.
date = string 'dd-mmm-yy', e.g., '23-feb-92'
If not supplied, today's date will be used.
OUTPUTS:
ll = string. Heliographic coordinates in degrees.
CALLS: ***
anytim2ex [1], anytim2ex [2], get_rb0p [1], get_rb0p [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
If the supplied coordinates are outside the solar disk, then the
region is projected onto the limb.
PROCEDURE:
Uses PB0R to calculate B0 and the solar radius.
MODIFICATION HISTORY:
JPW, March 1992
modified version of YOHKOH2HEL, uses PB0R instead of JHUAPL software.
Derived from gbo_hel to give LWA control of suncenter. 17_April-1992
Changed to a procedure to print result from a function. LWA 4/25/92
Also changed order of yy,xx to get used to NS first. LWA 4/25/92
20-feb-1997 - S.L.Freeland - use "get_rb0p" in place of "pb0r"
[Previous]
[Next]
NAME:
GAIN_PLOT
PURPOSE:
Plots the detector gain and energy resolution for the two
BCS flight detectors from the data contained in gain log.
CALLING SEQUENCE:
.run gain_plot
INPUT:
Reads from table in $DIR_BCS_LOGS:GAIN_LOG.DAT
OUTPUT:
plots can be directed to PS if desired
OPTIONAL OUTPUT:
HISTORY
RDB Nov 1990 with enhancements
RDB 16-Feb-92 General plot unit
RDB 21-Jun-92 Capitalized $DIR_BCS_LOGS for Unix
Used CONCAT_DIR
[Previous]
[Next]
NAME:
GAIN_PLOT4
PURPOSE:
Plots the detector gain and energy resolution for the two
BCS flight detectors from the data contained in gain log.
Plot is a panel of 4 plots with BCS-A resolution and gain on
the (top and bottom) lefthand side, and BCS-B resolution and
gain on the (top and bottom) righthand side.
CALLING SEQUENCE:
.run gain_plot4
INPUT:
Reads from gain log table from the file GAIN_LOG.DAT.
Looks FIRST for this on the current directory, OTHERWISE defaults
to directory defined in logical/environment variable $DIR_BCS_LOGS.
OUTPUT:
plots can be directed to PS if desired
OPTIONAL OUTPUT:
HISTORY
RDB May 92 From GAIN_PLOT.PRO
RDB 7-Jun-92 Added polynomial fit to gain of BCS-A since launch
RDB 21-Jun-92 Capitalzed $DIR_BCS_LOGS for Unix
Used CONCAT_DIR
RDB 04-May-93 Changed limits for line fit plot
RDB 04-Nov-93 Searches current dir for file, else uses default.
Needed after centralizing to isass0::
RDB 13-Jan-94 Also do fit to BCS_B
RDB 23-Jan-94 Changed range of gain of BCS-A and deriv. of ytickv
RDB 02-Nov-95 Changed range of gain, etc for BCS-A and BCS-B
RDB 07-Dec-95 Upped no. of points in arrays...
[Previous]
[Next]
NAME:
GAIN_TEMP_PLOT
PURPOSE:
Plots the relationship of the gain of the BCS detectors against
temperature
CALLING SEQUENCE:
.run GAIN_TEMP_PLOT
INPUTS:
reads data from $DIR_BCS_LOGS:GAIN_TEMP_LOG.DAT
OUTPUTS:
OPTIONAL OUTPUTS:
RESTRICTIONS:
PROCEDURE:
MODIFICATION HISTORY:
RDB 1991
RDB 21-Jun-91 Capitalized $DIR_BCS_LOGS for Unix
Used CONCAT_DIR
[Previous]
[Next]
NAME:
GAMINC
PURPOSE:
Compute the function = exp(X) / X^P * Int[exp(-X)*X^(P-1)dx]
(Int = Integrate from X to Infinity)
CALLING SEQUENCE:
Result = gaminc(P,X) ; X>0
INPUTS:
X and P See expression above for details
RETURNS:
Expression returned is a vector the same length as X.
CALLS: ***
GAMMA, igamma2 [1], igamma2 [2]
CALLED BY:
collexc [1], collexc [2]
HISTORY:
1-sep-93, J.R. Lemen (LPARL), Converted from a very old SMM Fortran program
14-Mar-94, Zarro (ARC) substituted routines from Numerical Recipes
[Previous]
[Next]
NAME:
gauss_2d
CALLING SEQUENCE:
f=gauss_2d(n,r0,rmax=rmax, corner=corner)
PURPOSE:
generates an nXn pixel array, which has the form
of a 2d gaussian with a width of r0 pixels, normalized
to a total of 1.0, unless the corner keyword is set
INPUT:
n = array dimensions
r0 = width of gaussian in pixels
KEYWORDS:
rmax = beyond rmax, set the function to 0.0
corner = if set, the maximum is at (0,0), the
default is to have the max at (n-1)/2
OUTPUT:
f = the 2d gaussian
CALLED BY:
one_ftpt, two_ftpt
HISTORY:
Written Apr 93, by JM
Added corner keyword, 8-9-95, jmm
[Previous]
[Next]
NAME:
GAUSS_FUNCT2
PURPOSE:
EVALUATE THE SUM OF A GAUSSIAN AND A 2ND ORDER POLYNOMIAL
AND OPTIONALLY RETURN THE VALUE OF IT'S PARTIAL DERIVATIVES.
NORMALLY, THIS FUNCTION IS USED BY CURVEFIT TO FIT THE
SUM OF A LINE AND A VARYING BACKGROUND TO ACTUAL DATA.
CATEGORY:
E2 - CURVE AND SURFACE FITTING.
CALLING SEQUENCE:
GAUSS_FUNCT2,X,A,F,PDER
INPUTS:
X = VALUES OF INDEPENDENT VARIABLE.
A = PARAMETERS OF EQUATION DESCRIBED BELOW.
OUTPUTS:
F = VALUE OF FUNCTION AT EACH X(I).
OPTIONAL OUTPUT PARAMETERS:
PDER = (N_ELEMENTS(X),6) ARRAY CONTAINING THE
PARTIAL DERIVATIVES. P(I,J) = DERIVATIVE
AT ITH POINT W/RESPECT TO JTH PARAMETER.
CALLED BY:
FIND_LIMB, FIND_LIMB2, GAUSSFIT [1], GAUSSFIT2, fit_gcross
COMMON BLOCKS:
NONE.
SIDE EFFECTS:
NONE.
RESTRICTIONS:
NONE.
PROCEDURE:
F = A(0)*EXP(-Z^2/2) + A(3) + A(4)*X + A(5)*X^2
Z = (X-A(1))/A(2)
MODIFICATION HISTORY:
WRITTEN, DMS, RSI, SEPT, 1982.
Modified, DMS, Oct 1990. Avoids divide by 0 if A(2) is 0.
Modified, JRL, LPARL, Nov, 1988 - If n_elements(A) is 4 or 5,
then a constant or linear
background term is calculated.
Modified, JRL, LPARL, Aug, 1990 - Allow for no background term
Modified, SLF, ISAS, 4-Sep-92 - Split gaussfit2/gauss_funct2
[Previous]
[Next]
NAME:
GAUSSFIT2
PURPOSE:
Fit y=f(x) where:
F(x) = a0*exp(-z^2/2) + a3 + a4*x + a5*x^2
and z=(x-a1)/a2
a0 = height of exp, a1 = center of exp, a2 = 1/e width,
a3 = constant term, a4 = linear term, a5 = quadratic term.
Estimate the parameters a0,a1,a2,a3 and then call curvefit.
CATEGORY:
?? - fitting
CALLING SEQUENCE:
yfit = gaussfit2(x,y,a)
INPUTS:
x = independent variable, must be a vector.
y = dependent variable, must have the same number of points
as x.
Optional Input parameters:
First_guess = array of first guess parameters. Length should
be 3,4,5, or 6 elements (see description of a).
OUTPUTS:
yfit = fitted function.
OPTIONAL OUTPUT PARAMETERS:
a = coefficients. a six element vector as described above.
Also, if a is defined on entry, and if
n_elements(a) = 6 fit 3rd order background
n_elements(a) = 5 fit 2nd order background
n_elements(a) = 4 fit 1st order background
n_elements(a) = 3 fit no background (assumes 0 background).
CALLS: ***
CURVEFIT, GAUSS_FUNCT2 [1], GAUSS_FUNCT2 [2], POLY_FIT
CALLED BY:
GAUSSFIT [1], fit_gcross, mode_fit
COMMON BLOCKS:
None.
SIDE EFFECTS:
None.
RESTRICTIONS:
The peak or minimum of the gaussian must be the largest
or respectively the smallest point in the Y vector.
PROCEDURE:
If the (max-avg) of Y is larger than (avg-min) then it is assumed
the line is an emission line, otherwise it is assumed there
is an absorbtion line. The estimated center is the max or min
element. The height is (max-avg) or (avg-min) respectively.
The width is foun by searching out from the extrem until
a point is found < the 1/e value.
MODIFICATION HISTORY:
DMS, RSI, Dec, 1983.
JRL, LPARL, Nov, 1988 Fit const or linear background if
N_elements(a) = 4 or 5, respectively.
JRL, LPARL, Aug, 1990 Optionally fit no background. Allow
first guesses to be supplied.
JRL, LPARL, Aug, 1992 changed name to gaussfit2 - calls gauss_funct2
SLF, ISAS, Sep, 1992split gauss_funct2/gaussfit2
[Previous]
[Next]
NAME:
GAUSSFIT_2
PURPOSE:
Fit y=f(x) where:
F(x) = a0*exp(-z^2/2) + a3 + a4*x + a5*x^2
and z=(x-a1)/a2
a0 = height of exp, a1 = center of exp, a2 = 1/e width,
a3 = constant term, a4 = linear term, a5 = quadratic term.
Estimate the parameters a0,a1,a2,a3 and then call curvefit.
Parameters a3, a4, and a5 are optional, depending on the value
of k
CATEGORY:
?? - fitting
CALLING SEQUENCE:
yfit = gaussfit_2(x,y,a,k)
INPUTS:
x = independent variable, must be a vector.
y = dependent variable, must have the same number of points
as x.
OPTIONAL INPUT PARAMETERS:
k = determines the order of polynomial to be fitted in
addition to the gaussian part:
k = 3 : gaussian + a3 + a4*X + a5*X^2
k = 2 : gaussian + a3 + a4*X
k = 1 : gausian + a3
k = 0 or any other k: only gaussian
If k is not defined, it is assumed k=0
OUTPUTS:
yfit = fitted function.
OPTIONAL OUTPUT PARAMETERS:
a = coefficients. a (3+k) element vector as described above.
CALLS: ***
CURVEFIT, POLY_FIT
CALLED BY:
FUNCT
COMMON BLOCKS:
None.
SIDE EFFECTS:
None.
RESTRICTIONS:
The peak or minimum of the gaussian must be the largest
or respectively the smallest point in the Y vector.
PROCEDURE:
If the (max-avg) of Y is larger than (avg-min) then it is assumed
the line is an emission line, otherwise it is assumed there
is an absorbtion line. The estimated center is the max or min
element. The height is (max-avg) or (avg-min) respectively.
The width is foun by searching out from the extrem until
a point is found < the 1/e value.
MODIFICATION HISTORY:
Original gaussfit DMS, RSI, Dec, 1983.
gaussfit_2 AF, MSSL, Nov, 1989 - optional choosing of polynomial order
[Previous]
[Next]
NAME:
GBO_HEL
PURPOSE:
Converts Yohkoh pointing information to heliographic coordinates.
The Yohkoh coordinates are based on quarter resolution SXT pixel
locations.
CALLED BY:
HXA2HEL, obs_coord
Note: the Yohkoh coordinates are positiv towards E and N.
CALLING SEQUENCE:
ll = gbo_hel(xx,yy)
INPUTS:
xx = W-E coordinate in SXT quarter resolution image
yy = S-N coordinate in SXT quarter resolution image
KEYWORDS (INPUT):
suncenter = [center_x, center_y]. Sun center position
(in Yohkoh coordinates).
If not supplied, the default [130, 140] will be used.
date = string 'dd-mmm-yy', e.g., '23-feb-92'.
If not supplied, today's date will be used.
OUTPUTS:
ll = string. Heliographic coordinates in degrees.
CALLS: ***
anytim2ex [1], anytim2ex [2], get_rb0p [1], get_rb0p [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
If the supplied coordinates are outside the solar disk, then the
region is projected onto the limb.
PROCEDURE:
Uses PB0R to calculate B0 and the solar radius.
MODIFICATION HISTORY:
JPW, March 1992
modified version of YOHKOH2HEL, uses PB0R instead of JHUAPL software.
20-feb-1997 - S.L.Freeland - use <get_rb0p> in place of "old" pb0r
[Previous]
[Next]
NAME:
GBO_MASK
PURPOSE:
This function masks over the text in the corners of ground based
images.
CALLING SEQUENCE:
name of variable=GBO_MASK(image)
INPUTS:
ground based full image of sun
OUTPUTS:
processed image without text
DRAWBACKS:
Because there are six different formats of ground based
images, there was not a single algorithm that could be used.
GKI & GKM images are dealt with differently than
GCH & GLH & GHH images. The last three formats may have visible
blocks of masking. GBH images are just different entirely, because
of their size.
CALLED BY:
get1gbo, get_gbo_pfi, halp halphaprep, halpha_prep, lastgbo
HISTORY:
MGC, Dec, 1992.
Feb-93 (MGC) - Expanded to handle BBSO images (not 512x512 images)
22-Feb-93 (MDM) - Added comment marks to the header
- Corrected handling of BBSO images
22-Feb-93 (MGC) - Rearranged whole program.
- Corrected handling of BBSO images
- Changed a constant
6-Mar-95 (MDM) - Protect against a bad/improper image being passed in
- Mask the GB* images a bit more
[Previous]
[Next]
NAME:
gbo_obs_coord
PURPOSE:
To print out the OR table coordinate for a region clicked on
a rescaled GBO image
PROCEDURE
1. If sindex and sdata not passed in then get and display last SFD.
2. Get desired GBO image.
3. If needed rotate or flip GBO image.
4. Determine center and radius of GBO image with CLICKLIMB
5. TVSCL rescaled GBO image onto last SFD.
6. Program calls SXT_OBS_COORD to derive table coordinates.
CALLING SEQUENCE:
gbo_obs_coord, kind, obstime [, data=data, side=side, /grid]
gbo_obs_coord, 'g*h',gbotime='29-nov-94', obstime, side=128 ; 2x2 OR
gbo_obs_coord, 'gbh', obstime, sindex=index, sdata=data, $
window=4, side=[64,128] ; 1x2 OR (NS x EW)
gbo_obs_coord, 'gki', '3-MAY-95 16:40', gboimage
INPUT:
kind - type of GBO image desired, e.g., 'gbh','gkm','g*h, etc.
G_x Ground-Based Observation (GBO) Images (Sites)
Gx_ Ground-Based Observation (GBO) Images (Data Type)
GBC GBO Big Bear Large Scale H-alpha PFI FITS Image
GBH GBO Big Bear H-alpha FITS Image
GBK GBO Big Bear Calcium FITS Image
GBW GBO Big Bear White Light FITS Image
GCH GBO Boulder Colorado H-alpha FITS Image
GGH GBO GSFC H-alpha FITS Image
GHH GBO Holloman H-alpha FITS image
GLH GBO Leamonth Australia H-Alpha FITS Image
GNH GBO NAOJ Japan H-alpha FITS Image
GJH GBO CRL Hiraiso H-alpha FITS Image
GKI GBO Kitt Peak He 10830 FITS Image
GKM GBO Kitt Peak Magnetogram FITS Image
obstime - Time in any format at which coordinates of chosen point
are desired (index, etc)
OPTIONAL OUTPUT:
gboimage - scaled, positioned gbo image without pfi boxes.
KEYWORDS (INPUT):
sindex - index for SXT image (not required if lastsfd is OK).
sdata - SXT image to be displayed (not required if you don't
want to see it or if sindex is set.)
gbotime - Desired time of image of desired GBO image in any format (index, etc)
Default: index of lastsfd image or sindex
window - The window in days +/- the input time which is accecptable
to search for an GBO image. Default = 8.
In this case program searches for the GBO image
nearest in time to the time given by gbotime.
suncenter - Center of sun in full res (IDL) pixels.
Defaults to suncenter=sxt_cen(gbotime)
side - Size of square in FR pixels to draw on image (def = 64). If
side =[N,M], will draw a rectangle that is N (NS) by M (EW)
grid - If set, overlay heliographic coordinate grid
color1 - Color of ROI box (def = 192).
color2 - Color of rotated ROI box (def = 255).
CALLS: ***
CLICKLIMB, CONGRID [1], CONGRID [2], CONGRID [3], SXT_GRID [1], SXT_GRID [2]
SXT_GRID [3], WDEF [1], WDEF [2], XLOADCT [1], XLOADCT [2], XLOADCT [3], fmt_tim [1]
fmt_tim [2], get1gbo, get_rb0p [1], get_rb0p [2], gt_pix_size, gt_res, input [1]
input [2], lastsfd [1], lastsfd [2], sxt_cen [1], sxt_cen [2], sxt_obs_coord [1]
sxt_obs_coord [2], yesnox [1], yesnox [2]
HISTORY:
30-Nov-94 - LWA - Written.
2-May-95 - LWA - renamed variables and arranged to use
sindex and sdata in place of lastsfd if
desired.
4-May-95 - LWA - Added ability to return GBO image, replaced
get_xyrad with clicklimb, and removed HR limitation.
15-May-95 - LWA - Corrected header.
[Previous]
[Next]
NAME:
gbo_paths
PURPOSE:
To return the directory list of where ground based data resides
CALLING SEQUENCE:
dirs = gbo_paths()
CALLS: ***
data_paths2 [1], data_paths2 [2]
CALLED BY:
find_dbo_dir, lastgbo, lastgki, newfiles [1], newfiles [2], newfiles [3]
OPTIONAL KEYWORD INPUT:
gbo_only - If set, only pass back the "standard" gbo directories,
do not pass back things like "DIR_GEN_SYOPTIC"
noshell - if set, avoid shell (from data-paths2) messages
OUTPUT:
returns a string array of the environment variables where
DIR_GBO is defined
RESTRICTIONS:
Currently only works for workstations
HISTORY:
Written 26-Jun-92 by M.Morrison
11-Sep-92 (MDM) - Added DIR_GEN_SYNOPTIC to the derived list
21-Jan-93 (MDM) - Modified to use DATA_PATHS2 routine
27-Jan-93 (MDM) - Added /GBO_ONLY option
12-Apr-94 (SLF) - Add NOSHELL keyword/function; eliminate old garbage
[Previous]
[Next]
NAME: gbo_pfi
PURPOSE: get a matching GBO patch for PFI data
METHOD: Figure PFI corners from INDEX, rotate these to the
time of the GBO image, get section of GBO and rotate
back, finally take exact matching section. The GBO
image is first matched to the location and size of
the full disk coresponding to the PFI.
You can either pass in the GBO image itself, in which
case you MUST also supply the time for it, or a string
with the path/filename of a YS style GBO image file.
The key here is that the extension be .HHMM for the image.
The greater the time difference the less appropriate the
RIGID keyword becomes.
CALLING SEQUENCE: gbo_part=gbo_pfi(gboin,indx[,gbotim][,/rigid)
PARAMETERS: gboin the gbo image data, or a string with
path/filename of gbo image
indx PFI index
gbotim if gboin is data, then this must have
the image's time. Any format acceptable
to ANYTIM2EX is OK.
KEYWORDS: rigid when set does rigid rotation
CALLS: ***
IMGSCL2, RFITS [1], RFITS [2], RFITS [3], anytim2ex [1], anytim2ex [2]
anytim2ints [1], anytim2ints [2], fid2ex [1], fid2ex [2], get_rb0p [1]
get_rb0p [2], get_rect, gt_corner, gt_pix_size, gt_res, gt_shape, int2secarr [1]
int2secarr [2], rect_rot, sol_rot [1], sol_rot [2], sxt_cen [1], sxt_cen [2]
HISTORY: Drafted by A. McAllister, early Mar. 1993
Fixed and released, AMcA 29-Apr-93.
Adjusted the corner, AMcA 12-may-93.
Fixed definition of RES, AMcA 19-may-93.
Replaced direct references to index tags, AMcA 1-jun-93.
Adjusted for new index routines, AMcA 6-jul-93.
[Previous]
[Next]
NAME: gbo_rot_t
PURPOSE: To take a GBO image and rotate it to extrapolate
backward or forward in time.
METHOD: Take the image, map it to heliocentric coordinates, add the
appropriate differential rotation, and map it back. This
version is ment for optical full disk images, and selects the
on disk pixels before doing the rotation. The input images
must be tractable to the limbfinder, or else you may run out
of memory. The pixels are mapped individually and then mapped
back to the disk, so there wil be over writing in the hemisphere
being rotated away from disk center, and gaps on the hemisphere
being rotated towards disk center. Blank pixels are filled in
by simple east-west averaging of the nearest neighbors, but near
the limb everything is blank and no replacement is done.
CALLING SEQUENCE:
out=gbo_rot_t(image,date,delt[,roll=roll])
PARAMETERS: image the image data.
date the time of the image, in standard 7
part form (use fmt_tim(index), etc.).
delt the rotation time, in decimal days.
KEYWORDS: roll optional roll correction. For SXT
images you can use 1.0.
RESTRICTIONS: There is a limit (somewhere between 116,000 and
262,000) to the number of pixels this will handle.
When the number is too high it runs out of memory
in VEC_H2P.
CALLS: ***
TARGET [1], coord_l2v, sol_rot [1], sol_rot [2], target [2]
HISTORY: Drafted by A.McAllister, Feb. 1993.
Made correction to add ROLL in call to SOL_ROT, jun 15, 1993.
[Previous]
[Next]
CALLING SEQUENCE
gbo_scale,haimg,haout,x0,y0,r [,mktv=mktv]
HISTORY
Procedure developed to shrink BBSO Halpha image and
place it correctly in a 512x512 SXT image
Written by L. Acton 7-nov-91
Modified for generality 10-apr-92
PARAMETERS
haimg is the input GBO image
haout is the rescaled output image
x0, y0 are center of SXT image in FR pixels from find_limb
r is radius of SXT image in FR pixels from find_limb
KEYWORDS
if you want the code to put haout on a window set /mktv
CALLS:
[Previous]
[Next]
NAME:
gbo_scale2
PURPOSE:
To take two images of the sun and resize, and repostion
the second one so that it lies on top of the first one.
METHOD: Both images are passed through gen_loc to find the centroid
and the axial diameters, the second is then resized and
reposisitioned to match the first (TARGET).
When the target, or both images, are SXT images set the SXT
keyword to 1 or 2, respectively.
CALLING SEQUENCE:
outimg=gbo_scale2(trgimg,gboimg[,indx1,indx2][,sxt=sxt]
[,mktv=mktv])
indx1 and indx2 are index entries for trgimg and gboimg
respectively. Only needed when these are SXT images. Then
you must also set the SXT keyword (see below).
NOTES:
When working with fits images the top 5 lines or so
should be removed before input. These contain the
header and gum things up.
PARAMETERS:
gboimg the input GBO image.
trgimg the target image to which it is to be matched.
outimg the rescaled output image.
KEYWORDS:
SXT This is the flag indicating wiether the images
are sxt images of not. If the target is an SXT
image set this to 1, if both are SXT images,
set it to two.
MKTV if you want to put outimg on a window set /mktv.
OUTPUT TYPE:
CALLS: ***
CONGRID [1], CONGRID [2], CONGRID [3], GEN_LOC
HISTORY:
Procedure developed to shrink BBSO Halpha image and
place it correctly in a 512x512 SXT image
Written by L. Acton 7-nov-91
Modified for generality 10-apr-92
Added automatic sun finder, A. McA. 16-apr-92
Corrected for different vertical/horizontal scaling A.McA 18-apr-92
Version 2. Rewrote for general sized matrices, using dsk_loc.
changed calling sequence to include target image, A.McA 24-apr-92
Replaced location routine. Can now handle SXT images, A.McA. 6-may-92
Added fractional pixel repositioning, A.McA. 7-may-92
Changed congrid call to use bilinear extrapolation, A.McA. 26-may-92
Output variable type now same as input type, A.McA. 2-dec-92
[Previous]
[Next]
NAME:
GBO_STRUCT
PURPOSE:
Define the following ground Based Observing database structures
* GEV_Data_Rec
* GXR_Data_Rec
* GDR_Data_Rec
* NAV_Data_Rec
* GBO_Version_Rec
* GSN_ObsHeader_rec
* GSN_ObsImage_rec
* GBO_Obs_rec
* BATSE_Event_Rec
* BATSE_LCur_Rec
* Nob_Event_Rec
* Nob_TimSer_Rec
* Uly_FEM_Rec
CALLING SEQUENCE:
GBO_STRUCT
CALLED BY:
GOES__DEFINE, last_lc, mk_gbl, mk_gev [1], mk_gev [2], mk_gx, mk_nar [1], mk_nar [2]
mk_week1_file, mk_week_file [1], mk_week_file [2], rd_gbe_raw, rd_gbl_raw [1]
rd_gbl_raw [2], rd_goes3sec [1], rd_goes3sec [2], rd_goes_fits, rd_guf_ascii
rd_selsis, rd_week_file [1], rd_week_file [2], rd_week_file [3]
rd_week_file [4], weekid [2], ydb_exist [2]
HISTORY:
written by Mons Morrison, Jun-92
slf, 23-sep-92, added GXR_Data_Rec, modified GBO_Version_Rec
slf, 10-oct-92, changed number pad bytes, GXR_Data_Rec
[Previous]
[Next]
NAME: gen_file_id
Purpose: given either a weekly-fileid OR a range of fileids
(which can span n-weeks) generate all valid file ids.
Calling Sequence:
files = gen_file_id(weekids, [range=range, filename=
filename, nocba=nocba, xbd_path=xbd_path]
range input start and stop file id as a two element
vector: e.g. ['920422.0000','920429.1000']
filename if set will return checked list of all possible
file names.
nocda if use with filename will return all files
except cba files.
CALLS: ***
GetRng, PREFIXCK, PTSTR, Rd_TapDir, UNIQ [1], UNIQ [2], UNIQ [3], ck, fid2ex [1]
fid2ex [2], tim2orbit [1], tim2orbit [2], weekid [1], weekid [2], weekid [3]
CALLED BY:
archive_ck [1], archive_ck [2]
History:
written 3-May-94
-------------------------------------------------------------
[Previous]
[Next]
NAME:
gen_fn
PURPOSE:
Given file prefix and/or fileid Generate/Create full
file names.
CALLING SEQUENCE:
fn = gen_fn(hdr, drecs, [wid=wid, wkpre=wkpre,
prefix=prefix, fileids=fileids])
Where:
hdr input header to tape dir. file
drecs input data_recs to tape dir. file
wid optional input Weekid to create hdr and drecs.
wkpre optional input for weekly file prefixes
prefix optional input for reformatted file prefixes
fileids optional input for reformatted fileids
CALLS: ***
PREFIXCK, Rd_TapDir, STR2ARR [1], STR2ARR [2], weekid [1], weekid [2], weekid [3]
CALLED BY:
go_rdtap [1], go_rdtap [2]
Examples:
fn = gen_fn(hdr, drecs, prefix=['spr','sfr'],
fileids=['911205.1207','911206.0424'])
fn = gen_fn(wid='91_49', prefix=['spr'],
fileids=['911206.0424'])
HISTORY:
Written 16-Sept-92, gal
30-Nov, bug fix for null on weeklys, gal
[Previous]
[Next]
NAME: GEN_LOC
PURPOSE:
a general disk locator for all types of image.
METHOD:
for SXT images this calls FIT_LIMB.
for other images it uses DSK_LOCG.
Availablity of ATT files is checked for and when absent
FIT_LIMB is called interactively.
CALLING SEQUENCE:
gen_loc,image,[indx],[KEYWORD=variable,..]
KEYWORDS:
SXT when set indicates SXT data, requires indx.
ROUGH a fast rough fit, may not work well with sxt.
BFRAD RADIUS of best fit circle, use w/ sxt option.
CIR Use to invoke a circle fit to a GBO image.
CENTROID horizontal, vertical centers, floating point pixels.
HORZRAD horizontal DIAMETER, floating point pixels.
VERTRAD vertical DIAMETER, floating point pixels.
EASTLIMB east limb, in pixels.
WESTLIMB west limb, in pixels.
NPOLE north pole, in pixels.
SPOLE south pole, in pixels.
QUIET pass through to DSK_LOCG, no display.
INTER pass through to DSK_LOCG, interactive point edit.
NOTES: When run with /ROUGH, it is much faster, but the results may be
off on the order of a FR pixel (due to round off). There may also
be some error message generation.
It is assumed that elliptical GBO images have the major axis along
the vertical. This may be grneralized in the future.
RETURN TYPE: FLOAT
CALLS: ***
DSK_LOCG, att_exst, fit_limb, gt_res, pnt_exst
CALLED BY:
IMGSCL2, IMG_MATCH, align_cube, gbo_scale2, imgscl, rad_bck, scale_gbo
HISTORY:
drafted by A. McAllister, May 5, 1992.
added evironmental switch for PNT data, A.McA. Dec. 1992.
corrected BFRAD calc for GBO case, AHMcA, mar. 1993.
replaced PNT data check, june. 22, 1993.
added ATT data check, AMcA, jan. 12, 1994.
replaced SXT_CENTER with FIT_LIMB and set kill=5, AMcA, feb. 11, 1994.
added the SUMMED_PIXELS keyword to the FIT_LIMB calls
and removed the resolution corrections, AMcA, feb. 15, 1994.
replaced DSK_LOCB with DSK_LOCG and added QUIET and INTER
keywords, AMcA, aug. 24, 1994.
added CIR keyword, as the test on BFRAD didn't seem to work, nov 2, 1994.
apply INTER keyword to FT_LIMB call as well, AMcA, Apr. 1, 1995.
[Previous]
[Next]
NAME:
GEN_OLD_STRUCT
PURPOSE:
Define the following general database structures
* GEN_2101_Index_Rec
CALLING SEQUENCE:
GEN_OLD_STRUCT
HISTORY:
written by Mons Morrison, Fall 90.
[Previous]
[Next]
NAME:
GEN_STRUCT
PURPOSE:
Define the following general database structures
* Pointer_Rec
* File_Header_Rec
* QS_General1_Rec
* GEN_Index_rec
* GEN2_Index_rec
* MO_Disk_Map_Rec
* MO_Disk_Log_Rec
CALLING SEQUENCE:
GEN_STRUCT
CALLED BY:
GET_SDA, MK_BSC_STR [1], MK_BSC_STR [2], Rd_Pointer [1], Rd_Pointer [2]
Rd_fHeader [1], Rd_fHeader [2], Rd_fHeader [3], kluge_att, mk_att [1], mk_att [2]
mk_evn [1], mk_evn [2], mk_fem_file [1], mk_fem_file [2], mk_gbl, mk_gev [1]
mk_gev [2], mk_gsn_obs, mk_gx, mk_mo_log, mk_nar [1], mk_nar [2], mk_orb_file, mk_pnt
mk_sd2, mk_sdl, mk_sl [1], mk_sl [2], mk_sot, mk_ssl, mk_sxc, mk_sxl, mk_week1_file
mk_week_file [1], mk_week_file [2], pnt2atr, rd_obs, rd_old_obs, rd_roadmap [1]
sav_bda, sav_bsc, sav_hxi, sav_sda [1], sav_sda [2], sav_sda [3], wrtsxtmap
HISTORY:
written by Mons Morrison, Fall 90.
9-Mar-95 (MDM) - Added documentation comments
- (Compression of the data section)
[Previous]
[Next]
NAME:
GenTimes
Purpose:
Create a list of times equal in length to the input
data structure.
CALLING SEQUENCE:
times = GenTimes( a, stru)
Input:
a Structure format for the times values
stru input data structure
Output:
GenTimes returns the just the time infomation
from the input structure.
History:
written 10-Apr-91 by GAL
[Previous]
[Next]
NAME:
get1gbo
PURPOSE:
To get a single GBO image closest to a given time
SAMPLE CALLING SEQUENCE:
img = get1gbo('gkm', '1-sep-92') ;Kitt peak magnetogram
img = get1gbo('g*h', '1-jan-92') ;H-alpha from any site
img = get1gbo(['g*m', 'g*h']) ;latest mag or h-alpha any site
INPUTS:
prefix - The prefixes to use of the GBO file name
OPTIONAL INPUT:
time - The time of interest (want the closest GBO image to that time)
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], FILE_SELTIME, GBO_MASK, RFITS2 [1]
RFITS2 [2], STR2ARR [1], STR2ARR [2], anytim2ints [1], anytim2ints [2]
anytim2weeks [1], anytim2weeks [2], break_file [4], fid2ex [1], fid2ex [2]
file_list [1], file_list [2], get_gol_site, int2secarr [1], int2secarr [2]
ut_time [1], ut_time [2]
CALLED BY:
LAY1GKM, fl_suntoday [1], fl_suntoday [2], fl_suntoday [3], gbo_obs_coord
get_newsoon, mk_sun_mosaic, msok_poi_copy [1], msok_poi_copy [2], sun_today [1]
sun_today [2], sun_today [3]
OPTIONAL KEYWORD INPUT:
correct - If set, then correct the image for limb darkening / plate
scale size.
**** /CORRECT IS NOT AVAILABLE RIGHT NOW ****
window - The window in days +/- the input time which is accecptable
to match on an image
mask - If set, then call GBO_MASK to mask out text written on the
image.
OUTPUT:
img - The image as read from the file. If there is no match on
directories or prefixes, it returns a 0 byte.
OPTIONAL KEYWORD OUTPUT:
file - The GBO file name selected
head - The FITS header for the image
dattim - The date/time of the image selected (structure format)
delta - The number of days between the requested time and the
date/time of the image found
site - Site string
scale - Passed to RFITS to scale the image
HISTORY:
Written 20-Sep-94 by M.Morrison
20-Sep-94 (MDM) - Added SITE output
20-Sep-94 (MDM) - Added SCALE option
29-Sep-94 (MDM) - Expanded to use "gbd_list" instead of
"gbd" alone.
[Previous]
[Next]
NAME:
Get1st
Purpose:
Find and return the first time from a list of times,
using the external format.
CALLING SEQUENCE:
firstTime = Get1st(time)
Input:
time list of times in external format
Returned:
first or earliest time in external format.
CALLED BY:
AdjUsrTim
History:
written 25-Apr-90 by GAL
updated 21-June-91 for SOLAR-A
[Previous]
[Next]
NAME:
GET72
PURPOSE:
To remove line numbers which are attatched to Fortran programs on
mainframe computers.
CALLING SEQUENCE:
get72
get72,infile,outfile
INPUT:
none
OPTIONAL INPUT:
infile - Specify input filename as a first argument.
outfile - Specify output filename as a second argument.
If 'outfile' is not set, then a file infile.72 is
created.
OPTIONAL KEYWORD INPUT:
replace - If set, then infile (=original file) will be
replaced by the outfile.
savelines - If set, then number of output columns of each line
is specified.
fill - If set, then strtrim(*,0) is not performed.
del_space - If set, then trailing space in each line is removed.
OUTPUT:
OPTIONAL KEYWORD OUTPUT:
SIDE EFFECTS:
An output file is written.
HISTORY:
version 1.0 94.08.08 (Mon) T.Sakao written at KSC.
version 1.1 94.09.19 (Mon) Options savelines and fill added.
version 1.2 95.06.09 (Fri) Option del_space was added.
[Previous]
[Next]
Procedure to load the wavelength calibration of SXV bins into
IDL variable. To extend the CMB calibration table to cover all bins
it does a linear fit to the wavelengths and extrapolates out to cover
128 bins. Should only be used for qualitative work eg realistic looking
plots.
Output:
x_15 - array of approximate SXV wavelengths
Use:
IDL> get_15,x_15
CDP Feb 92
RDB 13-Mar-93 Changed $DIR_BCS_CALDAT to $DIR_BCS_CAL
CALLS:
CALLED BY
bcs_survey
[Previous]
[Next]
Procedure to load the wavelength calibration of CaXIX bins into
IDL variable. To extend the CMB calibration table to cover all bins
it does a linear fit to the wavelengths and extrapolates out to cover
128 bins. Should only be used for qualitative work eg realistic looking
plots.
Output:
x_19 - array of approximate CaXIX wavelengths
Use:
IDL> get_19,x_19
CDP Feb 92
RDB 13-Mar-93 Changed $DIR_BCS_CALDAT to $DIR_BCS_CAL
CALLS:
CALLED BY
bcs_survey
[Previous]
[Next]
Procedure to load the wavelength calibration of FeXXV bins into
IDL variable. To extend the CMB calibration table to cover all bins
it does a linear fit to the wavelengths and extrapolates out to cover
256 bins. Should only be used for qualitative work eg realistic looking
plots.
Output:
x_25 - array of approximate FeXXV wavelengths
Use:
IDL> get_25,x_25
CDP Feb 92
RDB 13-Mar-93 Changed $DIR_BCS_CALDAT to $DIR_BCS_CAL
CALLS:
CALLED BY
bcs_survey
[Previous]
[Next]
Procedure to load the wavelength calibration of FeXXVI bins into
IDL variable. To extend the CMB calibration table to cover all bins
it does a linear fit to the wavelengths and extrapolates out to cover
256 bins. Should only be used for qualitative work eg realistic looking
plots.
Output:
x_26 - array of approximate FeXXVI wavelengths
Use:
IDL> get_26,x_26
CDP Feb 92
RDB 13-Mar-93 Changed $DIR_BCS_CALDAT to $DIR_BCS_CAL
CALLS:
CALLED BY
bcs_survey
[Previous]
[Next]
Name:
get_active_reg
Purpose:
search through roadmap and extract only the datasets
that are the same active region
Input:
roadmap - roadmap (or index.sxt)
Input/Output:
iref - starting image to use as a reference
CALLS: ***
Periph, fmt_tim [1], fmt_tim [2]
History:
Written Fall 91 by M.Morrison
[Previous]
[Next]
NAME:
get_ads
PURPOSE:
To read the ADS file from the mainframe
CALLING SEQUENCE:
get_ads, infil
INPUT:
infil - The filename on the mainframe
CALLED BY:
do_ads
Example: "PSK239.SAADF.A9206(T2200003)"
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], FILE_EXIST [2], concat_dir [4]
file_exist [1], file_exist [3], mail [1], mail [2], rd_tfile [1], rd_tfile [2]
str_replace [1], str_replace [2], tim2dset [1], tim2dset [2]
OPTIONAL KEYWORD INPUT:
outdir - The output directory for the file
odisk - If set, correct infile for Optical Disk conv.
KEYWORD OUTPUT:
fail - Equals 1 if failed (otherwise = 0)
HISTORY:
Written 18-Jul-92 by M.Morrison
27-Aug-92 (MDM) - Added fail keyword
2-Sep-92 (slf) - modified get_ads for FACOM2
added odisk keyword
14-Sep-92 (slf) - added main2 keyword
9-Oct-92 (slf) - change password
20-Oct-92 (slf) - changed name from get_ads2 to get_ads
27-Oct-92 (slf) - chmod 666 for all
10-Nov-92 (slf) - changed account info
13-Nov-92 (slf) - changed account info (dedicated ads account)
force use of 133.74.2.3 (main2 keyword has no effect
change naming convention for old files
25-Nov-92 (slf) - change node due to ISAS HW upgrades
30-Nov-92 (MDM) - changed FTP command to use ' around file name
27-Jan-92 (slf) - modified ftp commands for MTL access
8-Dec-93 (SLF) - change password - add code to mail warning when
password about to expire (once per session via common)
1-Jun-94 (SLF) - update password
18-Nov-94 (SLF) - update password
16-may-95 (slf) - read this from a file
[Previous]
[Next]
NAME:
get_ads
PURPOSE:
To read the ADS file from the mainframe
CALLING SEQUENCE:
get_ads, infil
INPUT:
infil - The filename on the mainframe
CALLED BY:
do_ads
Example: "PSK239.SAADF.A9206(T2200003)"
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], GET_ADS239, concat_dir [4]
str_replace [1], str_replace [2]
OPTIONAL KEYWORD INPUT:
outdir - The output directory for the file
odisk - If set, correct infile for Optical Disk conv.
KEYWORD OUTPUT:
fail - Equals 1 if failed (otherwise = 0)
HISTORY:
Written 18-Jul-92 by M.Morrison
27-Aug-92 (MDM) - Added fail keyword
2-Sep-92 (slf) - modified get_ads for FACOM2
added odisk keyword
14-Sep-92 (slf) - added main2 keyword
9-Oct-92 (slf) - change password
20-Oct-92 (slf) - changed name from get_ads2 to get_ads
27-Oct-92 (slf) - chmod 666 for all
10-Nov-92 (slf) - changed account info
13-Nov-92 (slf) - changed account info (dedicated ads account)
force use of 133.74.2.3 (main2 keyword has no effect
change naming convention for old files
25-Nov-92 (slf) - change node due to ISAS HW upgrades
[Previous]
[Next]
NAME:
get_afile_size
PURPOSE:
Return a list of file sizes for input files.
CALLING SEQUENCE:
fn_sz = get_afile_size(infn [, wid=wid,
xbd_path=xbd_path])
fn_sz list of returned file sizes in bytes
infn input list of file names. Note: Do not
include path with file names.
wid optional output list of weekid's for the
input files.
Optional Input:
xbd_path path to xbd files if $DIR_GEN_XBD is not
defined or used.
hdr header record to tape dir-file
drecs data records to tape dir-file
(Note: if hdr and drecs are defined the weekly IDs
are not recovered and the "infn" list is check against
the given "drecs".)
CALLS: ***
Rd_TapDir, UNIQ [1], UNIQ [2], UNIQ [3], fid2ex [1], fid2ex [2], tim2orbit [1]
tim2orbit [2], weekid [1], weekid [2], weekid [3], yod_sz [1], yod_sz [2]
CALLED BY:
archive_ck [1], archive_ck [2], dbase2disk, flares2disk, go_rdtap [1]
go_rdtap [2], mo_check, mo_patch, prep_week [1], prep_week [2], yo_arch_size
HISTORY:
written 15-Sep-92, gal
minor update 17-Sept-92
minor update 19&20-July-93, gal
[Previous]
[Next]
NAME:
get_ar
PURPOSE:
To list NOAA Active Region data for a specified active region
CALLING SEQUENCE:
nar_data = get_ar(7430)
INPUT:
ar_num - NOAA active region number
OUTPUT:
Structure for nar data
CALLS: ***
RD_NAR, anytim2ints [1], anytim2ints [2], dd792ex, fmt_tim [1], fmt_tim [2]
gt_day [1], gt_day [2], int2secarr [1], int2secarr [2], prstr [1], prstr [2]
HISTORY:
Written 08-Aug-96 by G. Slater
[Previous]
[Next]
NAME:
get_atomic
PURPOSE:
Return a data structure with atomic data parameters
for requested BCS channel.
CALLING SEQUENCE:
ato_data = get_atomic(Chan)
w_wave = get_atomic(Chan,/w_wave) ; Return wavelength of w-line
w_wave = get_atomic(Chan,/z_wave) ; Return wavelength of z-line
INPUTS:
Chan = BCS Channel Number or structure (Must be a scalar)
OPTIONAL INPUT KEYWORDS:
w_wave = If set, only return the wavelength of the w line
Also, x_wave, y_wave, z_wave, q_wave, j_wave, k_wave
atocal = Def=Max value present. Specifies alternative atomic calculation.
If atomic data file has already been read, and atocal is
NOT specified, then previously read data will be returned.
atocal=5 and chan=4 will cause susec5.dat to be read.
atocal=4 and chan=4 will cause susec4.dat to be read, etc.
new = If /new is set, forces a read of the file even if it has been
previously read.
OUTPUTS:
The functional result is structure containing the atomic data parameters
METHOD:
Reads ascii data files contained in $DIR_GEN_SPECTRA
The files have the following names: susec3.dat, casec3.dat, fesec3.dat, f26sec3.dat
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONCAT_DIR [1], CONCAT_DIR [2]
CONCAT_DIR [3], GT_BSC_CHAN [1], GT_BSC_CHAN [2], STR2ARR [1], STR2ARR [2]
break_file [4], concat_dir [4], rd_atodat [1], rd_atodat [2], str_replace [1]
str_replace [2]
CALLED BY:
bcs_broad [1], bcs_broad [2], bcs_funct, bcs_line, bcs_velres, bsc_bin2w, cal_bsc
MODIFICATION HISTORY:
7-oct-93, J. R. Lemen (LPARL), Written
8-feb-94, JRL, Changed the way the file name is specified via the atocal parameter
11-mar-94, JRL, Added x_wave,y_wave,z_wave,q_wave switches
15-Mar-94, DMZ, changed to avoid file search each time
15-mar-94, JRL, Additional changes to avoid file search
23-mar-94, JRL, Fix bug introduced by concat_dir for VMS
2-jan-96, JRL, Added the /new keyword. Used for debugging purposes.
[Previous]
[Next]
NAME:
get_atr
PURPOSE:
Given a set of input times, return the single ATT data record
closest to that time.
CALLING SEQUENCE:
get_atr, index, atr
get_atr, index, atr, offset=offset
INPUT:
tim_in - The input time(s) in any of the 3 standard formats
CALLS: ***
anytim2ints [1], anytim2ints [2], rd_atr, tim2dset [1], tim2dset [2]
tim2orbit [1], tim2orbit [2]
OPTIONAL KEYWORD INPUT:
OUTPUT:
atr - The ATT data structure
OPTIONAL KEYWORD OUTPUT:
offset - The number of seconds that the matching ATT data is off
from the input time(s)
HISTORY:
Written 11-Aug-93 by M.Morrison (Using GET_PNT as starting point)
13-Sep-93 (MDM) - Modified slightly
9-sep-94 JPW from get_att
[Previous]
[Next]
NAME:
get_att
PURPOSE:
Given a set of input times, return the single ATT data record
closest to that time.
CALLING SEQUENCE:
get_att, index, att
get_att, index, att, offset=offset, min_status=2
INPUT:
tim_in - The input time(s) in any of the 3 standard formats
CALLS: ***
UNIQ [1], UNIQ [2], UNIQ [3], anytim2ints [1], anytim2ints [2], int2secarr [1]
int2secarr [2], rd_att, tim2dset [1], tim2dset [2], tim2orbit [1], tim2orbit [2]
CALLED BY:
Check the ATT database vs the SXC limb fit database to look for bad
get_roll, sxt_cen [1], sxt_cen [2]
OPTIONAL KEYWORD INPUT:
min_status - The minimum acceptable ATT status
ATT.STATUS1 = 1: plain S/C commanded value used, no dejittering with IRU.
= 2: S/C commanded value dejittered with IRU.
= 4: HXA value dejittered with IRU. Standard result, good.
Most of the ATT data should be STATUS1 = 4.
OUTPUT:
att - The ATT data structure
OPTIONAL KEYWORD OUTPUT:
offset - The number of seconds that the matching ATT data is off
from the input time(s)
HISTORY:
Written 11-Aug-93 by M.Morrison (Using GET_PNT as starting point)
13-Sep-93 (MDM) - Modified slightly
19-Nov-93 (MDM) - Added MIN_STATUS option
18-May-95 (MDM) - Modified the logic to not loop through on a
per orbit basis if the time span requested is
4 days or less
- Adjusted code to call TIM2DSET once per orbit
not once per input time (TIM2DSET is called only
once if the time span is less than 4 days)
- Both actions sped up the routine considerably
15-Aug-95 (MDM) - Corrected a bug where there the time span requested
is less than 4 days, but the times are not sent
in in increasing time order. The bug was introduced
18-May-95 while trying to speed up the routine.
[Previous]
[Next]
Name: get_bcs
Purpose: read time selected bda files ->standard struct
Method:
User selects time interval; uses rd_bda for selected records.
Call:
get_bcs,filelist,index,data,dp_sync [channel=4][/all]
Inputs:
filelist - string array of filenames (e.g. from yohkoh_files)
Keyword Input:
channel - channel to use for lightcurve selection (def: 3, Ca XIX)
all - if set, read all records (no selection)
Outputs:
index - standard bda index records
data - standard bda data records
dp_sync - dp_sync records
CALLS: ***
BOX_MESSAGE, FMT_TIMER [1], FMT_TIMER [2], RD_BDA [1], RD_BDA [2], RD_BDA_DP
Rd_Roadmap [2], data_chk [1], data_chk [2], gt_total_cnts [1], gt_total_cnts [2]
plot_lcur [1], plot_lcur [2], rd_roadmap [1]
History:
5-Nov-1999 - R.D.Bentley - standard BCS read routine...
9-Nov-1999 RDB corrected error in reading dp_sync data
24-Nov-1999 RDB return if null filelist supplied
[Previous]
[Next]
NAME:
get_bcscal
PURPOSE:
to find BCS crystal calibration file
CALLING SEQUENCE:
get_bcscal,chan,calfil
INPUTS:
chan - channel number (1-4)
OUTPUTS:
full name of CALFIL for specified channel
OPTIONAL OUTPUT KEYWORDS:
version = version number of CAL file
(this is equal to the file extension)
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONCAT_DIR [1], CONCAT_DIR [2]
CONCAT_DIR [3], GT_BSC_CHAN [1], GT_BSC_CHAN [2], break_file [4], concat_dir [4]
CALLED BY:
RD_BCSCAL [1], RD_BCSCAL [2]
PROCEDURE:
Return the name of the BCS cal file.
File is assumed to have the form Channel
$DIR_BCS_CAL/bcsa1.ver_number 1
$DIR_BCS_CAL/bcsa2.ver_number 2
$DIR_BCS_CAL/bcsa1.ver_number 3
$DIR_BCS_CAL/bcsa1.ver_number 4
HISTORY:
Written Oct. 1992 by D. Zarro (Applied Research Corp).
Modified Mar'93 (Zarro ARC), to include new DIR_BCS_CAL
Modified May 93 (CDP, RAL), Add $ signs to directory logicals
and trap non-use of version variable.
4-nov-93, J. R. Lemen (LPARL), Rewritten. Changed to aways get
most recent version on $DIR_BCS_CAL
[Previous]
[Next]
NAME:
get_bcsdat
PURPOSE:
Extract the bins associated with a given channel
from the data matrix
CALLING SEQUENCE:
dd = get_bcsdat(index, data, chan)
dd = get_bcsdat(index, data, chan, n)
dd = get_bcsdat(index, data, chan, /lastbin)
INPUT:
index - BDA index
data - BDA data array
chan - Channel number (1,2,3,4) where
1 = Fe XXVI
2 = Fe XXV
3 = Ca XIX
4 = S XV
OPTIONAL INPUT:
lastbin - If present, return the last bin. Default
is not to return the last bin since it is
the "catch-all" for all events of unknown
energy
OPTIONAL OUTPUT:
nbins - the number of bins in the extracted spectra
OUTPUT:
Returns a matrix (or 1-D vector) of the bins
RESTRICTIONS:
Currently restricted to have all of the modes to have
identical modeIDs.
HISTORY:
Written by M.Morrison 7-Mar-92
Modified and renamed from EXT_BCSCHAN by D. Zarro Oct'92.
- to issue warning in event of mode change
- removed REFORM
[Previous]
[Next]
Name: get_boolean_flags
PURPOSE: convert a list of selected indices to a complete
list of boolean flags.
Formal Parameters:
nframes number of frames/flags
idx list of selected frames
Return:
flist a list of flags (nframes long) with
true values for selected indices (idx)
CALLED BY:
comp_sfr_arch
History:
written 12-Oct-95, GAL
[Previous]
[Next]
NAME:
get_box_avg
PURPOSE:
To get the average for a box subset of an image
CALLING SEQUENCE:
out = get_box_avg(data, xc, yc, xwin, ywin)
out = get_box_avg(data, xc, yc, xwin, ywin, ntot=ntot)
INPUT:
data - a data array (2-D or 3-D)
xc - center of window (line #)
yc - center of window (column #)
xwin - box size in pixels
ywin - box size in pixels (if not defined, use xwin)
OUTPUT:
returns a scalar or an array of the averages
OPTIONAL KEYWORD OUTPUT:
ntot - the number of pixels binned (the window might
have gone off the edge of the data array)
CALLED BY:
mk_sot
HISTORY:
Written 20-Apr-92 by M.Morrison
[Previous]
[Next]
NAME:
GET_BSA_ANS
PURPOSE:
get BSA processing options
CALLING SEQUENCE:
bsa_ans=get_bsa_ans(wid=wid)
OUTPUTS:
BSA_ANS - structure with options selected
OPTIONAL INPUT KEYWORDS:
WID - use widget option
CHANS,ACCUM, THRESH - channels, accumulations (secs), thresholds (counts)
CALLS: ***
MATCH [1], MATCH [2], MATCH [3], STR2ARR [1], STR2ARR [2], WBSA [1], WBSA [2]
mk_bsa_ans
CALLED BY:
MK_BSC [1], MK_BSC [2]
HISTORY:
1-Apr-93, written DMZ (ARC)
12-Apr-94, added additional keywords
16-Jun-94, added more error checking of inputs
17-Mar-97, made NO to interpolate deadtime, and YES to compute error the defaults
[Previous]
[Next]
NAME:
GET_BSA_ANS
PURPOSE:
get BSA processing options
CALLING SEQUENCE:
bsa_ans=get_bsa_ans(wid=wid)
OUTPUTS:
BSA_ANS - structure with options selected
OPTIONAL INPUT KEYWORDS:
WID - use widget option
CHANS,ACCUM, THRESH - channels, accumulations (secs), thresholds (counts)
CALLS: ***
MATCH [1], MATCH [2], MATCH [3], STR2ARR [1], STR2ARR [2], WBSA [1], WBSA [2]
mk_bsa_ans
CALLED BY:
MK_BSC [1], MK_BSC [2]
HISTORY:
1-Apr-93, written DMZ (ARC)
12-Apr-94, added additional keywords
16-Jun-94, added more error checking of inputs
[Previous]
[Next]
NAME:
GET_BSC
PURPOSE:
extract specific data products from BSC data
CALLING SEQUENCE:
data=get_bsc(bsc_index,bsc_data)
INPUTS:
bsc_data = bsc_data structure
bsc_index = bsc_index structure
KEYWORDS
chan = channel to extract
tstart = string start time to extract (def = start of data)
tend = string end time to extract (def = start of data)
name of field to extract:
counts = counts (per unit bin)
wave = wavelength array (A)
bin = physical bin positions
error = uncertainties in counts
flux = flux (ph cm-2 s-1 A-1)
eflux = uncertainties in flux
accum = accumulation time of spectrum
time = spectrum time (secs since start of day)
rate = count rate for selected channel
index = usual index
PROCEDURE:
Examines tags in BSC index and data structures.
e.g. to extract the FLUX field from channel 3:
IDL> FLUX=GET_BSC(BSC_INDEX,BSC_DATA,CHAN=3,/FLUX)
CALLS: ***
BSC_CHECK [1], BSC_CHECK [2], CHKARG, GT_BSC_BINCAL [1], GT_BSC_BINCAL [2]
GT_BSC_CRATE, GT_BSC_FLUX, GT_BSC_TIME, GT_BSC_WAVE [1], GT_BSC_WAVE [2], SEL_BSC
RESTRICTIONS:
Only 1-2 field keywords can be set at a time
HISTORY:
Written Apr'93 by D. Zarro (ARC)
6-Oct-94, Zarro, fixed bug in call to SEL_BSC
[Previous]
[Next]
NAME:
get_bsc_anno
PURPOSE:
Return text strings from BSC_INDEX to be used for Plot Annotation
CALLING SEQUENCE:
anno_str_arr = get_bsc_anno(index)
anno_str_arr = get_bsc_anno(index,/atomic) ; Returns just the atomic code information
anno_str_arr = get_bsc_anno(index,/uncert) ; Include uncertainties
INPUTS:
index = BSC index or the AINFO structure from bcs_spec
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], BSC_CHECK [1], BSC_CHECK [2]
DATATYPE [1], DATATYPE [2], DATATYPE [3], GT_BSC_CHAN [1], GT_BSC_CHAN [2]
STR2ARR [1], STR2ARR [2], bcs_broad [1], bcs_broad [2], break_file [4], bsc_vturb
fmt_tim [1], fmt_tim [2]
CALLED BY:
WBSC_LTC_EV [1], WBSC_LTC_EV [2], WBSC_SPC_EV [1], WBSC_SPC_EV [2]
bsc_spec_plot [1], bsc_spec_plot [2]
Note: the index structure must have a length of 1
OPTIONAL INPUT KEYWORDS:
atomic = If set, returns the atomic code information
vunit = If set, return broadening widths in velocity units
uncert = If set, include uncertainty in the fitting parameters
RETURNS:
A string array is returned. If input is the BSC_index, the 0'th element
of the output string array will contain a string with information about the
BCS channel number, the time and accumulation time.
MODIFICATION HISTORY:
7-oct-93, J. R. Lemen, Written
27-oct-93, JRL, Fixed the format for velocity
9 -dec-93, DMZ, added VUNIT switch; changed SHIFT to WSHIFT in output
21-Jun-94, DMZ, further propagated vunit switch
4-Jul-94, JRL, Added the uncertainty option
18-Oct-94, DMZ, made VUNIT apply to blueshifted cmpt
[Previous]
[Next]
NAME:
get_bsc_wtype
PURPOSE:
get widget type
CALLING SEQUENCE:
wtype=get_bsc_wtype(event)
INPUTS:
event = widget event number
OUTPUTS:
wtype=type of widget (base, button, slider, etc)
PROCEDURE
examines tag names in event and widget_id structures
CALLS: ***
WIDG_TYPE
CALLED BY:
WBSC_FIT_EV [1], WBSC_FIT_EV [2], WBSC_FPAR_EV [1], WBSC_FPAR_EV [2]
WBSC_LTC_EV [1], WBSC_LTC_EV [2], WBSC_SPC_EV [1], WBSC_SPC_EV [2]
HISTORY:
Zarro (ARC) - written Oct'93
[Previous]
[Next]
NAME: GET_BSD v0.9
PURPOSE: Read BSD files into IDL
CALLING SEQUENCE: GET_BSD
INPUTS: none - all prompted for
OUTPUTS: Data structures as described in BSD_STRUCT.PRO
bsd_header - header of file
bsd_rdmap - roadmap
bsd_index - record headers
bsd_data - bins/counts/wave
OPTIONAL OUTPUTS: none
RESTRICTIONS:
PROCEDURE: calls in order
bcs_getfile
rd_bsd_header
rd_bsd_rdmap
rd_bsd_data
MODIFICATION HISTORY:
JTM: (24 Oct 91) Blatant ripoff of test_rd
JTM: (13 Jan 92) Fixed so that files with
less than 4 channels can be read
ATP: (13 may 92) Updated to use new structures.
ATP: (6 july 92) changed bcs_getfile.pro
ATP: (7/7/92) Several fixes
[Previous]
[Next]
NAME: GET_BTH v0.9
PURPOSE: Read BTH files into IDL
CALLING SEQUENCE: GET_BTH
INPUTS: none - all prompted for
OUTPUTS: Data structures as described in SPC_STRUCT.PRO
spc_header - header of file
spc_rdmap - roadmap
spc_index - record headers
spc_data - bins/counts/wave
OPTIONAL OUTPUTS: none
RESTRICTIONS: The spc file is expanded into data structures
that parallel the original bsd file. Many of
the entries will be blank, where there are no
fits. header.numthe is actual number of spectra
PROCEDURE: calls in order
bcs_getfile
rd_spc_header
rd_spc_rdmap
rd_spc_data
MODIFICATION HISTORY:
JTM: (24 Oct 91) Blatant ripoff of test_rd
JTM: (13 Jan 92) Fixed so that files with
less than 4 channels can be read
ATP: (13 may 92) Updated to use new structures.
ATP: (6 july 92) changed for SPC files
ATP: (7/7/92) header, fixes, /data_only qualifier
[Previous]
[Next]
CALLED BY
halp halphaprep, halpha_prep
[Previous]
[Next]
NAME:
get_closest
PURPOSE:
for each element of the reference vector, search in vector vec for its
closest value. Returns a vector of indices.
CATEGORY:
CALLING SEQUENCE:
index = get_closest(vec,ref)
INPUTS:
vec = vector to be searched.
ref = reference vector
OUTPUTS:
index = index pointing to vec for each element of ref.
KEYWORDS (Input):
/wrap . With this option, the program uses ref modulo 24*60*60*1000
(-> ref lt 1 day in msec).
CALLED BY:
GETCAL_ATT [1], GETCAL_ATT [2], chk_flares [1], chk_flares [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
PROCEDURE:
MODIFICATION HISTORY:
JPW,
[Previous]
[Next]
Name: get_daily
Purpose: read image from daily_forecast area
Optional Keyword Parameters:
testing - if set, look at test directory (default standard daily direct)
display - if set, display image and header to window
file - explicit file name (default pops up a menu for selection)
select - if set, user menu (default is most recent if file undefined)
Output Paramters
image - daily forecast image (bytarr(512,512))
text - text string (info_array format)
Calling Sequence:
get_daily [image, text, /display , /testing, file=FILENAME]
Calling Examples:
get_daily ; display most receent composite image
get_daily, image, text, /display ; same, but return image and text
get_daily ,/select ; select from menu + display
get_daily, image, text, /testing ; look at test directory instead
get_daily, image, text. file=FILENAME ; user specified file to read
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], FILE_EXIST [2], concat_dir [4]
file_exist [1], file_exist [3], file_list [1], file_list [2], get_logenv [1]
get_logenv [2], stepper_title [1], stepper_title [2], wmenu_sel [1]
wmenu_sel [2]
History:
23-Jun-1994 (SLF)
26-Jun-1994 (SLF) minor - allow environmental DIR_SITE_FORECAST
28-Jun-1994 (SLF) SELECT kywrd, display if called with no positional
parameters, default is most recent composite
29-Jun-1994 (SLF) modifiy examples to match yesterdays modifications
[Previous]
[Next]
NAME:
get_data_rec
PURPOSE:
Return the proper data structure for the given version
number for ATT and WBS data structures
CALLING SEQUENCE:
data0 = get_data_rec('ada', pointer)
INPUT:
dtype - The data type ('ADA' or 'WBS')
pointer - the pointer stucture for the file
OUTPUT:
Returns the data structure
CALLED BY:
RD_ADA, RD_ADA_DATA
HISTORY:
Written 7-Mar-92 by M.Morrison
[Previous]
[Next]
NAME:
get_dc_image
PURPOSE:
Given an index or roadmap structure, match and
extract the closest dark current image for that exposure
CALLING SEQUENCE:
get_dc_image, index(3), dc_index, dc_data
get_dc_image, roadmap, dc_index, dc_data, imap
get_dc_image, xxx, dc_index, dc_data, times=times, res=res, dpe=dpe
get_dc_image, xxx, dc_index, dc_data, times='1-sep-92 1:00', res=0, dpe=15
unc_data = 1 ;YOU HAVE TO Pass in a defined variable to get uncertainties
get_dc_image, index(3), dc_index, dc_data, unc_data=unc_data
INPUT:
struct_in - An index or roadmap structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
OUTPUT:
index - The dark current index structure
data - The dark current image DECOMPRESSED
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
KEYWORD OUTPUT:
match_qual - The quality of the match. It is a structure with
the following fields.
.dpe = # of DPE levels away from the actual
0 is perfect match, positive means DC
is longer exposure than requested.
.time = the number of days from the requested day.
positive is for DC images taken past
the time of the input image
CALLED BY:
COMPOSITE, GO_FIND_LIM2, dark_sub [1], dark_sub [2], dark_sub [3], mk_desat
mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], sxt_clean [1], sxt_clean [2]
OPTIONAL KEYWORD INPUT:
times - MANUAL METHOD: A list of input times (any of 3 standard
formats)
res - MANUAL METHOD: The resolution required (0=full res,
1=half res, 2=quarter res)
dpe - MANUAL METHOD: The DPE level (exposure level)
nodata - If set, just return the DC_INDEX and IMAP, do not read
the data.
dc_interpolate - If set, then perform interpolation on the dark frame
images to get a better backround subtraction. Deafult is to
take the image closest in exposure.
interpolate - Same as /DC_INTERPOLATE
orbit_correct - Use the orbital correction (must also specify the
interpolate keyword for this to work).
OPTIONAL KEYWORD INPUT/OUTPUT:
unc_data - The uncertainty in the dark current, due to
decompression and interpolation. Note that this will only
be calculated if some non-zero variable is passed in using
this keyword.
METHOD:
The program will try to make an exact match to the exposure
level passed. If it cannot match, it will take the next exposure
larger which is available.
If the images requested for extraction match the images that are
passed in, then the data file is not read again.
GET_DC_IMAGE can be called manually by passing "times", "res"
and "dpe" using the keywords. All three need to be passed, however
it is possible to pass an array of times, but have res or dpe
be a scalar.
HISTORY:
Written 20-Apr-92 by M.Morrison
21-Apr-92 (MDM) - General mods/additions
1-May-92 (MDM) - Fixed trouble with "bad_match" option
15-Oct-92 (MDM) - Added /NODATA option
6-May-93 (MDM) - Modified to work on VMS (call FILE_LIST)
10-Jun-93 (MDM) - Slight modification to the /NODATA option
8-Jul-93 (MDM) - Modified to check DC_ROADMAP variable instead of
DC_INFIL variable to determine if need to read SDC
roadmap
16-Aug-93 (MDM) - Expanded search criteria such that for full resolution
PFI and ORs, it looks to get the FFI image which
will most likely overlap the PFI/OR (this is because
the FFI FR images are taken in 1024x512 strips).
18-Aug-93 (MDM) - Changed to use DIR_SXT_SDC
24-Aug-93 (MDM) - Adjusted criteria for FR search so that it works on
older data when there was only one FR dark image per set
V3.00 24-Aug-93 (MDM) - Extracted much of the selection code into the routine
SEL_DC_IMAGE (allowed cooled and warm to go through
one routine)
- Added TEMP_INPUT option
- Added /INTERPOLATE option
25-Aug-93 (MDM) - Use EXT_SUBIMG3
- Modification since SEL_DC_IMAGE now returns the
MK_DSET_STR structure (speeds up access to data file)
V3.01 1-Sep-93 (MDM) - Corrected code for case where SEL_DC_IMAGE does not
return a proper image
V3.02 7-Sep-93 (MDM) - Corrected error for when it is called for long time
spans. It was using the same image over the whole
span when the characteristics matched.
V3.03 16-Dec-93 (MDM) - Modified SEL_DC_IMAGE to not chose dark images on
the "other side" of 13-Nov-92
- Corrected code for case where no matches are found
V3.04 14-Jan-94 (MDM) - Added code to not crash if no SDC datasets are available
- Added /DC_INTERPOLATE option
- Added QERR
V3.05 3-Jun-94 (MDM) - Modification to not crash when no SDC datasets are
available AND the /INTERPOLATE option is set.
21-Sep-94 (MDM) - Updated documention header
V3.06 30-Nov-94 (MDM) - Updated SEL_DC_IMAGE logic quite a bit
- Logic changed so that the first exposure shorter and
longer than the input exposure is selected during
/DC_INTERPOLATE
- Modification to not perform interpolation if the
DPE of the exposure found matches identically.
Did it by checking MATCH_QUAL.DPE - easy!
V3.07 1-Dec-94 (MDM) - Changed the logic on printing messages about
insufficient DC images available
1-Dec-94 (MDM) - Added /FLOAT option
15-Dec-94 (MDM) - Modified to have /INTERPOLATE option work with
input specified manually
V3.08 15-Dec-94 (MDM) - Modified to have the DC_INDEX DPE/FilterA/ExpDur
updated accordingly if interpolation was used.
V3.09 7-Feb-95 (MDM) - Updated to use GT_EXPDUR with the /SHUTDUR when
finding out exposure factor when doing interpolation.
8-feb-95 (jmm) - Added UNC_DATA keyword, for uncertainty calculation
V3.10 27-Feb-95 (MDM) - Put McTiernan changes on-line
2-Mar-95 (SLF) - protect agains udata0 not defined (why??)
2-Mar-95 (MDM) - Define UDATA0 for case where a scalar dark current
value is used.
V3.11 2-Feb-98 (TRM) - Added tfactor variable to account for the orbital
variation of the dark current.
23-Mar-99 (TRM) - Added tfms to set of criteria which determines if
images can use the same dark frame, when
/orbit_correct is set. This was a bug fix.
Changed the critera to a string from long so that
tfms would fit.
02-Apr-1999 (TRM) Added week id into the val test so that new images
are selected when a week bounday is crossed.
11-Jan-2001 (LWA) [message, 'Interpolation of dark images
enabled', /info] commented out.
3-Dec_2001 (LWA) Commented out "perfect match" print statement.
[Previous]
[Next]
NAME:
get_dc_image
PURPOSE:
Given an index or roadmap structure, match and
extract the closest dark current image for that exposure
CALLING SEQUENCE:
get_dc_image, index(3), dc_index, dc_data
get_dc_image, roadmap, dc_index, dc_data, imap
get_dc_image, xxx, dc_index, dc_data, times=times, res=res, dpe=dpe
get_dc_image, xxx, dc_index, dc_data, times='1-sep-92 1:00', res=0, dpe=15
unc_data = 1 ;YOU HAVE TO Pass in a defined variable to get uncertainties
get_dc_image, index(3), dc_index, dc_data, unc_data=unc_data
INPUT:
struct_in - An index or roadmap structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
OUTPUT:
index - The dark current index structure
data - The dark current image DECOMPRESSED
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
KEYWORD OUTPUT:
match_qual - The quality of the match. It is a structure with
the following fields.
.dpe = # of DPE levels away from the actual
0 is perfect match, positive means DC
is longer exposure than requested.
.time = the number of days from the requested day.
positive is for DC images taken past
the time of the input image
CALLS: ***
DC_ORBIT_CORRECT, RD_XDA [1], RD_XDA [2], UNIQ [1], UNIQ [2], UNIQ [3], ext_subimg3
fmt_tim [1], fmt_tim [2], get_res_offset, gt_corner, gt_day [1], gt_day [2], gt_dpe
gt_expdur [1], gt_expdur [2], gt_pfi_ffi, gt_res, gt_shape, gt_time [1], gt_time [2]
his_index, int2secarr [1], int2secarr [2], sel_dc_image [1], sel_dc_image [2]
sel_dc_image [3], str_copy_tags [1], str_copy_tags [2], str_copy_tags [3]
str_copy_tags [4], sxt_decomp [1], sxt_decomp [2], sxt_uvf_info [1]
sxt_uvf_info [2], sxt_uvf_info [3], tim2weekid, update_dpe
CALLED BY:
COMPOSITE, GO_FIND_LIM2, dark_sub [1], dark_sub [2], dark_sub [3], mk_desat
mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], sxt_clean [1], sxt_clean [2]
OPTIONAL KEYWORD INPUT:
times - MANUAL METHOD: A list of input times (any of 3 standard
formats)
res - MANUAL METHOD: The resolution required (0=full res,
1=half res, 2=quarter res)
dpe - MANUAL METHOD: The DPE level (exposure level)
nodata - If set, just return the DC_INDEX and IMAP, do not read
the data.
dc_interpolate - If set, then perform interpolation on the dark frame
images to get a better backround subtraction. Deafult is to
take the image closest in exposure.
interpolate - Same as /DC_INTERPOLATE
orbit_correct - Use the orbital correction (must also specify the
interpolate keyword for this to work).
OPTIONAL KEYWORD INPUT/OUTPUT:
unc_data - The uncertainty in the dark current, due to
decompression and interpolation. Note that this will only
be calculated if some non-zero variable is passed in using
this keyword.
METHOD:
The program will try to make an exact match to the exposure
level passed. If it cannot match, it will take the next exposure
larger which is available.
If the images requested for extraction match the images that are
passed in, then the data file is not read again.
GET_DC_IMAGE can be called manually by passing "times", "res"
and "dpe" using the keywords. All three need to be passed, however
it is possible to pass an array of times, but have res or dpe
be a scalar.
HISTORY:
Written 20-Apr-92 by M.Morrison
21-Apr-92 (MDM) - General mods/additions
1-May-92 (MDM) - Fixed trouble with "bad_match" option
15-Oct-92 (MDM) - Added /NODATA option
6-May-93 (MDM) - Modified to work on VMS (call FILE_LIST)
10-Jun-93 (MDM) - Slight modification to the /NODATA option
8-Jul-93 (MDM) - Modified to check DC_ROADMAP variable instead of
DC_INFIL variable to determine if need to read SDC
roadmap
16-Aug-93 (MDM) - Expanded search criteria such that for full resolution
PFI and ORs, it looks to get the FFI image which
will most likely overlap the PFI/OR (this is because
the FFI FR images are taken in 1024x512 strips).
18-Aug-93 (MDM) - Changed to use DIR_SXT_SDC
24-Aug-93 (MDM) - Adjusted criteria for FR search so that it works on
older data when there was only one FR dark image per set
V3.00 24-Aug-93 (MDM) - Extracted much of the selection code into the routine
SEL_DC_IMAGE (allowed cooled and warm to go through
one routine)
- Added TEMP_INPUT option
- Added /INTERPOLATE option
25-Aug-93 (MDM) - Use EXT_SUBIMG3
- Modification since SEL_DC_IMAGE now returns the
MK_DSET_STR structure (speeds up access to data file)
V3.01 1-Sep-93 (MDM) - Corrected code for case where SEL_DC_IMAGE does not
return a proper image
V3.02 7-Sep-93 (MDM) - Corrected error for when it is called for long time
spans. It was using the same image over the whole
span when the characteristics matched.
V3.03 16-Dec-93 (MDM) - Modified SEL_DC_IMAGE to not chose dark images on
the "other side" of 13-Nov-92
- Corrected code for case where no matches are found
V3.04 14-Jan-94 (MDM) - Added code to not crash if no SDC datasets are available
- Added /DC_INTERPOLATE option
- Added QERR
V3.05 3-Jun-94 (MDM) - Modification to not crash when no SDC datasets are
available AND the /INTERPOLATE option is set.
21-Sep-94 (MDM) - Updated documention header
V3.06 30-Nov-94 (MDM) - Updated SEL_DC_IMAGE logic quite a bit
- Logic changed so that the first exposure shorter and
longer than the input exposure is selected during
/DC_INTERPOLATE
- Modification to not perform interpolation if the
DPE of the exposure found matches identically.
Did it by checking MATCH_QUAL.DPE - easy!
V3.07 1-Dec-94 (MDM) - Changed the logic on printing messages about
insufficient DC images available
1-Dec-94 (MDM) - Added /FLOAT option
15-Dec-94 (MDM) - Modified to have /INTERPOLATE option work with
input specified manually
V3.08 15-Dec-94 (MDM) - Modified to have the DC_INDEX DPE/FilterA/ExpDur
updated accordingly if interpolation was used.
V3.09 7-Feb-95 (MDM) - Updated to use GT_EXPDUR with the /SHUTDUR when
finding out exposure factor when doing interpolation.
8-feb-95 (jmm) - Added UNC_DATA keyword, for uncertainty calculation
V3.10 27-Feb-95 (MDM) - Put McTiernan changes on-line
2-Mar-95 (SLF) - protect agains udata0 not defined (why??)
2-Mar-95 (MDM) - Define UDATA0 for case where a scalar dark current
value is used.
V3.11 2-Feb-98 (TRM) - Added tfactor variable to account for the orbital
variation of the dark current.
23-Mar-99 (TRM) - Added tfms to set of criteria which determines if
images can use the same dark frame, when
/orbit_correct is set. This was a bug fix.
Changed the critera to a string from long so that
tfms would fit.
02-Apr-1999 (TRM) Added week id into the val test so that new images
are selected when a week bounday is crossed.
11-Jan-2001 (LWA) [message, 'Interpolation of dark images
enabled', /info] commented out.
3-Dec_2001 (LWA) Commented out "perfect match" print statement.
[Previous]
[Next]
NAME:
get_dc_image
PURPOSE:
Given an index or roadmap structure, match and
extract the closest dark current image for that exposure
CALLING SEQUENCE:
get_dc_image, index(3), dc_index, dc_data
get_dc_image, roadmap, dc_index, dc_data, imap
get_dc_image, xxx, dc_index, dc_data, times=times, res=res, dpe=dpe
get_dc_image, xxx, dc_index, dc_data, times='1-sep-92 1:00', res=0, dpe=15
unc_data = 1 ;YOU HAVE TO Pass in a defined variable to get uncertainties
get_dc_image, index(3), dc_index, dc_data, unc_data=unc_data
INPUT:
struct_in - An index or roadmap structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
OUTPUT:
index - The dark current index structure
data - The dark current image DECOMPRESSED
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
KEYWORD OUTPUT:
match_qual - The quality of the match. It is a structure with
the following fields.
.dpe = # of DPE levels away from the actual
0 is perfect match, positive means DC
is longer exposure than requested.
.time = the number of days from the requested day.
positive is for DC images taken past
the time of the input image
CALLS: ***
DC_ORBIT_CORRECT, RD_XDA [1], RD_XDA [2], UNIQ [1], UNIQ [2], UNIQ [3], ext_subimg3
fmt_tim [1], fmt_tim [2], get_res_offset, gt_corner, gt_day [1], gt_day [2], gt_dpe
gt_expdur [1], gt_expdur [2], gt_pfi_ffi, gt_res, gt_shape, gt_time [1], gt_time [2]
his_index, int2secarr [1], int2secarr [2], sel_dc_image [1], sel_dc_image [2]
sel_dc_image [3], str_copy_tags [1], str_copy_tags [2], str_copy_tags [3]
str_copy_tags [4], sxt_decomp [1], sxt_decomp [2], sxt_uvf_info [1]
sxt_uvf_info [2], sxt_uvf_info [3], tim2weekid, update_dpe
CALLED BY:
COMPOSITE, GO_FIND_LIM2, dark_sub [1], dark_sub [2], dark_sub [3], mk_desat
mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], sxt_clean [1], sxt_clean [2]
OPTIONAL KEYWORD INPUT:
times - MANUAL METHOD: A list of input times (any of 3 standard
formats)
res - MANUAL METHOD: The resolution required (0=full res,
1=half res, 2=quarter res)
dpe - MANUAL METHOD: The DPE level (exposure level)
nodata - If set, just return the DC_INDEX and IMAP, do not read
the data.
dc_interpolate - If set, then perform interpolation on the dark frame
images to get a better backround subtraction. Deafult is to
take the image closest in exposure.
interpolate - Same as /DC_INTERPOLATE
orbit_correct - Use the orbital correction (must also specify the
interpolate keyword for this to work).
OPTIONAL KEYWORD INPUT/OUTPUT:
unc_data - The uncertainty in the dark current, due to
decompression and interpolation. Note that this will only
be calculated if some non-zero variable is passed in using
this keyword.
METHOD:
The program will try to make an exact match to the exposure
level passed. If it cannot match, it will take the next exposure
larger which is available.
If the images requested for extraction match the images that are
passed in, then the data file is not read again.
GET_DC_IMAGE can be called manually by passing "times", "res"
and "dpe" using the keywords. All three need to be passed, however
it is possible to pass an array of times, but have res or dpe
be a scalar.
HISTORY:
Written 20-Apr-92 by M.Morrison
21-Apr-92 (MDM) - General mods/additions
1-May-92 (MDM) - Fixed trouble with "bad_match" option
15-Oct-92 (MDM) - Added /NODATA option
6-May-93 (MDM) - Modified to work on VMS (call FILE_LIST)
10-Jun-93 (MDM) - Slight modification to the /NODATA option
8-Jul-93 (MDM) - Modified to check DC_ROADMAP variable instead of
DC_INFIL variable to determine if need to read SDC
roadmap
16-Aug-93 (MDM) - Expanded search criteria such that for full resolution
PFI and ORs, it looks to get the FFI image which
will most likely overlap the PFI/OR (this is because
the FFI FR images are taken in 1024x512 strips).
18-Aug-93 (MDM) - Changed to use DIR_SXT_SDC
24-Aug-93 (MDM) - Adjusted criteria for FR search so that it works on
older data when there was only one FR dark image per set
V3.00 24-Aug-93 (MDM) - Extracted much of the selection code into the routine
SEL_DC_IMAGE (allowed cooled and warm to go through
one routine)
- Added TEMP_INPUT option
- Added /INTERPOLATE option
25-Aug-93 (MDM) - Use EXT_SUBIMG3
- Modification since SEL_DC_IMAGE now returns the
MK_DSET_STR structure (speeds up access to data file)
V3.01 1-Sep-93 (MDM) - Corrected code for case where SEL_DC_IMAGE does not
return a proper image
V3.02 7-Sep-93 (MDM) - Corrected error for when it is called for long time
spans. It was using the same image over the whole
span when the characteristics matched.
V3.03 16-Dec-93 (MDM) - Modified SEL_DC_IMAGE to not chose dark images on
the "other side" of 13-Nov-92
- Corrected code for case where no matches are found
V3.04 14-Jan-94 (MDM) - Added code to not crash if no SDC datasets are available
- Added /DC_INTERPOLATE option
- Added QERR
V3.05 3-Jun-94 (MDM) - Modification to not crash when no SDC datasets are
available AND the /INTERPOLATE option is set.
21-Sep-94 (MDM) - Updated documention header
V3.06 30-Nov-94 (MDM) - Updated SEL_DC_IMAGE logic quite a bit
- Logic changed so that the first exposure shorter and
longer than the input exposure is selected during
/DC_INTERPOLATE
- Modification to not perform interpolation if the
DPE of the exposure found matches identically.
Did it by checking MATCH_QUAL.DPE - easy!
V3.07 1-Dec-94 (MDM) - Changed the logic on printing messages about
insufficient DC images available
1-Dec-94 (MDM) - Added /FLOAT option
15-Dec-94 (MDM) - Modified to have /INTERPOLATE option work with
input specified manually
V3.08 15-Dec-94 (MDM) - Modified to have the DC_INDEX DPE/FilterA/ExpDur
updated accordingly if interpolation was used.
V3.09 7-Feb-95 (MDM) - Updated to use GT_EXPDUR with the /SHUTDUR when
finding out exposure factor when doing interpolation.
8-feb-95 (jmm) - Added UNC_DATA keyword, for uncertainty calculation
V3.10 27-Feb-95 (MDM) - Put McTiernan changes on-line
2-Mar-95 (SLF) - protect agains udata0 not defined (why??)
2-Mar-95 (MDM) - Define UDATA0 for case where a scalar dark current
value is used.
V3.11 2-Feb-98 (TRM) - Added tfactor variable to account for the orbital
variation of the dark current.
23-Mar-99 (TRM) - Added tfms to set of criteria which determines if
images can use the same dark frame, when
/orbit_correct is set. This was a bug fix.
Changed the critera to a string from long so that
tfms would fit.
02-Apr-1999 (TRM) Added week id into the val test so that new images
are selected when a week bounday is crossed.
11-Jan-2001 (LWA) [message, 'Interpolation of dark images
enabled', /info] commented out.
3-Dec_2001 (LWA) Commented out "perfect match" print statement.
[Previous]
[Next]
NAME:
get_dc_rate
PURPOSE:
For a given time(s) return the dark current rate in full res DN/sec
CALLING SEQUENCE:
dc_rate = get_dc_rate(roadmap(0))
dc_rate = get_dc_rate('1-jan-92', /hr)
INPUT:
input1 - The time(s) in any of the 3 standard formats
CALLS: ***
int2secarr [1], int2secarr [2]
CALLED BY:
dark_sub [1], dark_sub [2], dark_sub [3]
OPTIONAL KEYWORD INPUT:
hr - If set, return in HR DN/Sec
qr - If set, return in QR DN/Sec
OUTPUT:
Returns dark current rate in full resolution DN per second
HISTORY:
Written 14-Oct-92 by M.Morrison
[Previous]
[Next]
NAME:
get_dc_warm
PURPOSE:
Given an index structure, match and extract the closest dark
current image for that exposure (look at DPE, resolution, and
temperature)
CALLING SEQUENCE:
get_dc_image, index(3), dc_index, dc_data
INPUT:
struct_in - An index structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
Unlike "get_dc_image", this routine will not
accept the roadmap as input (the temperature is
not stored in the roadmap).
OUTPUT:
index - The dark current index structure
data - The dark current image
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
KEYWORD OUTPUT:
match_qual - The quality of the match. It is a structure with
the following fields.
.dpe = # of DPE levels away from the actual
0 is perfect match, positive means DC
is longer exposure than requested.
.time = the number of days from the requested day.
positive is for DC images taken past
the time of the input image
.temp = the number of degress of the match it is.
METHOD:
The program will try to make an exact match to the exposure
level passed. If it cannot match, it will take the next exposure
larger which is available.
If the images requested for extraction match the images that are
passed in, then the data file is not read again.
CALLS: ***
RD_XDA [1], RD_XDA [2], UNIQ [1], UNIQ [2], UNIQ [3], file_list [1], file_list [2]
gt_dpe, gt_res, gt_temp_ccd, int2secarr [1], int2secarr [2]
CALLED BY:
GO_FIND_LIM2
HISTORY:
Written 26-Apr-92 by M.Morrison (using "get_dc_image" as a start)
1-May-92 (MDM) - Fixed trouble with "bad_match" option
25-Jan-93 (MDM) - Return a zero value when no match is found for
data and for index
6-May-93 (MDM) - Modified to work with VMS (used FILE_LIST)
18-Aug-93 (MDM) - Changed directory to DIR_SXT_SDW
[Previous]
[Next]
NAME:
get_def
PURPOSE:
Returns a string containing a definintion of the variable passed
CATEGORY:
CALLING SEQUENCE:
get_def(var)
INPUTS:
var = variable whose definition is found
OPTIONAL INPUT PARAMETERS:
none
KEYWORD PARAMETERS
str_name_only = Specify only the name of structures in the definition.
This is useful to avoid errors when a structure might
be defined twice.
OUTPUTS:
string containing the definition of the variable
CALLED BY:
BFITS, DO_TEEM, add2str [1], add2str [2], substruc
COMMON BLOCKS:
None
SIDE EFFECTS:
none
RESTRICTIONS:
none
PROCEDURE:
Uses the output from the SIZE command to generate the definition,
Structures are defined recursively.
MODIFICATION HISTORY:
TRM 5/91
TRM 11/92 o Returns strings as 'SSSSS' rather than "hello" to account
for spaces which previously got removed.
o Works correctly for arrays of structures now
[Previous]
[Next]
NAME:
get_del_pnt
PURPOSE:
Given a set of input times, find the offset in pointing
due to S/C pointing changes relative to a reference.
SAMPLE CALLING SEQUENCE:
offset = get_del_pnt(index)
INPUT:
times - A set of times in an of the 3 standard formats
OPTIONAL INPUT:
ref - The reference time to use for finding the offsets
relative to. If not passed, it will use the first
time in the input array.
OUTPUT:
returns a vector 3xN of offsets in arcseconds relative to the
reference time of the S/C commanded pointing changes.
(0) = East/West with East negative
(1) = North/South with South negative
(2) = Roll (
It does not take into account the 1 arcminute drift in pointing
generally seen over an orbit. Changes in the pointing bias value
are taken into account.
CALLS: ***
INTERPOL, anytim2ints [1], anytim2ints [2], int2secarr [1], int2secarr [2]
rd_pnt_hist
CALLED BY:
XMOVIE_SFM, sxt_cmd_pnt
HISTORY:
Written 30-Nov-92 by M.Morrison
[Previous]
[Next]
Name: get_dirtree
Purpose: given a dir. path return a list of files from a tree
starting at that point. The list of files have the
fully qualified path.
Calling:
files = get_dirtree(dpath, sizes=sizes, totsize=totsize)
CALLS: ***
file_list [1], file_list [2], file_size [1], file_size [2], get_subdirs [1]
get_subdirs [2]
CALLED BY:
prep_gendat
History: written, 29-Aug-95, GAL
[Previous]
[Next]
NAME:
get_dn_rate
PURPOSE:
Return the Day/night status, rate and saa status for EVENT items
INPUTS:
event = The event structure from op_get_event
OUTPUTS:
dn = Byte array 0: Night, 1: Day
rate = Byte array 0: High, 1: Med
saa = Byte array 0: No SAA, 1: in SAA
CALLS: ***
ADDTIME [1], ADDTIME [2], BSORT [1], BSORT [2], BSORT [3], BSORT [4], Ex2Int [1]
Ex2Int [2], STR2ARR [1], STR2ARR [2], contact_sum, fmt_pass, fmt_tim [1]
fmt_tim [2], input [1], input [2], make_32 [1], make_32 [2], op_saa_med [1]
op_saa_med [2], save_event [1], save_event [2], str_replace [1], str_replace [2]
valid_pass4 [1], valid_pass4 [2]
CALLED BY:
make_32 [2], op_saa_med [1], op_saa_med [2], valid_pass4 [1], valid_pass4 [2]
MODIFICATION HISTORY:
14-jun-94, JRL, Written
24-jun-94, JRL, Fixed a bug which caused rate/saa/dn to be not checked
until after KSC Pass 2
28-feb-97, JRL, Define initial night times as -1
7-mar-97, JRL, Use actual (+55) or disabled DAY OGs (-55) to define Day
[Previous]
[Next]
NAME:
get_dn_rate
PURPOSE:
Return the Day/night status, rate and saa status for EVENT items
INPUTS:
event = The event structure from op_get_event
OUTPUTS:
dn = Byte array 0: Night, 1: Day
rate = Byte array 0: High, 1: Med
saa = Byte array 0: No SAA, 1: in SAA
CALLS: ***
ADDTIME [1], ADDTIME [2], BSORT [1], BSORT [2], BSORT [3], BSORT [4], Ex2Int [1]
Ex2Int [2], STR2ARR [1], STR2ARR [2], contact_sum, fmt_pass, fmt_tim [1]
fmt_tim [2], input [1], input [2], make_32 [1], make_32 [2], op_saa_med [1]
op_saa_med [2], save_event [1], save_event [2], str_replace [1], str_replace [2]
valid_pass4 [1], valid_pass4 [2]
CALLED BY:
make_32 [2], op_saa_med [1], op_saa_med [2], valid_pass4 [1], valid_pass4 [2]
MODIFICATION HISTORY:
14-jun-94, JRL, Written
24-jun-94, JRL, Fixed a bug which caused rate/saa/dn to be not checked
until after KSC Pass 2
[Previous]
[Next]
Name: get_doc
Purpose: retrieve a subset of idl header info. in a standard structure
Input Parameters:
modules - string or string array of idl module names
Output Paramters:
function returns a vector of documentation structures
Optional Keyword Parameters:
quiet - if set, no output (just return documentation structures)
summ - if set, brief output (fmt_doc(doc_str)) - default
full - if set, full header is printed
Method:
calls get1doc for each element of modules
Calling Sequence: docstrs=get_doc(modules)
CALLS:
[Previous]
[Next]
NAME:
get_elapse_time
PURPOSE:
Calls elapse_time to get Non-night times between Yohkoh pases or
non-SAA times between ASCA passes.
CALLING SEQUENCE:
new_use_code = get_elapse_time(pass,use_code,elapse_total,elapse_exclude,$
time_elaps [,/asca,/optomize])
INPUTS:
pass - The DSN pass structure
use_code - Vector describing use of the pass (1=use the pass)
RETURNS:
If the /optomize switch is set, new_use_code is updated, otherwise,
the input use_code is returned with 3 set to 1.
OUTPUTS:
elapse_total - Total time between pases (but not included the pass itself)
elapse_exclude- elapse_total - T_SAA for ASCA or elapse_total - T_Night for Yohkoh
time_elaps - String vector that is used for the output format.
OPTIONAL INPUT PARAMETERS:
asca - If set, will process the ASCA contacts, otherwise, process Yohkoh.
optomize - If set, call dsn_pass_opt to optimize pass slection
MODIFICATION HISTORY:
4-aug-94, J. R. Lemen (LPARL), Written.
[Previous]
[Next]
NAME:
get_elemabun
PURPOSE:
Return elemental abundances. H = 1, He = (approx) .2, etc.
CALLING SEQUENCE:
abun = get_elemabun() ; Return default
abun = get_elemabun(Num,info=info) ; info is an information string
INPUTS:
Num = Number of the abundance values to use. See data statements
below for the descriptions.
OPTIONAL INTPUT KEYWORDS:
verbose = Give some information while running
OPTIONAL OUTPUT KEYWORDS:
Info = Information string
7-Oct-93, J. R. Lemen (LPARL), Written
CALLS:
CALLED BY
bcs_line
[Previous]
[Next]
Purpose: for a given date, and filter combination,
return the file names for all sfcs of that filter
combination in that epoch.
CALLS: ***
BOX_MESSAGE, FILE2TIME, RD_XDA [1], RD_XDA [2], anytim [1], anytim [2], anytim [3]
anytim [4], anytim [5], get_logenv [1], get_logenv [2], get_yo_dates [1]
get_yo_dates [2], get_yo_dates [3], gt_filta, gt_filtb, sel_filetimes [1]
sel_filetimes [2], ssw_time_compare, sxt_cen [1], sxt_cen [2], ut_time [1]
ut_time [2]
History:
Circa Oct 2000 - Phil Shirts
9-Jan-2000 - S.L.Freeland - return null string if no SFC matches
(previous stopped via 'message' )
8-May-2001 - S.L.Freeland - add a sort on output files
(epoch 5 spans millenum = y2K non chronological)
17-jul-2001 - S.L.Freeland - add /POINTING_CONSTRAINT
[Previous]
[Next]
Purpose: for a given date, and filter combination,
return the file names for all sfcs of that filter
combination in that epoch.
CALLS: ***
BOX_MESSAGE, FILE2TIME, RD_XDA [1], RD_XDA [2], anytim [1], anytim [2], anytim [3]
anytim [4], anytim [5], get_logenv [1], get_logenv [2], get_yo_dates [1]
get_yo_dates [2], get_yo_dates [3], gt_filta, gt_filtb, sel_filetimes [1]
sel_filetimes [2], ssw_time_compare, sxt_cen [1], sxt_cen [2], ut_time [1]
ut_time [2]
History:
Circa Oct 2000 - Phil Shirts
9-Jan-2000 - S.L.Freeland - return null string if no SFC matches
(previous stopped via 'message' )
8-May-2001 - S.L.Freeland - add a sort on output files
(epoch 5 spans millenum = y2K non chronological)
17-jul-2001 - S.L.Freeland - add /POINTING_CONSTRAINT
[Previous]
[Next]
Name:
get_expdur
Purpose:
Calculate the actual exposure duration of an image. The
returned value is in millisec.
Input:
index - the SXT index structure (ie: index, not index.sxt)
OPTIONAL INPUT:
shutdur - If this keyword is set, the SHUTTER duration is
returned, not the effective exposure duration
which takes into account the 8% mask.
Output:
returns - the measured exposure duration (in msec)
OPTIONAL OUTPUT:
exp_expdur - the expected exposure duration (in msec)
dpe - DP exposure level
Modification History
Written 1-Oct-91 by M.Morrison
6-Nov-91 (MDM) - Added DPE output option
- Made the check for the 10% mask and adjusted
the exposure duration if present (this option
can be avoided by using the /SHUTDUR switch)
- Removed option to pass "expdur" and "explev"
separately
13-Nov-91 MDM - Removed the routine - should use GT_DPE and
GT_EXPDUR instead.
CALLS:
[Previous]
[Next]
Name:
get_explat
Purpose:
Calculate the actual exposure latency of an image. The
returned value is in millisec.
Input:
explat - the exposure latency measured (from the
SXTE-U mailbox)
OR
the SXT index structure (ie: index, not index.sxt)
Modification History
Written 1-Oct-91 by M.Morrison
CALLED BY
mk_ssl
[Previous]
[Next]
NAME:
GET_FLARE_DISK
PURPOSE:
Find the flareN disk location of a given "infil" as returned
for example by YODAT.
CATEGORY:
Yohkoh
CALLING SEQUENCE:
disk = get_flare_disk(infil)
INPUTS:
string
OPTIONAL (KEYWORD) INPUT PARAMETERS:
ROUTINES CALLED
OUTPUTS:
filespec for HXT data, based on flareN disk names
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
Only does HXT data right now.
Only works at ISAS.
MODIFICATION HISTORY:
HSH, written 5-Aug-95
[Previous]
[Next]
Name:
get_fname
Purpose:
Call IDL findfile routine to get filename given a path.
Inputs:
path = String containing path a pattern for file search
Calling Sequence:
file_name = get_fname(path)
CALLS: ***
input [1], input [2]
Procedure:
Call findfile(path) and then display the results and prompt the
user to enter the index of the desired file.
Modification History:
written, 21-oct-91, JRL
updated, 11-nov-91, JRL; Don't request input if only one selection
[Previous]
[Next]
Name: get_fninfo
Purpose: decode and return fnmap information
Input Parameters:
fn - fnmap containing information for all instr.
Output - function returns array of file names
Output Parameters:
limits = 2D array [number files x 2]
Modification History; revision 1, slf, 10/13/91
CALLS: ***
STR2ARR [1], STR2ARR [2]
CALLED BY:
fnmap2file, mk_dset_str [1], mk_dset_str [2]
Restrictions: need to fill in other instruments
[Previous]
[Next]
NAME:
GET_FRAME_TIME
PURPOSE:
To obtain start or end time for HXT data. Thir program is a upgrade
version of GT_FRAME_TIME.
CALLING SEQUENCE:
xx = GET_FRAME_TIME(index, fr)
xx = GET_FRAME_TIME(index, fr, startfr=startfr, endfr=endfr, $
string_expression=string_expression)
INPUT:
index - HXT index.
CALLS: ***
MAKE_TIMSTR, anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2]
gt_day [1], gt_day [2], gt_dp_mode [1], gt_dp_mode [2], gt_dp_rate [1]
gt_dp_rate [2], gt_time [1], gt_time [2]
CALLED BY:
GT_FRAME_TIME, HXT_TIME2FRAME
OPTIONAL KEYWORD INPUT:
fr - Frame number ID (0,1,2,3) that specifies portion of a single
Major frame during the Flare Mode. Note that this variable
does not work for frames with Quiet mode. If omitted, then
fr = 0 is assumed.
startfr - Dummy option.
endfr - If set, then the accumulation end time will
be returned.
string_expression - If set, then the result is returned with the
string format. Default is to be returned
with then INTS format (i.e., a structure
with .DAY and .TIME).
OUTPUT:
xx - INTS formatted time information.
CATEGORY:
Yohkoh HXT data analysis.
HISTORY:
version 1.0 98.06.25 (Thu) T.Sakao written.
1.1 98.06.26 (Fri) `fr' changed to an optional input.
[Previous]
[Next]
NAME:
get_gbo_pfi
PURPOSE:
Given a SXT PFI index and either the file name of a ground
based image, or the ground based image itself, GET_GBO_PFI will
extract the portion of the GBO image corresponding to the SXT PFI.
SAMPLE CALLING SEQUENCE:
gbo_img = get_gbo_pfi(index, gbo_fullimg, gbo_time)
gbo_img = get_gbo_pfi(index,'/yd5/gbo91_46a/gkm911116.1958')
METHOD/LIMITATIONS:
DSK_LOCB is called to find the center of the sun, so the GBO image must
be a full disk image and have a well defined limb.
INPUTS:
index - The SXT PFI index
input1 - The GBO file name. In this case, the date and time are extracted
from the file header so it must be the Yohkoh format for the file
name.
or
The actual GBO image.
input2 - The GBO date/time (only needed if "input1" is the GBO image
and not the file name).
OPTIONAL KEYWORD INPUTS:
mask - If set, then call GBO_MASK to "clean up" the GBO image
of writing on the image.
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], GBO_MASK, RFITS2 [1], RFITS2 [2]
anytim2ex [1], anytim2ex [2], break_file [4], coal_image, conv_p2h [1]
conv_p2h [2], data_type [1], data_type [2], dsk_locb, fid2ex [1], fid2ex [2]
get_rb0p [1], get_rb0p [2], gt_corner, gt_pix_size, gt_shape, track_h2a [1]
track_h2a [2], track_h2a [3]
HISTORY:
Written 12-Jan-94 by M.Morrison using Alan McAllister's GBO_PFI
routine as the conceptual starting point.
21-Mar-94 (SLF) Doc Header
[Previous]
[Next]
Name: get_goes_defsat
Purpose: return time dependent GOES satellite number
Input Parameters:
start_time - time or start time of range
stop_time - optional stop time (if range)
Output:
function returns time dependent GOES satellite number ("default")
Keyword Parameters:
check_sswdb - (switch) - if set, verify dbase is online
online (output) - boolean - 1 if dbase is available
string_return - (switch) - if set, output is string Sat#
CALLS: ***
anytim [1], anytim [2], anytim [3], anytim [4], anytim [5], reltime [1], reltime [2]
ssw_deltat
CALLED BY:
goes_plot [1], goes_plot [2], goes_plot [3], goes_plot [4], goes_plot [5]
rd_gxd [1], rd_gxd [2], rd_gxd [3]
History:
16-Apr-2003 - S.L.Freeland rd_gxd/plot_goes helper
[Previous]
[Next]
NAME:
get_gol_site
PURPOSE:
Given a GBO Observing Log structure or a string array, return
a the description of site
SAMPLE CALLING SEQUENCE:
a = get_gol_site(gol)
a = get_gol_site('h')
INPUT:
item - The input GOL structure or string
OUTPUT:
a string array the same length as the input with the description
of the site
CALLS: ***
help_prefix
CALLED BY:
get1gbo
HISTORY:
Written 21-Apr-93 by M.Morrison
[Previous]
[Next]
NAME:
get_gol_type
PURPOSE:
Given a GBO Observing Log structure or a string array, return
a the description of the image type
SAMPLE CALLING SEQUENCE:
a = get_gol_type(gol)
a = get_gol_type('h')
INPUT:
item - The input GOL structure or string
OUTPUT:
a string array the same length as the input with the description
of the image type
CALLS: ***
help_prefix
HISTORY:
Written 21-Apr-93 by M.Morrison
[Previous]
[Next]
NAME:
get_helio_dist
PURPOSE:
calculate/ store spot positions
in units of Mm on the solar surface (heliographic coords)
default - use magnetic field/white light data in IDL structure
format, as per standard in Hawaii Stokes/IVM data.
However, can be used with generic white-light image,
with additional information given.
Can remove previous points if necessary, can save image of
where you clicked, etc.
CATEGORY:
data analysis
CALLING SEQUENCE:
disarr=get_helio_dist(mag,year,month,day,hour,bin=bin,image=image,$
/contour,/polarity,/quiet,im_out=im_out,offset=offset)
INPUTS:
mag: magnetic field structure, *with pointing info!*
year: e.g. 1992
month: 0-12
day: 0-31
hour: decimal, eg 1.5 for 01:30
KEYWORD PARAMETERS:
contour = if set, then will contour the white-light (or image specified
with image keyword) - default is to tvscl...
quiet = if set, doesn't print out ephemeris info (default is to print)
origin = if set, then the lat,cmd position of the input image
is at the bottom left corner - else assumed at the center
polarity = if set, returned array includes polarity information:
-1 for negative vertical field, +1 for positive.
mag structure MUST have bz if this input is included
degrees = if set, assumes lat/cmd input in optional 'point' input
are in degrees, not radians (default)
OPTIONAL INPUTS:
image = if named, will bytscl or contour the named image under the grid
instead of the white-light image
bin = if set, the factor by which to bin up for displaying the image
overwritten by zoom.
zoom = if set, interpolates the data up by this factor. The
center of the (contour, spot image) is often better resolved
than the center of the pixel, so this avoids nasty jumps in
output.
point=array of pointing info, if 'mag' is not a magnetic field
structure, but an image. Array=[latitude,cmd,pixel_size]
where latitude and cmd are RADIANS N/W > 0 of either the
center pixel or a known pixel in conjunction with the
'offset' keyword. Pixel size is in arcsec/pixel
e.g. point=[0.3121,-0.0611,5.65]
offset = array telling where the known coordinate is, if not at
image center. must be consistent with frame_trans
at this point (origin at lower right corner.)
OUTPUTS:
disarr = array of spot positions relative to image center
in x,y (units of Mm) (fltarr(7,n) where n=number of
spots clicked upon: disarr(0,*) = point number (starting
at 0), disarr(1,*) = x-position and disarr(2,*) = y-position
if set:disarr(3,*)=spot polarity (+ or -1)
OPTIONAL OUTPUTS:
im_out = if named, returns a tvrd of the contour/image & points
CALLS: ***
GET_HEL_DIS, SIGN, SPECIALCT, SUN [1], SUN [2], frame_trans, set_xform [1]
set_xform [2]
COMMON BLOCKS:
SIDE EFFECTS:
sets color index 1 to red & index 2 to very dark red
RESTRICTIONS:
Needs functions:sign.pro
set_xform.pro
sun.pro
specialct.pro
frame_trans.pro
coord.pro
PROCEDURE:
Click the left button on the image/contour map displayed
to record the position of a feature. Position is indicated
on the image annotated with the point number, and the point
is stored in an array (in units of Mm from heliographic center
Click the middle button (anywhere in the frame) to delete
last point.
Click right button to exit, and array with positions is returned.
To save the image/contour used, the window is preserved
so that the user can save it using tvrd.
MODIFICATION HISTORY:
KDL, written November 1992
KDL, fixed x,y-grid problem 11/28/92
KDL, added delete-last-click feature 2/17/93
KDL, added polarity recording feature 2/17/93
KDL, added im_out, relative options (finally!) 5/3/93
KDL, cleaned up/compacted code (again, finally!) 5/10/93
and added non-mag structure options
KDL, added degrees and made it interpolate (zoom) 7/7/93
KDL, removed relative option, made offset handling better 4/2/94
[Previous]
[Next]
NAME: GET_HXT_CAL_WIDTHS
PURPOSE: Reads the database file giving the PHA channel widths (relative)
for each of 64 channels for each of 64 sensors
CATEGORY: YOHKOH/HXT
CALLING SEQUENCE: Widths = GET_HXT_CAL_WIDTHS()
CALLED BY:
CALLS: ***
BREAK_PATH [1], BREAK_PATH [2], BREAK_PATH [3], LOC_FILE [1], LOC_FILE [2]
LOC_FILE [3]
INPUTS:
none explicit,
OPTIONAL INPUTS:
none
OUTPUTS:
Widths: Result of the function, fltarr(64channels x 64 sensors)
OPTIONAL OUTPUTS:
none
CALLED BY:
HXT_CAL_FIX [1], HXT_CAL_FIX [2]
COMMON BLOCKS:
none
SIDE EFFECTS:
none
RESTRICTIONS:
none
PROCEDURE:
none
MODIFICATION HISTORY:
ras, 30-jan-1996
[Previous]
[Next]
NAME:
get_hxt_pos
PURPOSE:
To get the HXT flare position address. The options are
1. To read the $DIR_HXT_CAL/hxt_flare_pos.txt file to
see if the time is in that list.
2. Use the GOES heliocentric location to determine
the address
3. Use an SXT image index to define the address
4. Pass in heliocentric coordinates and convert them
5. Ask for user to specify HXT address directly
The default is to check in the order shown here until matches
are found.
SAMPLE CALLING SEQUENCE:
hxt_pos = get_hxt_pos(times)
hxt_pos = get_hxt_pos('20-dec-92 3:32', helio='N32W23')
hxt_pos = get_hxt_pos(sxt_struct=sxt_struct)
hxt_pos = get_hxt_pos(times, /get_sxt)
hxt_pos = get_hxt_pos(times, /get_goes)
OPTIONAL INPUTS:
times - The times that the HXT address is wanted.
OPTIONAL KEYWORD INPUTS:
get_sxt - If set, then read the SXT observing log, find the PFI
with the closest time, and convert from SXT coordinates
to HXT coordinates.
get_goes - If set, then read the GOES event log and find the
heliocentric coordinates of the flare event. Convert to
HXT address
nouser - If set, then do not ask the user for coordinates
helio - You can pass a heliocentric coordinate and date, and it
will derive the HXT address
sxt_struct - You can pass an SXT roadmap, index, or observing log
entry and it will calculate the HXT address from it.
OPTIONAL KEYWORD OUTPUT:
status - The status of finding the hxt address
-1: did not make a match
1: found it in the HXT flare list
2: found from an SXT image
3: found from the GOES event
4: found from a heliocentric coordinate which was
passed in.
5: user manually entered the value
CALLS: ***
CONV_P2HXT [1], CONV_P2HXT [2], GET_NBYTES, HXT_FLARE_POS, RD_GEV, anytim2ints [1]
anytim2ints [2], conv_h2p [1], conv_h2p [2], fmt_tim [1], fmt_tim [2], gt_center
input [1], input [2], int2secarr [1], int2secarr [2], rd_obs
CALLED BY:
HXT_AUTOIMG
HISTORY:
Written 20-Dec-93 by M.Morrison
[Previous]
[Next]
NAME:
get_index_ver
PURPOSE:
To look at the index structure and return the values for
all ".index_version" fields. It only looks for the field
one level down (ie: index.gen.index_version)
CALLING SEQUENCE:
a = get_index_ver(index)
INPUT:
index - an index structure
OUTPUT:
returns an integer array with the values. It will
be NxM where N is the number of nested structures that
have the field ".index_version" (typically 2) and M is
the number of index structures passed.
CALLS: ***
tag_index [1], tag_index [2]
CALLED BY:
RD_XDA [1], RD_XDA [2], rd_sdl, rd_sld, rd_sls, rd_sot
HISTORY:
Written 21-Mar-92 by M.Morrison
[Previous]
[Next]
NAME:
get_indices
PURPOSE
To return the indices of values in a large vector which
equal the values in a smaller vector. The program matchem
can be used to generate the smaller vector.
CALLING SEQUENCE
ii = get_indices(aa,bb)
INPUT
aa, bb - the two vectors, order not important.
OUTPUT
ii - the desired indice array.
HISTORY
1/24/96, LWA, written.
CALLED BY
conflx_binner
[Previous]
[Next]
Name: get_info
Purpose: decode Yohkoh index or roadmap information into string info_array
Input Paramters:
index - Yohkoh index or roadmap (scaler or vector)
Optional Input Keywords:
noninteractive = If set, does not prompt user, but only returns
the array. If infil is specified, the summary
is written to an output file.
longform = If set, also put out the percentage of the image
which is available, and the heliocentric coord.
itemnumber = If set, will compute the relative item number
from this starting value. If a vector is passed,
CALLS: ***
GET_INFO2, fmt_tim [1], fmt_tim [2], gt_dp_mode [1], gt_dp_mode [2]
gt_dp_rate [1], gt_dp_rate [2], str_is [1], str_is [2], where_arr [1]
where_arr [2]
CALLED BY:
CHECK_FOR_30S, FAXABLE_SFD, PATROL_ORDER, SDC_VERIFY, SFD_TEK, STEPPER [1]
STEPPER [2], STEPPER [5], STEPPER2 [1], STEPPER2 [2], THICK_FFI, XMOVIE_SFM
chk_pointing, cur_teemcursor Te and EM, fl_summary [1], fl_summary [2]
fl_summary [3], fl_suntoday [1], fl_suntoday [2], fl_suntoday [3], get_sfm
lastspd, mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_ssc [1], mk_ssc [2]
pr_teem, search_obs, sel_leak_image [1], sel_leak_image [3], sel_leak_image [4]
sfc_prep [1], sfc_prep [2], show_pix_event [1], show_pix_event [2]
show_pix_event [3], sun_today [1], sun_today [2], sun_today [3]
sxt_get_grill [1], sxt_get_grill [2], sxt_prep [1], sxt_prep [2], sxt_prep [3]
sxt_ssc2sss, sxt_ssn2fits [1], sxt_xsaa, tim2tfss, xsearch_obs, xso_search, xspr [1]
xspr [2], xsxt_prep_event
Restrictions:
just time and DP mode for non-SXT index input currently
Method:
driver (allow more intuitive get_info call to replace get_info2 call)
for sda, just calls get_info2
History: (SLF) 18-May-1993 (people were calling get_info, not get_info2)
16-Oct-93 (MDM) - Modified to recognized non-SXT roadmaps
9-Dec-93 (MDM) - Added /LONGFORM option (to be passed to GET_INFO2)
9-Sep-94 (GAL) - Added itemnumber option (passed to get_info2) and
documented all the optional inputs.
[Previous]
[Next]
NAME:
get_info
PURPOSE:
Decode time and exposure information and return in a string array.
INPUTS:
item = a structure of roadmaps, index, or observing log entries
OPTIONAL INPUT KEYWORDS:
infil = The input SDA file name. If present, the routine
prompts the user about writing an output file.
noninteractive = If set, does not prompt user, but only returns
the array. If infil is specified, the summary
is written to an output file.
longform = If set, also put out the percentage of the image
which is available, and the heliocentric coord.
itemnumber = If set, will compute the relative item number
from this starting value. If a vector is passed,
these values will be used instead of the default
relative item number.
OUTPUTS:
Returned is a string array containing various information.
CALLS: ***
GET_INFO2, fmt_tim [1], fmt_tim [2], gt_center, gt_comp, gt_conv2str [1]
gt_conv2str [2], gt_dp_mode [1], gt_dp_mode [2], gt_dp_rate [1], gt_dp_rate [2]
gt_dpe, gt_expmode, gt_filta, gt_filtb, gt_percentd, gt_percentover, gt_pfi_ffi
gt_res, gt_shape_cmd, tim2orbit [1], tim2orbit [2]
CALLED BY:
CHECK_FOR_30S, FAXABLE_SFD, PATROL_ORDER, SDC_VERIFY, SFD_TEK, STEPPER [1]
STEPPER [2], STEPPER [5], STEPPER2 [1], STEPPER2 [2], THICK_FFI, XMOVIE_SFM
chk_pointing, cur_teemcursor Te and EM, fl_summary [1], fl_summary [2]
fl_summary [3], fl_suntoday [1], fl_suntoday [2], fl_suntoday [3], get_sfm
lastspd, mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_ssc [1], mk_ssc [2]
pr_teem, search_obs, sel_leak_image [1], sel_leak_image [3], sel_leak_image [4]
sfc_prep [1], sfc_prep [2], show_pix_event [1], show_pix_event [2]
show_pix_event [3], sun_today [1], sun_today [2], sun_today [3]
sxt_get_grill [1], sxt_get_grill [2], sxt_prep [1], sxt_prep [2], sxt_prep [3]
sxt_ssc2sss, sxt_ssn2fits [1], sxt_xsaa, tim2tfss, xsearch_obs, xso_search, xspr [1]
xspr [2], xsxt_prep_event
HISTORY:
Written, 18-sep-91, JRL
Updated, 19-sep-91, JRL: Added noninteractive switch.
Updated, 7-Nov-91, MDM: Used a different printed format
Updated, 13-Nov-91, MDM - Used all "GT" routines so that it can be
used with index as well as roadmap
- Added DP_MODE/DP_RATE and changed to use
DPE and printed the duration
17-Apr-92 (MDM) - Added compression in short notation
10-Oct-93 (MDM) - Added /ORIG switch to GT_RES so that this
listing is always listing the original resolution
28-Oct-93 (MDM) - Added /LONGFORM option
9-Dec-93 (MDM) - Added SAA and TIM2NIGHT in the /LONG option
9-Sep-94 (GAL) - Added itemnumber=start_index switch so that the
first number in the listings can be manually set
to values other than the relative item number.
[Previous]
[Next]
NAME:
get_info
PURPOSE:
Decode time and exposure information and return in a string array.
INPUTS:
item = a structure of roadmaps, index, or observing log entries
OPTIONAL INPUT KEYWORDS:
infil = The input SDA file name. If present, the routine
prompts the user about writing an output file.
noninteractive = If set, does not prompt user, but only returns
the array. If infil is specified, the summary
is written to an output file.
OUTPUTS:
Returned is a string array containing various information.
CALLS: ***
GET_INFO3, fmt_tim [1], fmt_tim [2], gt_conv2str [1], gt_conv2str [2]
gt_dp_mode [1], gt_dp_mode [2], gt_dp_rate [1], gt_dp_rate [2], gt_dpe, gt_expmode
gt_filta, gt_filtb, gt_res, gt_shape_cmd
CALLED BY:
CHECK_FOR_30S, FAXABLE_SFD, PATROL_ORDER, SDC_VERIFY, SFD_TEK, STEPPER [1]
STEPPER [2], STEPPER [5], STEPPER2 [1], STEPPER2 [2], THICK_FFI, XMOVIE_SFM
chk_pointing, cur_teemcursor Te and EM, fl_summary [1], fl_summary [2]
fl_summary [3], fl_suntoday [1], fl_suntoday [2], fl_suntoday [3], get_sfm
lastspd, mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_ssc [1], mk_ssc [2]
pr_teem, search_obs, sel_leak_image [1], sel_leak_image [3], sel_leak_image [4]
sfc_prep [1], sfc_prep [2], show_pix_event [1], show_pix_event [2]
show_pix_event [3], sun_today [1], sun_today [2], sun_today [3]
sxt_get_grill [1], sxt_get_grill [2], sxt_prep [1], sxt_prep [2], sxt_prep [3]
sxt_ssc2sss, sxt_ssn2fits [1], sxt_xsaa, tim2tfss, xsearch_obs, xso_search, xspr [1]
xspr [2], xsxt_prep_event
HISTORY:
Written, 18-sep-91, JRL
Updated, 19-sep-91, JRL: Added noninteractive switch.
Updated, 7-Nov-91, MDM: Used a different printed format
Updated, 13-Nov-91, MDM - Used all "GT" routines so that it can be
used with index as well as roadmap
- Added DP_MODE/DP_RATE and changed to use
DPE and printed the duration
[Previous]
[Next]
NAME: GET_INFO_DARK
Purpose Get the time(s) of the dark image(s) used in dark_sub
Calling Sequence get_info_dark, index, dark_time0, dark_time1
dark_index0=1 & dark_data0=1 &
get_info_dark, index, dark_time0, dark_index0=dark_index0,$
dark_data0=dark_data0
Input index: Index of the dark_sub'ed image.
Can be a vector, but too large a vector may be
a problem when the optional outputs are specified.
Output dark_time0: Time of the first dark image. Internal representation.
If no interpolation is used in dark_sub, this represents
the dark image and dark_time1 is invalid.
dark_time1: Time of the second dark image in the case of
dc_interp in dark_sub.
Optional Output dark_index0: The index or indices of the dark image(s)
dark_data0: The dark image(s)
History 7-Aug-97 NN written
CALLED BY
pr_dark_time
[Previous]
[Next]
Name: get_info_lp
Purpose: decode LaPalma index or roadmap information into string info_array
Input Paramters:
index - Yohkoh index or roadmap (scaler or vector)
CALLS: ***
gt_time [1], gt_time [2], str_is [1], str_is [2]
CALLED BY:
STEPPER_LP
Restrictions:
just time and DP mode for non-SXT index input currently
Method:
driver (allow more intuitive get_info call to replace get_info2 call)
for sda, just calls get_info2
History: (SLF) 18-May-1993 (people were calling get_info, not get_info2)
16-Oct-93 (MDM) - Modified to recognized non-SXT roadmaps
9-Dec-93 (MDM) - Added /LONGFORM option (to be passed to GET_INFO2)
17-Jun-94 TS Revised for get_info_lp
[Previous]
[Next]
NAME:
get_ionbal
PURPOSE:
Return interpolated ionization fractions.
CALLING SEQUENCE:
ion_abun = get_ionbal(Z,Te6)
ion_abun = get_ionbal(Z,Te6,stages,ioncal=ioncal)
ion_abun = get_ionbal(Z,Te6,Nel=Nel,Elem=Elem, $
stages=stages1,ion_data=ion_data)
INPUTS:
Z = Atomic Number (e.g., 16 for S, 20 for Ca, 26 for Fe)
Te6 = Vector of electron temperatures in units of 1.e6 K
OPTIONAL INPUTS:
Stages = Vector of ionization stages. (XVIII = 18, etc.)
OPTIONAL INPUT KEYWORDS:
Nel = Number of electrons. Can be used instead of Stages.
For example, Nel=1 is H-like, Nel=He-like, etc.
ioncal = Ionization calculation to use (default is ioncal=0)
OUTPUTS:
The functional result is a 2-d array containing the fractional ion
abundances:
ion_abun = fltarr(N_elements(Te6),N_elements(Stages))
OPTIONAL OUTPUT KEYWORDS:
Element = The element (which is obtained from the last word in Head)
Stages = The ion stages returned
Ion_data = Data structure contain data read from the ascii data
file with the routine rd_ionbal
METHOD:
Reads ascii data files contained in $DIR_GEN_SPECTRA
The files have the following names: subal1.dat, cabal1.dat, febal1.dat
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], concat_dir [4], iionbal [1]
iionbal [2], rd_ionbal [1], rd_ionbal [2]
CALLED BY:
bcs_line
MODIFICATION HISTORY:
7-oct-93, J. R. Lemen (LPARL), Written
[Previous]
[Next]
Name: get_kbrd
Purpose: same as IDL get_kbrd unless SGI ( mabey future additions)
SGI appears to solicit bogus 255 from Xclients
CALLS:
[Previous]
[Next]
NAME:
get_ksc_holiday
PURPOSE:
Read the $DIR_GEN_ORBIT_RAW/ksc_holiday.dat data file
CALLING SEQUENCE:
get_ksc_holiday, start_times, stop_times, spacecraft
get_ksc_holiday, start_times, stop_times, spacecraft, /noasca
get_ksc_holiday, start_times, stop_times, spacecraft, /noasca, /cont
INPUTS:
None.
OUTPUTS:
start_times - Array of start times in Yohkoh internal structure format
stop_times - Array of stop times in Yohkoh internal structure format
spacecraft - Returns a string vector with 'SOLA' or 'ASTD' values.
message_str - Optional message string
OPTIONAL INPUT KEYWORDS:
noasca - If set, don't return ASCA holiday times
cont - If set, don't stop if there is a problem parsing the file.
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], DELVARX [1], DELVARX [2]
DELVARX [3], DELVARX [4], FILE_EXIST [2], STR2ARR [1], STR2ARR [2]
anytim2ints [1], anytim2ints [2], concat_dir [4], delvarx [5], file_exist [1]
file_exist [3], fmt_tim [1], fmt_tim [2], int2secarr [1], int2secarr [2]
rd_tfile [1], rd_tfile [2], wc_where [1], wc_where [2]
MODIFICATION HISTORY:
5-aug-94, J. R. Lemen LPARL, Written
[Previous]
[Next]
Name:
get_laser_type
Purpose:
determine what type of machine we are talking to SONY or PANASONIC
CALLED BY:
command_laser, go_lasdisk golaserdisk, go_lasdisk2 golaserdisk, laser_write
Note:
this expects the laser disk player/recorder to have a disk in, and
the motor running.
if it's a SONY, it will set it to frame recording mode
Calling Sequence:
laser_write, buff [,device]
Optional Input Keyword:
device = 0 or 1 for recorder or player (def=0)
(device can also just be a input parameter)
CALLS: ***
laser_init, laser_write
Common Blocks:
LASER
Procedure:
send a command to the laser disk/player-- using C routine to get response.
interpret the response to determine what type of machine we're talking to.
the device_type array is modified in the LASER common block so that
we don't have to do this every time we talk to the device.
this is also a good place to do some initializing of the machines.
Modification History:
feb-1995 - written by L. Shing
[Previous]
[Next]
NAME:
GET_LC
CALLS: ***
BOX_DATA_ALL, exp_norm2, sxt_prep [1], sxt_prep [2], sxt_prep [3]
PROCEDURE:
Get the total intensity of the defined region selected by BOX_DATA_ALL
INPUTS:
data - cubic data
show_data - display data to select defined area with BOX_DATA_ALL
OPTIONAL INPUTS:
index - if data is unnormalized data (byte data), normalize the data
to DN/s before count calcuration.
rebin - the factor to magnify "show_data" in the display.
Only integer factor is allowed.
noscale - If set, use TV instead of TVSCL in the image display.
sxt_prep - If set, use "SXT_PREP.pro" instead of "EXP_NORM2.pro"
to normalize the data.
box - Area (Corner) position of the extracted data lonarr(2,2)
box(0,0)= X0, box(0,1)= Y0
box(1,0)= X1, box(1,1)= Y1
HISTORY:
12 September, 1992 written by T.Shimizu
10 June, 1993 add the 'rebin' option (TS)
10 June, 1993 add the 'noscale' option (TS)
10 June, 1993 add the 'sxt_pre' option (TS)
10 June, 1993 add the 'box' option (TS)
13 June, 1993 revide due to a bag. (TS)
[Previous]
[Next]
NAME:
get_leak_image
PURPOSE:
Given an index or roadmap structure, match and
extract the corresponding leak image
CALLING SEQUENCE:
get_leak_image, index(3), leak_index, leak_data
get_leak_image, roadmap, leak_index, leak_data, imap
INPUT:
struct_in - An index or roadmap structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
OUTPUT:
index - The leak current index structure
data - The leak current image DECOMPRESSED. The exposure of
the output leak image is NOT the exposure of the
reference input image. The image is the proper resolution
and location on the CCD though (LEAK_SUB does the
exposure normalization)
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
KEYWORD PARAMETERS:
leak_index, leak_data - if supplied, use these (dont read leak data)
METHOD:
Can optionally save the last Leak image read to avoid I/O
CALLS: ***
GET_NBYTES, RD_XDA [1], RD_XDA [2], UNIQ [1], UNIQ [2], UNIQ [3], align1img [1]
align1img [2], data_chk [1], data_chk [2], fmt_tim [1], fmt_tim [2], gt_corner
gt_day [1], gt_day [2], gt_pfi_ffi, gt_res, gt_shape, gt_time [1], gt_time [2]
his_index, int2secarr [1], int2secarr [2], sel_leak_image [1]
sel_leak_image [2], sel_leak_image [3], sel_leak_image [4], str_copy_tags [1]
str_copy_tags [2], str_copy_tags [3], str_copy_tags [4]
CALLED BY:
check_sfd_leak, leak_sub [1], leak_sub [2], leak_sub [3], sxt_deleak [1]
sxt_deleak [2]
HISTORY:
Written 27-Aug-93 by M.Morrison (Using GET_DC_IMAGE as template)
4-Jan-94 (MDM) - Modified the header
20-mar-95 (SLF) - allow floating sfc files
15-May-95 (MDM) - Added header info (exposure not normalized)
V4.1 22-Aug-95 (MDM) - Corrected a but which was causing the IMAP to
be off, and to not work when there were more
than 1 filter/resolution type which did not
have a match within the leak database.
10-Jul-98 (SLF) Adde subscript protection(? why needed now)
15-sep-2000 S.L.Freeland - add LEAK_INDEX and LEAK_DATA
30-May-2003 S.L.Freeland - merge LWA Lonword overflow (VAL=...)
per 16-oct-2002 email and removed 10-jul-98 hack
[Previous]
[Next]
NAME:
get_leak_image
PURPOSE:
Given an index or roadmap structure, match and
extract the corresponding leak image
CALLING SEQUENCE:
get_leak_image, index(3), leak_index, leak_data
get_leak_image, roadmap, leak_index, leak_data, imap
INPUT:
struct_in - An index or roadmap structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
OUTPUT:
index - The leak current index structure
data - The leak current image DECOMPRESSED. The exposure of
the output leak image is NOT the exposure of the
reference input image. The image is the proper resolution
and location on the CCD though (LEAK_SUB does the
exposure normalization)
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
KEYWORD PARAMETERS:
leak_index, leak_data - if supplied, use these (dont read leak data)
METHOD:
Can optionally save the last Leak image read to avoid I/O
CALLS: ***
GET_NBYTES, RD_XDA [1], RD_XDA [2], UNIQ [1], UNIQ [2], UNIQ [3], align1img [1]
align1img [2], data_chk [1], data_chk [2], fmt_tim [1], fmt_tim [2], gt_corner
gt_day [1], gt_day [2], gt_pfi_ffi, gt_res, gt_shape, gt_time [1], gt_time [2]
his_index, int2secarr [1], int2secarr [2], sel_leak_image [1]
sel_leak_image [2], sel_leak_image [3], sel_leak_image [4], str_copy_tags [1]
str_copy_tags [2], str_copy_tags [3], str_copy_tags [4]
CALLED BY:
check_sfd_leak, leak_sub [1], leak_sub [2], leak_sub [3], sxt_deleak [1]
sxt_deleak [2]
HISTORY:
Written 27-Aug-93 by M.Morrison (Using GET_DC_IMAGE as template)
4-Jan-94 (MDM) - Modified the header
20-mar-95 (SLF) - allow floating sfc files
15-May-95 (MDM) - Added header info (exposure not normalized)
V4.1 22-Aug-95 (MDM) - Corrected a but which was causing the IMAP to
be off, and to not work when there were more
than 1 filter/resolution type which did not
have a match within the leak database.
10-Jul-98 (SLF) Adde subscript protection(? why needed now)
15-sep-2000 S.L.Freeland - add LEAK_INDEX and LEAK_DATA
[Previous]
[Next]
NAME:
get_leak_image
PURPOSE:
Given an index or roadmap structure, match and
extract the corresponding leak image
CALLING SEQUENCE:
get_leak_image, index(3), leak_index, leak_data
get_leak_image, roadmap, leak_index, leak_data, imap
INPUT:
struct_in - An index or roadmap structure. If the input
is an array, then data will be a matrix and it
is necessary to use the output variable "imap"
to match up which dark frame goes with which input
image. This is done so that unnessary duplication
of the same image is not done.
OUTPUT:
index - The leak current index structure
data - The leak current image DECOMPRESSED. The exposure of
the output leak image is NOT the exposure of the
reference input image. The image is the proper resolution
and location on the CCD though (LEAK_SUB does the
exposure normalization)
imap - A list of indicies telling which image in "data" to
use for each "struct_in" image. The output is an
array the same length as "struct_in" with values that
go from 0 to the number of output images minus one.
METHOD:
Can optionally save the last Leak image read to avoid I/O
CALLS: ***
GET_NBYTES, RD_XDA [1], RD_XDA [2], UNIQ [1], UNIQ [2], UNIQ [3], align1img [1]
align1img [2], data_chk [1], data_chk [2], fmt_tim [1], fmt_tim [2], gt_corner
gt_day [1], gt_day [2], gt_pfi_ffi, gt_res, gt_shape, gt_time [1], gt_time [2]
his_index, int2secarr [1], int2secarr [2], sel_leak_image [1]
sel_leak_image [2], sel_leak_image [3], sel_leak_image [4], str_copy_tags [1]
str_copy_tags [2], str_copy_tags [3], str_copy_tags [4]
CALLED BY:
check_sfd_leak, leak_sub [1], leak_sub [2], leak_sub [3], sxt_deleak [1]
sxt_deleak [2]
HISTORY:
Written 27-Aug-93 by M.Morrison (Using GET_DC_IMAGE as template)
4-Jan-94 (MDM) - Modified the header
20-mar-95 (SLF) - allow floating sfc files
15-May-95 (MDM) - Added header info (exposure not normalized)
V4.1 22-Aug-95 (MDM) - Corrected a but which was causing the IMAP to
be off, and to not work when there were more
than 1 filter/resolution type which did not
have a match within the leak database.
[Previous]
[Next]
NAME:
GET_LIMITS
PURPOSE:
Gets two limits from a plot using cursor
CALLING SEQUENCE:
GET_LIMITS,xlim,ylim
INPUT:
OUTPUT:
xlim Vector containing 1st and 2nd X-limit
ylim Vector containing 1st and 2nd Y-limit
OPTIONAL OUTPUT:
HISTORY
RDB Oct, 1991 Written
[Previous]
[Next]
Name: get_mk3
Purpose: get Mauna Loa MK3 magnetograph
24-sep-1995 (SLF) First Light optional image
01-jun-1998 (PGS) updated ftp site to ftp.hao.ucar.edu
CALLS:
CALLED BY
sxt_mk3 mk3 index data [1], sxt_mk3 mk3 index data [2]
[Previous]
[Next]
Name: get_mk3
Purpose: get Mauna Loa MK3 magnetograph
24-sep-1995 (SLF) First Light optional image
CALLS:
CALLED BY
sxt_mk3 mk3 index data [1], sxt_mk3 mk3 index data [2]
[Previous]
[Next]
NAME:
get_most_comm
PURPOSE:
Find out which value is use the most and return the subscript
of that value
SAMPLE CALLING SEQUENCE:
sub = get_most_comm( vals )
sub = get_most_comm( gt_res(r) + gt_filta(r)*4 + gt_filtb(r)*32
INPUT:
vals - An array of values. It is expected that there are
many repeats of certain values, and the function
returns the subscript of the value which shows up the
most number of times.
OUTPUT:
sub - Returns the subscript of the value repeated the most
times
OPTIONAL OUTPUT:
uvals - An array of the unique values
h - The number of occurances of each of the "uvals" values
CALLS: ***
UNIQ [1], UNIQ [2], UNIQ [3]
CALLED BY:
obs_summary
HISTORY:
Written 1-Oct-93 by M.Morrison
[Previous]
[Next]
NAME:
get_mwlt_roll
PURPOSE:
Read the Mees White Light Telescope roll angle database.
Returns the roll angle for a given date.
CATEGORY:
CALLING SEQUENCE:
roll = get_mwlt_roll(time)
INPUTS:
time = time of MWLT image in any Yohkoh format
KEYWORDS (INPUT):
OUTPUTS:
roll = roll angle of MWLT image, measured eastward from geocentric N.
(in degrees).
KEYWORDS (OUTPUT):
telescope = string. Version of telescope used, either 'old' or 'new'.
CALLS: ***
anytim2ints [1], anytim2ints [2], restgen [1], restgen [2]
CALLED BY:
PP_MWLT2SXT, mk_key_stokes
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
This program is NOT vectorized. The value changes only very
infrequently, and remains constant for months.
PROCEDURE:
MODIFICATION HISTORY:
JPW, 1-apr-94
[Previous]
[Next]
Name: get_newsoon
Purpose: return newest SOON image
Calling Sequence:
newsoon=get_newsoon( [dattim=dattim, head=head, observatory=observatory])
CALLS: ***
FXPAR [1], FXPAR [2], SIGMA_FILTER, data_chk [1], data_chk [2], get1gbo
int2secarr [1], int2secarr [2], rm_darklimb, timegrid, ut_time [1], ut_time [2]
CALLED BY:
fl_suntoday [1], fl_suntoday [2], fl_suntoday [3], sun_today [1], sun_today [2]
sun_today [3]
History:
10-jul-1995 (SLF)
12-jul-1995 (SLF) - made north at TOP
23-sep-1995 (SLF) - add RM_DARKLIMB and SCALE switches
24-sep-1995 (SLF) - change RM_DARKLIMB to RMDARKLIMB
(function name / keyword name conflict)
28-apr-1996 (SLF) - protect agains 1st choice not there
[Previous]
[Next]
NAME:
GET_OFF
PURPOSE:
Coalign a series of images using FFT cross correlation
technique.
CALLING SEQUENCE:
OFFSETS = GET_OFF(DATA, SAMPLE=SAMPLE, MAG_FAC=MAG_FAC)
INPUTS:
DATA = Data cube of images to be coaligned
OPTIONAL KEYWARDS
SAMPLE = Flag to determine whether nearest neighbor or
interpolation is used for expanding subarray prior
to cross correlation
MAG_FAC = Magnification factor for expanding subarray prior
to cross correlation
INTERACT - If set, user may select subregion for correlation
OUTPUTS:
OFFSETS = 2 x n_image array of offsets where n_image is the
CALLS: ***
CC_OFF
CALLED BY:
CUBE_ALIGN
MODIFICATION HISTORY:
Version 1.0 - Mar, 1991, G. L. Slater, LPARL
1.1 - Mar, 1992, slf - added interact keyword
[Previous]
[Next]
NAME:
GET_OFF2
PURPOSE:
Coalign a series of images using FFT cross correlation
technique.
CALLING SEQUENCE:
OFFSETS = GET_OFF(DATA, SAMPLE=SAMPLE, MAG_FAC=MAG_FAC)
INPUTS:
DATA = Data cube of images to be coaligned
OPTIONAL KEYWARDS
SAMPLE = Flag to determine whether nearest neighbor or
interpolation is used for expanding subarray prior
to cross correlation
MAG_FAC = Magnification factor for expanding subarray prior
to cross correlation
OUTPUTS:
OFFSETS = 2 x n_image array of offsets where n_image is the
CALLS: ***
CC_OFF, XWIN [1], XWIN [2], xwin [3]
CALLED BY:
CUBE_ALIGN2
MODIFICATION HISTORY:
Version 1.0 - Mar, 1991, G. L. Slater, LPARL
[Previous]
[Next]
Name:
get_og_lookup
Purpose:
Provide a lookup table for op_first_guess
Inputs:
filein Name of the lookup table
Outputs:
Returns a structure containing a lookup table of og numbers and
og comments.
Proceedure:
Opens an ascii file and reads it.
Lines beginning with ";" are ignored.
Format is op_first_guess index, og number, "Comment"
Example:
55 55 "DAY (SUNRISE)"
Modification History:
5-oct-91, Written, JRL.
[Previous]
[Next]
Name:
get_op_rules
Purpose:
Read a table of "rules" by which to run op_first_guess
Inputs:
filein Name of the ascii file containing rules.
Outputs:
Returns a structure containing a lookup table of rules.
Proceedure:
Opens an ascii file and reads it.
Lines beginning with ";" are ignored.
Format is op_first_guess index, value, "Comment"
Example:
0 -.5 "AOS offset (min)"
Modification History:
5-oct-91, Written, JRL.
12-nov-91, Updated, JRL, Added more rules for DSN, Night aos
10-dec-91, Updated, JRL, Added min_sun rule
13-jan-92, Updated, JRL, Added dsn_los_n/dsn_los_d
23-jan-92, Updated, JRL, Added dsn_switch
14-jun-94, JRL, Added saa_med_rate, saa_min_time
3-feb-96, JRL, Added aaos_ant_ab
[Previous]
[Next]
Name:
get_orb_epoch
Purpose:
Return the orbital epoch of the on-line /ydb/orb_ files containing
the Yohkoh orbital elements.
Calling Sequence:
Result = get_orb_epoch() ; Returns the most recent version
Result= get_orb_epoch('11-jun-92') ; Returns the value closest to 11-jun-92
Result= get_orb_epoch(tim_in,orb_files=orb_files)
Result= get_orb_epoch('*') ; Returns all available cases.
The result is given in dd-mmm-yy hh:mm:ss format.
Inputs:
tim_in = time and date in any format. Vectors O.K.
If tim_in = "*", then all cases will be returned.
Outputs:
Result is the time/date of the orbital element solution.
Optional Output Keywords:
orb_files = Contains the full path of the orbital element solution.
CALLS: ***
anytim2ints [1], anytim2ints [2], fmt_tim [1], fmt_tim [2], int2secarr [1]
int2secarr [2]
Modification History:
11-jun-92, Written, J. R. Lemen
[Previous]
[Next]
Project : SOHO - CDS
Name : GET_ORBIT()
Purpose : Get the SOHO orbit information.
Category : Class3, Orbit
Explanation : Reads orbit information from either the definitive or
predictive orbit file, whichever it can find first.
Syntax : Result = GET_ORBIT( DATE [, TYPE ] )
CALLED BY:
CALC_LOI_ROLL, GET_TIME_DELAY, MK_SOHO_MAP_EARTH, TRACE_MDI_ALIGN
Examples :
Inputs : DATE = The date/time value to get the orbit information for.
Can be in any CDS time format.
Opt. Inputs : None.
Outputs : The result of the function is a structure containing the
spacecraft orbit information. It contains the following tags.
If unable to find this information, zeroes are returned
instead.
Opt. Outputs: TYPE = Returns whether predictive or definitive data was
used to calculate the result. Returned as either
"Definitive" or "Predictive". If the routine fails
to return an answer, then the null string is
returned.
Keywords : RETAIN = If set, then the orbit FITS file will be left open.
This speeds up subsequent reads.
ERRMSG = If defined and passed, then any error messages will
be returned to the user in this parameter rather than
depending on the MESSAGE routine in IDL. If no
errors are encountered, then a null string is
returned. In order to use this feature, ERRMSG must
be defined first, e.g.
ERRMSG = ''
Result = GET_ORBIT( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
OLD = If set, then files are read in from the subdirectory
"old_samples". This is used to test the software
until real data files are available.
Calls : ***
ANYTIM2CAL, ANYTIM2UTC [1], ANYTIM2UTC [2], CONCAT_DIR [1], CONCAT_DIR [2]
CONCAT_DIR [3], FXBCLOSE [1], FXBCLOSE [2], FXBISOPEN [1], FXBISOPEN [2]
FXBOPEN [1], FXBOPEN [2], FXBOPEN [3], FXBREAD [1], FXBREAD [2], FXBREAD [3]
OS_FAMILY, REVERSE, TRIM, concat_dir [4]
Common : Private common block GET_ORBIT is used to keep track of the
orbit file opened when the RETAIN keyword is used.
Restrictions: The orbit entries for the time closest to that requested is
used to calculate the orbit parameters. Since the orbit data
is calculated every 10 minutes, this should be correct within
+/-5 minutes. No attempt is made to interpolate to closer
accuracy than that.
Side effects: None.
Prev. Hist. : None.
History : Version 1, 04-Dec-1995, William Thompson, GSFC
Version 2, 03-Sep-1996, William Thompson, GSFC
Also look for filename with a dollar sign
prepended--this is how VMS treats uppercase filenames.
Version 3, 11-Oct-1996, William Thompson, GSFC
Only prepend $ in VMS. Use in both places where
needed.
Version 4, 22-Nov-1996, William Thompson, GSFC
Fixed bug introduced in version 3, where only
predictive data was being returned in Unix.
Version 5, 22-Jan-1997, William Thompson, GSFC
Modified to reflect reorganization of orbit files.
Version 6, 30-Jan-1997, William Thompson, GSFC
Fixed VMS bug introduced in version 5
Contact : WTHOMPSON
[Previous]
[Next]
NAME:
GET_PA
PURPOSE:
compute position angle of a point
CATEGORY:
Yohkoh analysis
CALLING SEQUENCE:
print, get_pa(index)
INPUTS:
SXT image index (FFI only)
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
CALLS: ***
SXT_RPAXY
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
Assumes you've displayed the image in the current window
MODIFICATION HISTORY:
8-Sep-97, written (HSH)
[Previous]
[Next]
Procedure returns peak count in spectral arrays (avoiding end dump bin).
Values can be decompressed before return if requested.
Input: DATA - array as returned by test_rd
Output: S }
C } 1-d arrays containing the peak value in
F25 } each channel of each spectrum
F26 }
Use:
IDL> get_peak,data,s,c,f25,f26
Limitations: Assumes 256/256/128/128 binning in each spectrum.
CDP Dec 91
CALLS:
CALLED BY
GET_PT
[Previous]
[Next]
NAME: get_pix
PURPOSE: to browse images in the publications and pix_genx directories
and optionally print them.
CALLING SEQUENCE: get_pix,image,r,g,b,text=text,index=index, $
laser=laser,kodak=kodak,dir=dir
KEYWORDS:
text - outputs the image caption to variable
index - outputs the image's index record to variable
laser - prints image on laser printer when set
kodak - prints on kodak printer when set
dir - switches to /yd1/pix_genx directory
(/yd1/publications default)
OUTPUT:
image - variable to store image in (optional)
r,g,b - variables to store color table vectors in (optional)
CALLING EXAMPLES:
get_pix :view images (none saved or printed)
get_pix,/dir :view pix_genx images
get_pix,image :output image
get_pix,image,r,g,b :output image,r,g,b
get_pix,image,r,g,b,text=text,index=index
:output image,r,g,b,text,index
get_pix,/laser :print image on laser
get_pix,/kodak :print image on kodak
get_pix,image,r,g,b,/laser :output image,r,g,b, print on laser
get_pix,image,r,g,b,text=text,index=index,/kodak
:output,image,r,g,b,text,index,
print on kodak
CALLS: ***
hdcopy [1], hdcopy [2], set_logenv [1], set_logenv [2], show_pix [1], show_pix [2]
HISTORY:
28-Jul-1994 (ETB)
[Previous]
[Next]
NAME:
get_pix_coor
PURPOSE:
To convert between various pixel coordinates and resolutions
CALLING SEQUENCE:
a = get_pix_coor(index)
a = get_pix_coor(index, /line)
a = get_pix_coor(index, offset=b)
INPUT:
input1 - Must be an index structure right now
CALLS: ***
gt_res
CALLED BY:
FOV_COORDS, MK_MOSAIC, PICK_PIX, SXT_FOV_CENTER, pr_image, pr_teem
OPTIONAL KEYWORD INPUT:
img - If set, return the CCD column address
line - If set, return the line number
offset - the offset in pixels (pixels out of camera) from the
lower left corner.
OUTPUT:
Defaults to output the column number in full resolution IDL
image array coordinates
RESTRICTIONS:
This routine assumes that BLS is off (non-cal mode)
HISTORY:
Written 6-May-92 by M.Morrison
************** TEMPORARY ROUTINE ***************
[Previous]
[Next]
NAME:
get_pnt
PURPOSE:
Given a set of input times, return the single PNT data record
closest to that time.
CALLING SEQUENCE:
get_pnt, index, pdata
get_pnt, index, pdata, offset=offset
INPUT:
tim_in - The input time(s) in any of the 3 standard formats
OUTPUT:
pdata - The PNT data structure
OPTIONAL KEYWORD OUTPUT:
offset - The number of seconds that the matching PNT data is off
from the input time(s)
CALLS: ***
anytim2ints [1], anytim2ints [2], rd_pnt, tim2dset [1], tim2dset [2]
tim2orbit [1], tim2orbit [2]
CALLED BY:
GET_SSX_SLICE, GET_TRACUBE, plot_ar_pfi, rot_pix2
HISTORY:
Written 10-Jun-92 by M.Morrison
19-Apr-93 (MDM) - Fixed problem which occurs because the PNT orbit
pointer time is for the first ADA data available,
not the start time of the orbit (FID).
[Previous]
[Next]
NAME:
GET_POINT_STR
PURPOSE:
Returns a structure of the pointing information for an index structure
which is suitable for the ideproject.pro routine.
CATEGORY:
CALLING SEQUENCE:
point = get_point_str(index)
INPUTS:
index = index structure
OPTIONAL INPUT PARAMETERS:
KEYWORD PARAMETERS
OUTPUTS:
point = structure with B0, P, LAT, LON tags (all in radians)
and PIX_SIZE and RADIUS tags in arcseconds.
CALLS: ***
get_rb0p [1], get_rb0p [2], gt_center, gt_pix_size, gt_res
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
P is set to zero since the SXT images have solar north up by default.
DOES NOT ACCOUNT FOR THE SXT ROLL ANGLE.
PROCEDURE:
MODIFICATION HISTORY:
T. Metcalf November 1992.
1997-Oct-30 T. Metcalf - Added radius element and changed pix_size
to a 2 element array.
[Previous]
[Next]
NAME:
GET_POINTS
PURPOSE:
To retrieve pointing information from a specified database.
CATEGORY:
Database reading.
CALLING SEQUENCE:
sxtf = get_points(st_date, en_date, /sxtf)
sft = get_points(st_date, en_date, /sft0)
sft = get_points(st_date, en_date, /sft0, sft_dir='/mo0.flare13/yohkoh/sft_new')
INPUTS:
st_date = Starting date; must be in string format.
en_date = Ending date; must be in string format.
KEYWORD PARAMETERS:
Keywords:
/SFT0 -> Get terminator pointings from SFT or DIR database.
/SXTF -> Get FFI pointings from SXTF or DIR database.
/flares -> Get spr flare-mode pointings > 10 minutes apart.
sft_dir - use if a directory other than $DIR_SXT_SFT
OUTPUTS:
Returns an anonymous structure with the following bits:
COORDS: FR coordinates of sun center.
DAY: Same field as for INDEX or ROADMAP.
TIME: Same field as for INDEX or ROADMAP.
FILTA: Filter-A ID number.
FILTB: Filter-B ID number.
CALLS: ***
gt_day [1], gt_day [2], gt_dp_mode [1], gt_dp_mode [2], gt_filta, gt_filtb
gt_time [1], gt_time [2], int2secarr [1], int2secarr [2], pr_sxt_term, rd_obs
sxt_cen [1], sxt_cen [2]
CALLED BY:
UPDATE_TERM
COMMON BLOCKS:
None here.
NOTES:
Both ST_DATE and EN_DATE are >>required<< inputs.
MODIFICATION HISTORY:
M. Weber, February 13, 1995 --- Written.
DATE - (MAW) - Cool modification to your perfect program.
DATE - (MAW) - Another cool idea for an addition.
DATE - (UCP) - UnCool Person destroys the elegant integrity of
your creation with their own code.
21-May-95 LWA, added keyword sft_dir and changed hardwired
SFC selection parameters in SFT section.
25-May-95 LWA, added capability to retrieve flare-mode pointings.
24-Jun-95 DA, fixed error in use of sft0 keyword
17-Nov-95 LWA, Changed DPE filter to Hi=27, Lo=21
Need to modify this to use mk_sfc.param!
[Previous]
[Next]
NAME:
GET_POLAR_COORDS
[Previous]
[Next]
NAME:
GET_POLAR_COORDS
CALLS:
[Previous]
[Next]
NAME: get_rect
PURPOSE: return a rectangular sub-image(s) from input image(cube).
METHOD: the pixels of the sub image are calculated from the edge
values, then the sub-region is returned. The input rows
and columns are INCLUDED.
CALLING SEQUENCE: out=get_rect(data,left,right,bottom,top)
PARAMETERS:
data oringial image(s).
out resultant sub image(s).
left left boundry, in pixels.
right right boundry, in pixels.
bottom bottom edge, in pixels.
top top edge, in pixels.
RETURN TYPE: Same as the input.
CALLS: ***
coord_l2v
CALLED BY:
gbo_pfi
HISTORY: Drafted by A. McAllister, March 1993.
Generalized to handle cubes as well, AMcA, 18-mar-93.
Reworked to allow for memory problems, AMcA, 25-mar-93.
Renamed from GT_RECT to GET_RECT, AMcA, 28-may-93.
[Previous]
[Next]
NAME:
get_res_offset
PURPOSE:
Given an image resolution, return the value of the digital
offset for that resolution.
CALLING SEQUENCE:
x = get_res_offset(index)
x = get_res_offset(roadmap)
x = get_res_offset(indgen(3))
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array.
OUTPUT:
returns - The digital offset in DN for that resolution.
CALLS: ***
gt_res
CALLED BY:
change_res, dark_sub [1], dark_sub [2], dark_sub [3], exp_norm [1], exp_norm [2]
exp_norm2, get_dc_image [2], get_dc_image [3]
HISTORY:
Written 12-Nov-91 by M.Morrison
FUTURE OPTIONS TODO:
Optionally look at the exposure duration and adjust the
offset to compensate for dark current buildup. Could even
look at the temperature
[Previous]
[Next]
NAME:
get_roll
PURPOSE:
To return the roll angle of the SXT image (or S/C) relative to solar
north in degrees counter clockwise (this convention is the opposite
of that in the ADS raw database)
SAMPLE CALLING SEQUENCE:
roll = get_roll(times, status=status)
roll = get_roll(/sxt_offset)
roll = get_roll(times, /notsxt)
roll = get_roll(att=att)
INPUT:
times - The set of times that the roll is needed.
CALLS: ***
ROLL_FUNCT, anytim2ints [1], anytim2ints [2], get_att, int2secarr [1]
int2secarr [2]
CALLED BY:
MK_HXI_MAP, MK_SXT_MAP, PP_MWLT2SXT, PP_SXT2ANY, PP_SXT2VLA, gt_sxt_roll, sda2fits
sleazy_rot, sol_rot [2], sswstruct_fill [1], sxt_cen [1], sxt_cen [2]
sxt_prep [1], sxt_prep [2], sxt_prep [3]
OPTIONAL KEYWORD INPUT:
sxt_offset - If set, just return the scalar value which is the offset
the SXT CCD north relative to solar north (for the case
where S/C north and solar north are aligned). The value is
in degress counter clockwise.
notsxt - If set, do not incorporate the SXT offset between CCD north
and S/C north.
predict - If set, then use the coefficients for the fit to the seasonal
changes in the S/C roll.
OPTIONAL KEYWORD INPUT/OUTPUT:
att - An ATT structure can be passed in and the proper value will be
scaled to degrees and the SXT offset optionally incorporated.
OPTIONAL KEYWORD OUTPUT:
status - roll status (0=predicted, 1=processed from ADS)
METHOD:
The default is to incorporate the roll offset between the CCD north
axis and the S/C north axis, such as to return the roll between the
SXT CCD north axis and the solar axis.
If the ATT database is not available, then a function is used which
approximates the seasonal variation of the S/C roll.
The SXT data taken between 1-Sep-92 and 5-Sep-92 can be used to
verify the sign conventions of the roll. Canopus was lost and the S/C
roll was large.
* ATT roll value is 10 degrees (counter clockwise positive)
* ADS raw roll value was -10 degrees (clockwise positive)
* In the SXT image, solar north points to the upper right of
the image for this roll value, so the SXT image needs to be
rotated 10 degrees counter clockwise to put solar north
straight up. CAUTION: The IDL routine ROT takes values
clockwise positive.
* In the SXT image, solar north is 10 degrees CLOCKWISE from
straight up (CCD North) (this is the opposite since we are
using the CCD as the reference)
[Previous]
[Next]
NAME:
GET_SDA
PURPOSE:
Read image data from an SDA file and return as a data cube
CALLING SEQUENCE:
DATA = GET_SDA(FILE=FILE, TIMES, SUBSET=SUBSET, $
IMAGE_VECT = IMAGE_VECT
INPUTS:
FILE = String containing SDA file name
OPTIONAL KEYWORDS:
SUBSET = If nonzero, user will be prompted for a subset of
all images in the SDA file
OUTPUTS:
DATA = Data cube of images extracted from SDA file
OPTIONAL OUTPUTS:
TIMES = Vector of times at which the extracted images were
taken
IMAGE_VECT = Vector of indices of image extracted from SDA
file
CALLS: ***
GEN_STRUCT [1], GEN_STRUCT [2], Int2Ex [1], Int2Ex [2], OBS_STRUCT [1]
OBS_STRUCT [2], RD_SDA [1], RD_SDA [2], RD_SDA [3], RD_SDARMAP, SXT_STRUCT
MODIFICATION HISTORY:
Version 1.0 - Mar, 1991, S. L. Freeland, LPARL
Version 1.1 - Apr, 1991, G. L. Slater, LPARL
[Previous]
[Next]
NAME:
get_sdl_avg
PURPOSE:
To take the data structure from the SDL data files and return
the average and standard deviation for each image
CALLING SEQUENCE:
get_sdl_info, index, data, avg, dev
INPUT:
index
data
OUTPUT:
avg
dev
OPTIONAL KEYWORD OUTPUT:
exp_avg - the EXPECTED average DN level based on exposure duration
and a linear fit
CALLS: ***
GET_SDL_INFO, gt_dpe, gt_res, sxt_decomp [1], sxt_decomp [2]
HISTORY:
Written 20-Apr-92 by M.Morrison
2-Feb-93 (MDM) - Modified to pass BYTE type to SXT_DECOMP
[Previous]
[Next]
NAME:
get_sdm_val
PURPOSE:
To determine if the image is in the SDM accepted list, and
to return the value number in the list if present.
INPUT:
index - the index or roadmap
OUTPUT:
returns -1 if not in the list, otherwise it is the list #
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], concat_dir [4], gt_corner, gt_dpe
gt_expmode, gt_filtb, gt_res, int2secarr [1], int2secarr [2], rd_tfile [1]
rd_tfile [2]
CALLED BY:
mk_sdmi
HISTORY:
Written 9-Mar-95 by M.Morrison
28-Mar-95 (MDM) - Corrected the logic (the WHERE was backwards)
7-Jul-95 (MDM) - Allowed the SDML or SDMI structure to be passed in
14-Jul-95 (MDM) - Removed the stop put in for debugging
[Previous]
[Next]
Name: get_selsis
Purpose: access selsis solar images , anonymous ftp server.
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], FILE_EXIST [2], FIND_GBO_DIR
Month_id [1], Month_id [2], RFITS2 [1], RFITS2 [2], STR2ARR [1], STR2ARR [2]
anytim2ints [1], anytim2ints [2], concat_dir [4], curdir [1], curdir [2]
file_exist [1], file_exist [3], fmt_tim [1], fmt_tim [2], ftp_copy [1]
ftp_copy [2], get_logenv [1], get_logenv [2], gt_day [1], gt_day [2], mail [1]
mail [2], prstr [1], prstr [2], sel_fileinfo, sel_timrange [1], sel_timrange [2]
str2cols [1], str2cols [2], strjustify, timegrid, ut_time [1], ut_time [2]
wmenu_sel [1], wmenu_sel [2]
History:
~20-Mar-1995 (SLF) - prepare for selsis file server reorganization
14-apr-1995 (SLF) - various mods
2-Aug-1995 (MDM) - Added protection for case where the node is
not responding
13-jan-2000 (PGS) - modifed to four year string/new selsis format (y2k)
[Previous]
[Next]
Name:
get_seq_tab
Purpose:
Given a time, return the sequence table serial number that was
used at that time. Also return the filename of the table dump.
Input:
timarr - standard 7 element array with time of exposure
hh, mm, ss, msec, dd, mm, yy
(or)
the sequence table number (a scalar)
Optional Input:
filelist - If present, read the file "filelist" to get the list
of SXT table dumps and the serial number associated
with it. If not present (which is most common), it
looks at the files in the $DIR_SXT_TABLES directory
and figures out the table number that way.
qforcerd - Force the "filelist" or the directory $DIR_SXT_TABLES
to be read again (it holds information in a common block
to avoid to have to read multiple times)
fid - the fileID of the table to extract (string type) instead
of a time or sequence table number
Output:
returns - table number that was used
filnam - file name of table dump
fileid - The fileID of the table dump
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], FILE2TIME, anytim2ints [1]
anytim2ints [2], break_file [4], fid2ex [1], fid2ex [2], file_list [1]
file_list [2], fmt_tim [1], fmt_tim [2], int2secarr [1], int2secarr [2]
CALLED BY:
gtab_file, table_dump
HISTORY:
Written Fall '91 by M.Morrison
13-Mar-92 (MDM) Removed the technique of reading a data file to get
the list of table serial numbers. Only use the
/ys/sxt/tables/tab* files kept on-line.
25-Mar-92 (MDM) Removed bug where the table selection was chosing
the wrong file if the exact time/FID was passed
(gt versus ge problem)
28-Aug-92 (MDM) Modified code to use new time routines available
Used "btb" files instead of "tab" files to generate
the list
8-Mar-93 (MDM) Modified to use the new FILE_LIST routine because there
were too many files in the tables directory
[Previous]
[Next]
Name: get_sfc_info
Purpose: return summary info array for sft / sfc files (any sxt with .his)
Input Parameters:
index - sxt index (must have history record)
CALLS:
CALLED BY
pr_sfc
[Previous]
[Next]
Name: get_sfm
Purpose: return sfm images and index records closest to requested time(s)
Input Parameters:
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], RD_SDA [1], RD_SDA [2], RD_SDA [3]
Rd_Roadmap [2], anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2]
break_file [4], ex2fid [1], ex2fid [2], file_list [1], file_list [2], get_info [1]
get_info [2], get_info [3], get_info [4], mk_dset_str [1], mk_dset_str [2]
rd_roadmap [1], tim2dset [1], tim2dset [2]
CALLED BY:
OBS_PLOT, VIEW_SFM, mk_sun_mosaic, ssw_fov_context, xsxt_prep_event
History:
17-May-1993 (SLF)
8-Jul-1993 (SLF) - changed input time definitions
8-feb-1995 (SLF) - add nodata keyword
6-sep-1995 (SLF) - fix problem when rebin=512
[Previous]
[Next]
NAME:
get_sirius
PURPOSE:
To copy YOHKOH raw telemetry data from SIRIUS to the workstation
INPUT:
flare2 - If set (to 1), use SRSGET on FLARE2
ftp - If set, use SRSFTP2 of FLARE2
OUTPUT:
error - Success information
= 0 is successful
= 5 "jbopen" or similar error - retry?
or "can't create" error, or ABORT
= 9 The user prompt was not what was expected after
starting to run "srsget"
= 10 "srsget" is begin run already on flare1
= 11 Segmentation fault (core dump)
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], Int2Ex [1], Int2Ex [2]
anytim2ints [1], anytim2ints [2], concat_dir [4], get_logenv [1], get_logenv [2]
mail [1], mail [2], set_logenv [1], set_logenv [2], str_replace [1]
str_replace [2]
CALLED BY:
get_sirius_yr, go_get_sirius, yoyo_man2
OPTIONAL KEYWORD INPUT:
nodsn - If set, answer "no" to copying DSN files
HISTORY:
Written Dec-91 by M.Morrison
3-Mar-92 (MDM) - changed default answer for "KSC Temporary Real data"
to yes.
17-Mar-92 (MDM) - Added "flare2" option
20-Mar-92 (MDM) - changed default answer for "KSC Temporary Playback
data" to yes.
19-Apr-92 (MDM) - Changed default answer for Temporary data to no
Added keyword option /TEMP to access the temporary
data
22-Apr-92 (MDM) - Added "outfil" in parameter list
1-May-92 (MDM) - Removed check to see if someone is running SRSGET
since the script handles that.
3-May-92 (MDM) - Added "srsget" option to enable running SRSGET2
30-May-92 (MDM) - Fixed bug with commanding SRSGET=1
18-Jul-92 (MDM) - Added "ftp" option
22-Aug-92 (slf) - Increased wait between flare1 reads to avoid hanging
25-Aug-92 (slf) - Old wait reinstalled execept for $ys host check
(additional 10 second wait inserted)
27-Aug-92 (slf) - Minor mod for srsftp2 output
14-Oct-92 (MDM) - Added "nodsn" option
20-Oct-92 (slf) - Changed flare1 rlogin timings again (20,.1,.1)
Based on benchmarking with test program
11-Jan-93 (MDM) - Added capability to recognize and exit on
segmentations fault (core dump) error
24-wed-93 (slf) - check environ ys_flarewait for rlogin wait
16-Jun-93 (MDM) - Modified to allow any format time range as input
11-Aug-93 (MDM) - Trap on "Connection closed" message which can
occur at the wrong time.
2-apr-94 (SLF) - update for srsgetN_ver2 (wallops/santiago)
backward compat via OLDSRSGET switch
minor logic changes in srsget questions
06-Jul-98 (gls) - Added another 'readf, lun' after call to SRSGET
to make compatible with new 'flare1 (old 'flare21')
which is running nrewer version of SunOS
[Previous]
[Next]
NAME:
get_sirius
PURPOSE:
To copy YOHKOH raw telemetry data from SIRIUS to the workstation
INPUT:
flare2 - If set (to 1), use SRSGET on FLARE2
ftp - If set, use SRSFTP2 of FLARE2
OUTPUT:
error - Success information
= 0 is successful
= 5 "jbopen" or similar error - retry?
or "can't create" error, or ABORT
= 9 The user prompt was not what was expected after
starting to run "srsget"
= 10 "srsget" is begin run already on flare1
= 11 Segmentation fault (core dump)
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], Int2Ex [1], Int2Ex [2]
anytim2ints [1], anytim2ints [2], concat_dir [4], get_logenv [1], get_logenv [2]
mail [1], mail [2], set_logenv [1], set_logenv [2], str_replace [1]
str_replace [2]
CALLED BY:
get_sirius_yr, go_get_sirius, yoyo_man2
OPTIONAL KEYWORD INPUT:
nodsn - If set, answer "no" to copying DSN files
HISTORY:
Written Dec-91 by M.Morrison
3-Mar-92 (MDM) - changed default answer for "KSC Temporary Real data"
to yes.
17-Mar-92 (MDM) - Added "flare2" option
20-Mar-92 (MDM) - changed default answer for "KSC Temporary Playback
data" to yes.
19-Apr-92 (MDM) - Changed default answer for Temporary data to no
Added keyword option /TEMP to access the temporary
data
22-Apr-92 (MDM) - Added "outfil" in parameter list
1-May-92 (MDM) - Removed check to see if someone is running SRSGET
since the script handles that.
3-May-92 (MDM) - Added "srsget" option to enable running SRSGET2
30-May-92 (MDM) - Fixed bug with commanding SRSGET=1
18-Jul-92 (MDM) - Added "ftp" option
22-Aug-92 (slf) - Increased wait between flare1 reads to avoid hanging
25-Aug-92 (slf) - Old wait reinstalled execept for $ys host check
(additional 10 second wait inserted)
27-Aug-92 (slf) - Minor mod for srsftp2 output
14-Oct-92 (MDM) - Added "nodsn" option
20-Oct-92 (slf) - Changed flare1 rlogin timings again (20,.1,.1)
Based on benchmarking with test program
11-Jan-93 (MDM) - Added capability to recognize and exit on
segmentations fault (core dump) error
24-wed-93 (slf) - check environ ys_flarewait for rlogin wait
16-Jun-93 (MDM) - Modified to allow any format time range as input
11-Aug-93 (MDM) - Trap on "Connection closed" message which can
occur at the wrong time.
2-apr-94 (SLF) - update for srsgetN_ver2 (wallops/santiago)
backward compat via OLDSRSGET switch
minor logic changes in srsget questions
[Previous]
[Next]
NAME:
get_sirius_yr
PURPOSE:
Special routine to call GET_SIRIUS for the year boundary cases since
Shuto san does not handle the year tag properly in this case.
INPUT:
Same as GET_SIRIUS
OUTPUT:
Same as GET_SIRIUS
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], FILE_EXIST [2], anytim2ex [1]
anytim2ex [2], break_file [4], file_exist [1], file_exist [3], get_sirius [1]
get_sirius [2]
HISTORY:
Written 10-Jan-94 by M.Morrison
[Previous]
[Next]
NAME:
get_site
PURPOSE:
Returns the site name for the cases of 'ISAS' and 'LPARL'.
OUTPUT PARAMETERS:
Either 'isas' or 'lockheed' returned.
PROCEEDURE:
Spawn a child process and pipe the result back.
CALLS: ***
STR2ARR [1], STR2ARR [2]
CALLED BY:
mk_vcr
HISTORY:
16-feb-96 (GLS) - Written. Based on JRL et al's "get_host".
[Previous]
[Next]
NAME:
get_sony_cmd
PURPOSE:
Return ASCII command code for Sony LVR-5000A laser videodisk commands
CALLING SEQUENCE:
result = get_son_cmd('clear')
result = get_sony_cmd('vid_on')
result = get_sony_cmd('search',frame_no)
result = get_sony_cmd('search',frame_no,speed)
INPUTS:
cmd_name = If undefined will default to ['clear','vid_on','clear']
'clear' = clear command
'frame' = Display frame mode
'vid_on' = Turn video on
'vid_off' = Turn video off
'Search' = Search for frame_no
'Play' = Forward or Reverse play to frame_no
'Step' = F- or R- play to frame_no at Speed of 30/speed sec per frame
'Slow' = F- or R- play at 1/3 normal speed
'Fast' = F- or R- play at 3x normal speed
CALLED BY:
VIDEO_ON, sonyloop [1], sonyloop [2]
Note: If the speed is present, 'Play','Slow', and 'Fast' will all be handled
the same as if 'Step' is provided according to the values given below
(see speed instructions). Thus, it is only ever necessary to use 'Play'.
OPTIONAL INPUTS:
frame_no = Frame number (only has meaning with search, F-Play, R-Play)
Speed = Defines the playing time as: Normal/speed
Values of 1:255 are acceptable.
-1 corresponds to 1/5 speed (slow forward/reverse)
-2 corresponds to 3x normal (fast forward/reverse)
-3 corresponds to normal
If undefined, defaults to 1
OPTIONAL INPUT KEYWORDS:
nostxetx If set, the stx and etx commands are not prefixed/appended
RESTRICTIONS:
cmd_name must include only one SEARCH, PLAY, STEP, FAST, or SLOW command
METHOD:
MODIFICATION HISTORY:
14-Jan-95, G. L. Slater, Written
21-Jan-95, J. R. Lemen, Added Frame, F-play, R-play modes.
Enabled cmd_name to be a vector.
2-Feb-95, JRL, Minor improvements.
[Previous]
[Next]
Name: get_ssc_best
Purpose: return 'index,data' for "best" SSC matching
Input Parameters:
indexin - index/time to match
Output Parameters:
iout, dataout - the corresponding SSC/SSS index,data pair
Keyword Parameters:
maxdt - maximum "acceptable" delta-time in hours
actdt - acutal delta-time from input time
filtb - optional filter b (integer 2: Al1, 3: AlMg)
res - optional resolution (integer: 1: half, 2: quarter)
half - switch, synonym for res=1
quarter - switch, synonym for res=2
expand_days - number of days to allow expanding search
status - 1: match found/returned in iout,dataout
0: no match found with desired constraints
sscfiles - optional list of files to consider
Calling Sequence:
IDL> get_ssc_best, timein, index, data [/half, /quart, filtb=xx]
CALLS: ***
BOX_MESSAGE, RD_XDA [1], RD_XDA [2], Rd_Roadmap [2], data_chk [1], data_chk [2]
last_nelem, rd_roadmap [1], read_sxt, ssc_files [1], ssc_files [2], ssc_files [3]
ssw_deltat, struct_where, time_window
History:
23-Jan-2001 - simplify some auto-context (ssw_fov_context) and SSC work
[Previous]
[Next]
NAME:
get_sscinfo
PURPOSE
To quickly collect the information for the exposures
comprising an SSC or SST.
CALLING SEQUENCE
get_sscinfo,index,sst=sst,sxt1,sxt2 [,sxt3]
INPUT
index, SSC or SST index structure.
OUTPUT
sxt1: array of index structures for the short exposure
sxt2: array of index structures for the long exposure
CALLS: ***
fmt_tim [1], fmt_tim [2], rd_obs
Note: For single-exposure SSCs then sxt1=sxt2.
OPTIONAL OUTPUT
sxt3: for SST, index structures for the super-long exposure.
Note: For double-exposure SSTs then sxt1=sxt2 and sxt3
refers to the super_long exposure.
If sxt3 is asked for when SSC index is input then
sxt3 remains undefined.
HISTORY
Journal File for acton@pachyderm.physics.montana.edu
Working directory: /disk/pd1/acton/movietime
Date: Fri Nov 12 10:23:25 2004 (LWA)
17-Nov-2004 LWA Changed loop indices to longword.
Handle no-short SSCs and SSTs.
18-Mar-2005 LWA Now call rd_obs with fmt_tim(index)
to deal with ms errors in index.time.
[Previous]
[Next]
NAME:
get_sscinfo
PURPOSE
To quickly collect the information for the exposures
comprising an SSC or SST.
CALLING SEQUENCE
get_sscinfo,index,sst=sst,sxt1,sxt2 [,sxt3]
INPUT
index, SSC or SST index structure.
OUTPUT
sxt1: array of index structures for the short exposure
sxt2: array of index structures for the long exposure
OPTIONAL OUTPUT
sxt3: for SST, index structures for the super-long exposure.
HISTORY
Journal File for acton@pachyderm.physics.montana.edu
Working directory: /disk/pd1/acton/movietime
Date: Fri Nov 12 10:23:25 2004 (LWA)
17-Nov-2004 LWA Changed loop indices to longword.
17-Nov-2004 SLF - from get_sscinfo, maybe faster.
[Previous]
[Next]
NAME:
GET_SSX_SLICE
PURPOSE:
CATEGORY:
CALLING SEQUENCE:
INPUTS:
POSITIONAL PARAMETERS:
KEYWORDS PARAMETERS:
OUTPUTS:
POSITIONAL PARAMETERS:
KEYWORDS PARAMETERS:
CALLS: ***
DR_CARR [1], DR_CARR [2], DR_CARR [3], MAKVEC, get_pnt, get_rb0p [1], get_rb0p [2]
gt_hxa, gt_res, gt_shape_cmd, int2secarr [1], int2secarr [2]
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
PROCEDURE:
EXAMPLE:
MODIFICATION HISTORY:
July, 1992. - Written by GLS, LMSC.
4-Dec-92 (GLS) - Modifications to correct for errors when extracting
SSE and SSW
10-Dec-92 (MDM) - Perform the out of range correction properly
19-Jun-93 (MDM) - Modified to add keyword output X0
[Previous]
[Next]
Name: get_string
Purpose: read and return file generated by sav_string
used for Yohkoh !path, documentation, filemaps
Input Parameters:
file - filename of file (written by save_idlpath)
if any keyword is set
Optional Keyword Parameters:
Output:
function returns contents of file
Method:
special files contain a single string (but the string may be long)
in XDR format for transporability among systems
Calling Sequence: string=get_string(file)
Categories:
swmaint, file i/o, gen, util
Notes:
The pair of routines [sav_string/get_string] were developed to allow
saving and restoring of several yohkoh parameters (ex: !path) to help
manage the Yohkoh idl environment but they are generic in nature and
other uses may be considered. They can be used in conjunction with
arr2str and str2arr to allow storing of string 'arrays'
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], concat_dir [4]
History: slf, 30-July-92
slf, 22-Jul-93 (use SITE instead of GEN)
[Previous]
[Next]
NAME:
GET_SUBARR2
PURPOSE:
Extracts sub-array from SDA files specified by INFIL
CALLING SEQUENCE:
subdata = get_subarr2(infil,ys=ys,zs=zs)
INPUTS:
OPTIONAL INPUTS:
OUTPUTS:
CALLS: ***
DATA_PATHS, RD_XDA [1], RD_XDA [2], Rd_Roadmap [2], anytim2ex [1], anytim2ex [2]
anytim2ints [1], anytim2ints [2], gt_res, int2secarr [1], int2secarr [2]
rd_roadmap [1], rot_pix2, sav_sda [1], sav_sda [2], sav_sda [3], tim2orbit [1]
tim2orbit [2], week_loop [1], week_loop [2], week_loop [3]
MODIFICATION HISTORY:
Written, Oct, 1992, G. L. Slater, LPARL
[Previous]
[Next]
NAME:
GET_SUNCENTER
PURPOSE:
Calculate the suncenter position (in SXT pixel coordinates) from
the HXA and IRU info in the PNT files.
Data reflects the spacecraft jitter. Useful to de-jitter SXT images.
CATEGORY:
CALLING SEQUENCE:
sunc = get_suncenter(pnt)
sunc = get_suncenter(index=index)
CALLED BY:
ALIGN_AR, HELIO_FOOT, RD_AR, SXTASEQ, get_suncenter2, term_obs
NOTE:
Most applications will not need to use any keyword parameters except
INDEX.
INPUTS:
pnt = pnt structure. Optional if index keyword supplied. In that
case, the pnt file is read automatically.
KEYWORDS (INPUT):
index = sxt index structure. If supplied, the suncenter position is
calculated only for the times given in the index structure.
In addition, the suncenter coordinates for the optical images
are corrected for the appropriate filter offsets.
/nofilt = do not test and correct for offsets of optical filters.
Useful if INDEX is not a SXT index or roadmap structure.
/noorbit = do not correct for orbital variations of the offset
between HXT and SXT. (fem file not read in this case.)
/nosecular = do not correct for secular variation of the offset
between HXT and SXT.
fem = fem orbital data structure. Optional, fem file read
automatically if not supplied.
sxt_xyt = float(4,*). Reference pixel offsets in sxt pixel units.
Will be used in place of HXA, if supplied.
Same format as SUNC
OUTPUTS:
sunc = suncenter coordinates in SXT full resolution pixels.
sunc(0,*) = x, sunc(1,*) = y, sunc(2,*) = pnt.time,
sunc(3,*) = pnt.day
KEYWORDS (OUTPUT):
code = vector. Indicates the reliability of each sun center position.
0 : error, no result, 1: result may be poor, no IRU correction,
2 : IRU jitter correction done (= normal result).
delta = vector. Time difference (in s) between index time and pnt
time for each sun center position. A value larger than a few
seconds indicates that the suncenter position may not be
reliable.
hxa_out = float(4,*). Returns all hxa data. Same format as SUNC.
Only works if sxt_xyt is NOT supplied.
CALLS: ***
HXA_SUNCENTER, IRU_FILT, IRU_S2Y, SVDFIT, anytim2ints [1], anytim2ints [2]
gt_day [1], gt_day [2], gt_filta, gt_time [1], gt_time [2], rd_pnt, sel_timrange [1]
sel_timrange [2], tbeep [1], tbeep [2], tbeep [3], tim2dset [1], tim2dset [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
The program reads all the pnt data at once, which may be a (memory)
problem for data that covers more than a week or two.
PROCEDURE:
The HXA detectors provide absolute suncenter positions, but with a
relatively coarse resolution. The gyros (IRU) have better resolution
but poor longterm stability. The program fits the gyro data onto
the HXA data to obtain the absolute accuracy of the HXA, and the
high resolution of the gyros. The gyros show a drift which can be
assumed to be linear for time intervals of up to about 10 minutes.
If the covered time period is longer, the program splits the data
into shorter intervals and performs a linear fit for each interval.
MODIFICATION HISTORY:
JPW, Jan. 1993. Evolved out of getcal_att and hxa_suncenter.
JPW, Apr. 1993. Bug fix (def. of tchi)
1-Jun-93 (MDM) - Modification to not crash when having trouble
finding the proper time
4-Jun-93 (MDM) - Similar modification to 1-Jun-93
5-Jun-93 (MDM) - Expanded to use the commanded S/C pointing in the
case that the HXA data is bad.
13-Jul-93 (JPW) Added filter to weed out IRU glitches.
28-Aug-93 (SLF) Add quiet keyword
27-Sep-93 (JPW) Replaced inline filter with call to iru_filt.
27-Sep-93 (JPW) Added call to iru_s2y to correct for iru switch.
9-mar-2005 (SLF) - change svdfit -> yoh_svdfit call
(work around non-backwardly compatible change
in svdfit and avoid ssw-gen side effects
[Previous]
[Next]
NAME:
GET_SUNCENTER
PURPOSE:
Calculate the suncenter position (in SXT pixel coordinates) from
the HXA and IRU info in the PNT files.
Data reflects the spacecraft jitter. Useful to de-jitter SXT images.
CATEGORY:
CALLING SEQUENCE:
sunc = get_suncenter(pnt)
sunc = get_suncenter(index=index)
CALLED BY:
ALIGN_AR, HELIO_FOOT, RD_AR, SXTASEQ, get_suncenter2, term_obs
NOTE:
Most applications will not need to use any keyword parameters except
INDEX.
INPUTS:
pnt = pnt structure. Optional if index keyword supplied. In that
case, the pnt file is read automatically.
KEYWORDS (INPUT):
index = sxt index structure. If supplied, the suncenter position is
calculated only for the times given in the index structure.
In addition, the suncenter coordinates for the optical images
are corrected for the appropriate filter offsets.
/nofilt = do not test and correct for offsets of optical filters.
Useful if INDEX is not a SXT index or roadmap structure.
/noorbit = do not correct for orbital variations of the offset
between HXT and SXT. (fem file not read in this case.)
/nosecular = do not correct for secular variation of the offset
between HXT and SXT.
fem = fem orbital data structure. Optional, fem file read
automatically if not supplied.
sxt_xyt = float(4,*). Reference pixel offsets in sxt pixel units.
Will be used in place of HXA, if supplied.
Same format as SUNC
OUTPUTS:
sunc = suncenter coordinates in SXT full resolution pixels.
sunc(0,*) = x, sunc(1,*) = y, sunc(2,*) = pnt.time,
sunc(3,*) = pnt.day
KEYWORDS (OUTPUT):
code = vector. Indicates the reliability of each sun center position.
0 : error, no result, 1: result may be poor, no IRU correction,
2 : IRU jitter correction done (= normal result).
delta = vector. Time difference (in s) between index time and pnt
time for each sun center position. A value larger than a few
seconds indicates that the suncenter position may not be
reliable.
hxa_out = float(4,*). Returns all hxa data. Same format as SUNC.
Only works if sxt_xyt is NOT supplied.
CALLS: ***
HXA_SUNCENTER, IRU_FILT, IRU_S2Y, SVDFIT, anytim2ints [1], anytim2ints [2]
gt_day [1], gt_day [2], gt_filta, gt_time [1], gt_time [2], rd_pnt, sel_timrange [1]
sel_timrange [2], tbeep [1], tbeep [2], tbeep [3], tim2dset [1], tim2dset [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
The program reads all the pnt data at once, which may be a (memory)
problem for data that covers more than a week or two.
PROCEDURE:
The HXA detectors provide absolute suncenter positions, but with a
relatively coarse resolution. The gyros (IRU) have better resolution
but poor longterm stability. The program fits the gyro data onto
the HXA data to obtain the absolute accuracy of the HXA, and the
high resolution of the gyros. The gyros show a drift which can be
assumed to be linear for time intervals of up to about 10 minutes.
If the covered time period is longer, the program splits the data
into shorter intervals and performs a linear fit for each interval.
MODIFICATION HISTORY:
JPW, Jan. 1993. Evolved out of getcal_att and hxa_suncenter.
JPW, Apr. 1993. Bug fix (def. of tchi)
1-Jun-93 (MDM) - Modification to not crash when having trouble
finding the proper time
4-Jun-93 (MDM) - Similar modification to 1-Jun-93
5-Jun-93 (MDM) - Expanded to use the commanded S/C pointing in the
case that the HXA data is bad.
13-Jul-93 (JPW) Added filter to weed out IRU glitches.
28-Aug-93 (SLF) Add quiet keyword
27-Sep-93 (JPW) Replaced inline filter with call to iru_filt.
27-Sep-93 (JPW) Added call to iru_s2y to correct for iru switch.
[Previous]
[Next]
NAME:
get_suncenter2
PURPOSE:
Given a set of input times, call GET_SUNCENTER and return the
SXT center pixel location. It does the most efficient reading of
the PNT database as possible.
CALLING SEQUENCE:
cen = get_suncenter2(times)
cen = get_suncenter2(index, code=hxacode, fem=fem)
INPUT:
times - The input time(s) in any of the 3 standard formats
OPTIONAL INPUT:
relative- An input time can be passed, and the output will be
an offset in FR pixels relative to the input time.
CALLS: ***
GET_SUNCENTER [1], GET_SUNCENTER [2], UNIQ [1], UNIQ [2], UNIQ [3]
anytim2ints [1], anytim2ints [2], fmt_tim [1], fmt_tim [2], int2secarr [1]
int2secarr [2], rd_pnt, tim2dset [1], tim2dset [2], tim2orbit [1], tim2orbit [2]
CALLED BY:
sxt_cen [1], sxt_cen [2]
OPTIONAL KEYWORD INPUT:
qdebug - If set, print some debugging statements.
pieces - If set, force the extraction on a piece by piece basis
(normally if it is less than 3 days, it will do one read
to the PNT file)
OUTPUT:
cen - The center of the SXT image in FR pixels
OPTIONAL KEYWORD OUTPUT:
code - GET_SUNCENTER code
= 0: error, no result
= 1: result may be poor, no IRU correction,
= 2: IRU jitter correction done (= normal result).
fem - The FEM records for the time period covered
delta - The offset in seconds between the input time and the PNT
data record used for the pointing derivation
HISTORY:
Written 20-Jun-93 by M.Morrison
15-Jul-93 (MDM) - Removed expanding of the time span being read when
doing GET_SUNCENTER in chunks
[Previous]
[Next]
NAME:
get_sunset
PURPOSE:
To run the AOSLOS program and to find the times of sunset to
a higher accuracy than the FEM files provide.
CALLING SEQUENCE:
times = get_sunset(sttim, entim)
prstr, get_sunset('18-aug-93', '20-aug-93')
INPUT:
sttime - The starting time to search for
OPTIONAL INPUT:
entim - The ending time to search for. If entim is not passed,
then entim is set to be "duration" hours after sttim.
CALLS: ***
anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2], fmt_tim [1]
fmt_tim [2], int2secarr [1], int2secarr [2], rd_fem, rd_orbit_event, run_dsnfil
CALLED BY:
go_sunset, mk_fem [1], mk_fem [2]
OPTIONAL KEYWORD INPUT:
duration- The number of hours to calculate the sunset time starting
from "sttim". If it is not passed in, and "entim" is not
passed, then duration will default to 12 hours
OUTPUT:
times - The times of the transition from day to night with
a one second accuracy.
OPTIONAL KEYWORD INPUT/OUTPUT:
fem_night- The sunset times as predicted by FEM
HISTORY:
Written 16-Aug-93 by M.Morrison
24-Aug-93 (MDM) - Changed to run AOSLOS program from +/- 120
seconds (instead of +/- 60 sec)
16-Mar-94 (MDM) - Modified to not call RD_FEM if the time is
passed in as FEM_NIGHT (made FEM_NIGHT
optional input as well as output)
13-Dec-94 (LWA) - Added quiet=quiet keyword.
[Previous]
[Next]
NAME:
get_sxa
PURPOSE:
Given a set of input times, return the single SXA data record
closest to that time.
CALLING SEQUENCE:
get_sxa, index, index_s, sxa
get_sxa, index, index_s, sxa, offset=offset
INPUT:
tim_in - The input time(s) in any of the 3 standard formats
OUTPUT:
index_s - The SXA index structure
sxa - The SXA data structure
OPTIONAL KEYWORD OUTPUT:
offset - The number of seconds that the matching SXA data is off
from the input time(s)
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], GET_NBYTES, RD_XDA [1], RD_XDA [2]
Rd_Roadmap [2], anytim2ints [1], anytim2ints [2], concat_dir [4], gt_filtb, gt_res
rd_roadmap [1], str_copy_tags [1], str_copy_tags [2], str_copy_tags [3]
str_copy_tags [4], tim2dset [1], tim2dset [2], tim2orbit [1], tim2orbit [2]
HISTORY:
Written 11-Aug-93 by M.Morrison (Using GET_PNT as starting point)
13-Sep-93 (MDM) - Modified slightly
[Previous]
[Next]
NAME:
get_sxt_dejit
PURPOSE:
Create an x/y dejitter vector for poly_movie, cont_movie, etc. from
an SXT index vector.
CATEGORY:
CALLING SEQUENCE:
xy = get_sxt_dejit(index,ref=ref_index)
INPUTS:
index = SXT index structure
KEYWORDS (INPUT):
ref_image = index of a reference image. Default is to use the first
image of the index.
OUTPUTS:
xy = dejitter array, xy(0,n) = x-jitter, xy(1,n) = y-jitter
KEYWORDS (OUTPUT):
CALLS: ***
gt_corner
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
all images should have same size and resolution. The same limitation
also applies to poly_movie, cont_movie, etc.
PROCEDURE:
MODIFICATION HISTORY:
JPW, 4-apr-94
[Previous]
[Next]
GET_SYN_25
To load the array s25(720,28) with broadened synthetic spectra for the
corresponding temperature, the array s25_synth(720,28) with the raw
synthetic data and to set scale variables.
Note the contents of s25 on return are:
s25(*,0) the wavelengths
s25(9:27,1) the scale factors for each spectrum ie divide by this and
peak in spectrum = 1.0
s25(*,9:27) the synthetic spectra
this is wasteful but at least the spectra can be referenced easily ie
s25(*,22) = spectrum for T=22 MK
Input:
s25 output array as described above
bwid width of Gaussian with which to convolve spectra
(13-17 about right for comparison with BCS data)
s25_synth raw synthetic data from files
Use:
IDL> get_synth,s25,bwid[,s25_synth]
NB The routine fe25_temp calls this routine if it has not been called
previously.
CDP June 92
V2 save s25_synth June 92
CALLS:
CALLED BY
FE25_BSC_TEMP
[Previous]
[Next]
Name: get_tapename
Purpose: return tapename for a given weekid
CALLS: ***
Rd_TapDir
CALLED BY:
modvolume_inf [1], modvolume_inf [2]
History: written, Oct.96, gal
[Previous]
[Next]
NAME:
GET_TIME_LAPSE
PURPOSE:
To convert a given time to a time in millisoconds from a base time.
CALLING SEQUENCE:
time_lapse = GET_TIME_LAPSE(time, base_time)
INPUT:
xx - Time in any format.
base_xx - Base time in any format.
OUTPUT:
time_lapse - Time in milliseconds from base_time.
SIDE EFFECT:
none
CATEGORY:
Yohkoh HXT data analysis.
CALLS: ***
anytim2ints [1], anytim2ints [2]
CALLED BY:
HXT_IMAGE_TIME, HXT_TIME2FRAME
HISTORY:
version 1.0 98.06.26 (Fri) T.Sakao written.
1.1 98.09.22 (Tue) Program modified so that it can
handle input time with any formats.
[Previous]
[Next]
NAME:
GET_TRACUBE
PURPOSE:
Extracts aligned sub-array from SDA files specified by INFIL
CALLING SEQUENCE:
INPUTS:
OPTIONAL INPUTS:
OUTPUTS:
CALLS: ***
BOX_CURSOR, C2S, CRP, DR_PHOTO [1], DR_PHOTO [2], DR_PHOTO [3], HXA_SUNCENTER
RD_XDA [1], RD_XDA [2], Rd_Roadmap [2], S2C [1], S2C [2], anytim2ex [1]
anytim2ex [2], anytim2ints [1], anytim2ints [2], get_pnt, get_rb0p [1]
get_rb0p [2], gt_res, gt_shape_cmd, int2secarr [1], int2secarr [2], rd_roadmap [1]
sav_sda [1], sav_sda [2], sav_sda [3], tim2orbit [1], tim2orbit [2]
MODIFICATION HISTORY:
Written, Feb, 1993, G. L. Slater, LPARL
[Previous]
[Next]
NAME:
GET_TRANGE
PURPOSE:
Selects time range using supplied INDEX as a guide
CATEGORY:
CALLING SEQUENCE:
times = get_trange(index,istart,istop)
INPUTS:
index index structure
OPTIONAL INPUT PARAMETERS:
KEYWORD PARAMETERS:
OUTPUTS:
times string array containing selected start and stop times
OPTIONAL OUTPUT PARAMETERS:
istart first index record after selected start time
istop last index record before selected end time
CALLS: ***
ADDTIME [1], ADDTIME [2], anytim2ex [1], anytim2ex [2], fmt_tim [1], fmt_tim [2]
tim2dset [1], tim2dset [2], yesnox [1], yesnox [2]
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
PROCEDURE:
User is allowed to modify start and stop times that are derived
from supplied index structure.
MODIFICATION HISTORY:
RDB 26-Jan-94 Written
[Previous]
[Next]
Name: get_visible
Purpose: return visible KSC orbit data
Input Parameters:
week - week# (default is current week)
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], STR2ARR [1], STR2ARR [2]
anytim2weekid [1], anytim2weekid [2], concat_dir [4], cont2time [1]
cont2time [2], gt_day [1], gt_day [2]
CALLED BY:
get_utevent [1], get_utevent [2], show_contacts, tim2pass
History:
6-apr-1995 (SLF) - written
8-apr-1995 (SLF) - new visible.dat format (include orbit)
call cont2time to parse contacts/mk_visible output
11-jan-1995 (SLF) - force 2 digit year...
[Previous]
[Next]
NAME:
get_wtype
PURPOSE:
get widget type
CALLING SEQUENCE:
wtype=get_wtype(event)
INPUTS:
event = widget event number
OUTPUTS:
wtype=type of widget (base, button, slider, etc)
PROCEDURE
examines tag names in event and widget_id structures
CALLS: ***
WIDG_TYPE
HISTORY:
Zarro (ARC) - written Oct'93
[Previous]
[Next]
Name:
get_xyrad
Purpose:
Fit a circle to a set of [x,y] pairs. Will determine x0, y0, and
(optionally) r0 = radius if /radius_fix is given.
Calling Sequence:
a = get_xyrad(data [,/radius_fix,/refit])
Inputs:
data = Image array - Given for re-drawing the plot if next.
Outputs:
Returned function = floating vector, length=3:
(0) = x position of the center of the circle
(1) = y position of the center of the circle
(2) = radius of the circle
Optional Input Parameters:
radius_fix = Radius. If specified, routine will not change the radius.
refit = If set, will ask questions to allow refit to be done.
17-oct-91, J. R. Lemen, Written
25-mar-92, JRL, Modified, Changed TVPLOT calls to PLOTS.
CALLS:
CALLED BY
NORH_GRID [1], NORH_GRID [2], SXT_GRID [1], SXT_GRID [2], SXT_GRID [3]
[Previous]
[Next]
Name: get_ydbhelp
Purpose: return one line descriptions about each input prefix
Calling Sequence:
help=get_ydbhelp(prefixs)
Calling Examples:
more,get_ydbhelp(['nar','fem','att'])
CALLS: ***
RD_PREFIX_DOC, data_chk [1], data_chk [2], str_replace [1], str_replace [2]
CALLED BY:
mk_ydbtab, rd_ydbtap
History:
15-Jun-1994 (SLF) - provide help for rd_ydbtap
[Previous]
[Next]
NAME:
get_yo_dates
PURPOSE:
Return significant Yohkoh dates.
CALLING SEQUENCE:
Launch = get_yo_dates(/launch) ; Return launch date
SXT_ent= get_yo_dates(/entrance) ; Date SXT entrance filter failed
SXT_ent= get_yo_dates(/entr,/verbos); Provide additional information
SXT_ent= get_yo_dates(/entr,/ver,/head); Provide additional information with header
SXT_ent= get_yo_dates(/entr,/value) ; Provide values of entrance filter
SC_pnt = get_yo_dates(/pointing) ; Dates of S/C pointing changes
SC_pnt = get_yo_dates(/poi,verbose) ; Provide additional information
SC_pnt = get_yo_dates(/poi,/val) ; Return the values
moon = get_yo_dates(moon=1) ; Get first eclipse date
mercury= get_yo_dates(/mercury) ; Get the mercury date
bakeouts=get_yo_dates(/bakeout) ; bakeout (ranges)
bakeouts=get_yo_dates(/bakeout,/header,/verbos) ; additional info
SC_pnt = get_yo_dates(index,/point) ; Return nominal pointing time of index
no_can = get_yo_dates(/no_canopus) ; dates Canopus (roll ref Star) lost
OPTIONAL INPUTS:
index = Standard Yohkoh index or time in any Yohkoh format
OPTIONAL INPUT KEYWORDS:
launch = Set to return launch date
entrance = Set to return dates when SXT entrance filter transmission changed
Value returned the fractional open area
safehold = Set ot return the dates when SXT was in safehold
pointing = Set to return dates of Yohkoh spacecraft pointing
verbose = Set to return additional information as a string vector
value = Set to return the associated value (rather than the date)
header = If verbose is set, return a header as first element of output
string vector
bakeout = return times of SXT CCD bakeouts (from file)
moon = time ranges for solar eclipses possibly seen by Yohkoh
eclipse = actual SFR image intervals when eclipses were seen
no_canopus = dates when Yohkoh roll reference star Canopus was lost
CALLED BY:
SXT_BAKEOUT_IN, SXT_TEEM2 [1], SXT_TEEM2 [2], SXT_TEEM2 [3], choose_sfc
get_epoch_sfcs [1], get_epoch_sfcs [2], go_lasdisk golaserdisk
go_lasdisk2 golaserdisk, mk_sdcs, mk_sfc [1], mk_sfc [2], mk_sff_pair [1]
mk_sff_pair [2], mk_sft [1], mk_sft [2], mk_ssc [1], mk_ssc [2], mk_syn_sfc [1]
mk_syn_sfc [2], mk_synsfc_coeff [1], mk_synsfc_coeff [2], mk_ydbtab, search_obs
sel_leak_image [1], sel_leak_image [3], sel_leak_image [4], sfc_prep [1]
sfc_prep [2], ssc_files [1], ssc_files [2], ssc_files [3], sxt_chk_era
sxt_eff_area, sxt_etemp, sxt_flux [1], sxt_flux [2], sxt_flux [3]
sxt_get_grill [1], sxt_get_grill [2], sxt_mornint, sxt_mwave, sxt_prep [1]
sxt_prep [2], sxt_prep [3], sxt_uvf_info [1], sxt_uvf_info [3], xdate [1]
xdate [2], xsearch_obs, yo_mkos1_dbase
RESTRICTIONS:
The keywords launch, entrance and pointing are mutually exclusive.
MODIFICATION HISTORY:
25-jan-93, J. R. Lemen LPARL, Written
22-aug-95, S. L. Freeland - second entrance filter failure
13-nov-95, JRL, Added safehold dates; Updated Moon (eclipse) dates
29-aug-96, S.L. Freeland - third entrance filter failterwq!
1-oct-97, S.L. Freeland - add BAKEOUT keyword and function
3-oct-97, S.L. Freeland - fine tune 3rd ent failure per LWA
2-feb-98, S.L.Freeeland - fourth ent filt failure (ESTIMATE!)
2-feb-99, S.L.Freeland - fifth ent filter failure (ESTIMATE!)
19-feb-99, P.G.Shirts - changed 1st ent. failure date from:
13-NOV-92 16:50:00 to 13-NOV-92 18:00:00
5th failure time to 30-Jan-99 22:03:37
24-feb-99, P.G.Shirts - changed fifth ent. failure date from:
30-Jan-99 22:03:37 to 30-JAN-99 23:17
27-feb-99, P.G.Shirts - changed 16 August 1995 filter failure
time from 08:21:02 to 08:04:20, per Acton
5-May-99, S.L.Freeland - declare leak era ~ VERY APPROX 18-apr-99
4-March-00, Zarro - fixed IDL 5.3 syntax error
17-May-00, B.N. Handy - Implement pointing changes. Needs more
history, but this will enable my QUICK
page OP_TERM_SCORE updates.
13-Aug-01, S.L. Freeland - add/modify entrance filter info(1999)
5-nov-02, S.L. Freeland - add end of mission (last sxt image+1sec)
to entrance filter epochs
23-Jul-2003, T. Metcalf - Added a pseudo entrace filter failure at
11-feb-00 13:00:20. This is not a real
failure but the pointing changed and it
changed the leak enough to act like an
entrance filter failure.
17-dec-2004, H. Hudson - added eclipse time ranges and made /moon return strarr(2)
11-jan-2004, H. Hudson - added detailed eclipse times based on manual inspection of SFRs
/eclipse returns strarr(2,n)
1-dec-2005, S. Freeland - add /NO_CANOPUS keyword&function
[Previous]
[Next]
NAME:
get_yo_dates
PURPOSE:
Return significant Yohkoh dates.
CALLING SEQUENCE:
Launch = get_yo_dates(/launch) ; Return launch date
SXT_ent= get_yo_dates(/entrance) ; Date SXT entrance filter failed
SXT_ent= get_yo_dates(/entr,/verbos); Provide additional information
SXT_ent= get_yo_dates(/entr,/ver,/head); Provide additional information with header
SXT_ent= get_yo_dates(/entr,/value) ; Provide values of entrance filter
SC_pnt = get_yo_dates(/pointing) ; Dates of S/C pointing changes
SC_pnt = get_yo_dates(/poi,verbose) ; Provide additional information
SC_pnt = get_yo_dates(/poi,/val) ; Return the values
moon = get_yo_dates(moon=1) ; Get first eclipse date
mercury= get_yo_dates(/mercury) ; Get the mercury date
bakeouts=get_yo_dates(/bakeout) ; bakeout (ranges)
bakeouts=get_yo_dates(/bakeout,/header,/verbos) ; additional info
SC_pnt = get_yo_dates(index,/point) ; Return nominal pointing time of index
OPTIONAL INPUTS:
index = Standard Yohkoh index or time in any Yohkoh format
OPTIONAL INPUT KEYWORDS:
launch = Set to return launch date
entrance = Set to return dates when SXT entrance filter transmission changed
Value returned the fractional open area
safehold = Set ot return the dates when SXT was in safehold
pointing = Set to return dates of Yohkoh spacecraft pointing
verbose = Set to return additional information as a string vector
value = Set to return the associated value (rather than the date)
header = If verbose is set, return a header as first element of output
string vector
bakeout = return times of SXT CCD bakeouts (from file)
CALLED BY:
SXT_BAKEOUT_IN, SXT_TEEM2 [1], SXT_TEEM2 [2], SXT_TEEM2 [3], choose_sfc
get_epoch_sfcs [1], get_epoch_sfcs [2], go_lasdisk golaserdisk
go_lasdisk2 golaserdisk, mk_sdcs, mk_sfc [1], mk_sfc [2], mk_sff_pair [1]
mk_sff_pair [2], mk_sft [1], mk_sft [2], mk_ssc [1], mk_ssc [2], mk_syn_sfc [1]
mk_syn_sfc [2], mk_synsfc_coeff [1], mk_synsfc_coeff [2], mk_ydbtab, search_obs
sel_leak_image [1], sel_leak_image [3], sel_leak_image [4], sfc_prep [1]
sfc_prep [2], ssc_files [1], ssc_files [2], ssc_files [3], sxt_chk_era
sxt_eff_area, sxt_etemp, sxt_flux [1], sxt_flux [2], sxt_flux [3]
sxt_get_grill [1], sxt_get_grill [2], sxt_mornint, sxt_mwave, sxt_prep [1]
sxt_prep [2], sxt_prep [3], sxt_uvf_info [1], sxt_uvf_info [3], xdate [1]
xdate [2], xsearch_obs, yo_mkos1_dbase
RESTRICTIONS:
The keywords launch, entrance and pointing are mutually exclusive.
MODIFICATION HISTORY:
25-jan-93, J. R. Lemen LPARL, Written
22-aug-95, S. L. Freeland - second entrance filter failure
13-nov-95, JRL, Added safehold dates; Updated Moon (eclipse) dates
29-aug-96, S.L. Freeland - third entrance filter failterwq!
1-oct-97, S.L. Freeland - add BAKEOUT keyword and function
3-oct-97, S.L. Freeland - fine tune 3rd ent failure per LWA
2-feb-98, S.L.Freeeland - fourth ent filt failure (ESTIMATE!)
2-feb-99, S.L.Freeland - fifth ent filter failure (ESTIMATE!)
19-feb-99, P.G.Shirts - changed 1st ent. failure date from:
13-NOV-92 16:50:00 to 13-NOV-92 18:00:00
5th failure time to 30-Jan-99 22:03:37
24-feb-99, P.G.Shirts - changed fifth ent. failure date from:
30-Jan-99 22:03:37 to 30-JAN-99 23:17
27-feb-99, P.G.Shirts - changed 16 August 1995 filter failure
time from 08:21:02 to 08:04:20, per Acton
5-May-99, S.L.Freeland - declare leak era ~ VERY APPROX 18-apr-99
4-March-00, Zarro - fixed IDL 5.3 syntax error
17-May-00, B.N. Handy - Implement pointing changes. Needs more
history, but this will enable my QUICK
page OP_TERM_SCORE updates.
13-Aug-2001, S.L.Freeland - add/modify entrance filter info(1999)
5-nov-2002, S.L.Freeland - add end of mission (last sxt image+1sec)
to entrance filter epochs
[Previous]
[Next]
NAME:
GET_YOHKOH_POS
PURPOSE:
locate Yohkoh in space
CATEGORY:
Yohkoh
CALLING SEQUENCE:
whole = get_yohkoh_pos(item)
INPUTS:
time-bearing item
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
structure containing time, date, radial distance, long, and lat
CALLS: ***
DSNFIL_TRIM, ORBIT_INPUT_TIME, gt_day [1], gt_day [2], gt_time [1], gt_time [2]
run_dsnfil
COMMON BLOCKS:
SIDE EFFECTS:
temporarily writes a file *ascii in the working directory. This
file should be automatically deleted, perhaps with all other
files named this way, be careful.
RESTRICTIONS:
Can only be used where the RUN_DSNFIL fortran code works!
MODIFICATION HISTORY:
HSH, written 29-Jan-97
[Previous]
[Next]
NAME:
GETCAL_ATT
PURPOSE:
Determine jitter of SXT flare data cube.
x/y pixel offsets for SXT are deduced from the spacecraft giro's.
The giro data is calibrated by either HXA or by supplied SXT
pixel offsets (e.g., from white light images run through korrel).
CALLED BY:
IRU_OFFS
Note: The procedure only works for rather short image sequences
up to about 15 minutes. For longer sequences, the assumption of
a linear giro drift is no longer valid.
CATEGORY:
CALLING SEQUENCE:
out = getcal_att(data,index,tvec)
INPUTS:
data = data structure of Yohkoh ada* file
index = index structure of Yohkoh ada* file
tvec = time vector for which the x/y pixel offsets are calculated.
The time vector can be either a SXT roadmap structure, or
a SXT index structure, or a plain longword vector with time
in milliseconds.
KEYWORDS (INPUT):
sxt_xyt = float(3,*). Reference pixel offsets in sxt pixel units.
Will be used in place of HXA, if supplied.
sxt_xyt(0,*) : sxt pixel shift in x,
sxt_xyt(1,*) : pixel shift in y,
sxt_xyt(2,*) : time (msec).
reftime = Reference time. Either index or roadmap structure, or
a plain longword (msec). Calibrate output so that
output pixel offsets = 0/0 at reftime.
/aspect_offset = if set, the aspect telescope offset is added to the
x/y pixel offset values. If tvec is a roadmap or index
structure, then only the offsets for images taken through
one of the two white light filters are corrected.
OUTPUTS:
out = float(3,*). Calculated pixel offsets for the supplied times in
tvec. Same format and units as sxt_xyt.
A positive x (y) offset indicates that the image needs to be
shifted to the E (S).
KEYWORDS (OUTPUT):
hxa_out = float(3,*). Returns hxa data. Same format as out.
Only works if sxt_xyt is NOT supplied.
CALLS: ***
FORZONES [1], FORZONES [2], YOH_SVDFIT, get_closest, gt_day [1], gt_day [2]
gt_filta, gt_time [1], gt_time [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
The program assumes that tvec covers less than one orbit.
If HXA is used to calibrate the giro's then the program assumes
that the number of hxa addresses (number of visible fiducial marks)
is constant throughout the period. And, that the solar limb is not
hidden by a fiducial mark.
PROCEDURE:
The giro data shows a linear slope which needs to be taken out
before use. This slope can assumed to be constant over time
intervals of several minutes. The program determines the slope
by comparison with either HXA or supplied calibrations.
MODIFICATION HISTORY:
JPW, Jan. 1992
JPW, May 1992. SXT roadmap or index allowed as tvec,
added /aspect_offset option,
added some HXA diagnostics.
SLF, Mar 2005 - change svdfit references -> yoh_svdfit
Work around non backwardly compatible svdfit
evolution and avoid ssw-gen side effects
[Previous]
[Next]
NAME:
GETCAL_ATT
PURPOSE:
Determine jitter of SXT flare data cube.
x/y pixel offsets for SXT are deduced from the spacecraft giro's.
The giro data is calibrated by either HXA or by supplied SXT
pixel offsets (e.g., from white light images run through korrel).
CALLED BY:
IRU_OFFS
Note: The procedure only works for rather short image sequences
up to about 15 minutes. For longer sequences, the assumption of
a linear giro drift is no longer valid.
CATEGORY:
CALLING SEQUENCE:
out = getcal_att(data,index,tvec)
INPUTS:
data = data structure of Yohkoh ada* file
index = index structure of Yohkoh ada* file
tvec = time vector for which the x/y pixel offsets are calculated.
The time vector can be either a SXT roadmap structure, or
a SXT index structure, or a plain longword vector with time
in milliseconds.
KEYWORDS (INPUT):
sxt_xyt = float(3,*). Reference pixel offsets in sxt pixel units.
Will be used in place of HXA, if supplied.
sxt_xyt(0,*) : sxt pixel shift in x,
sxt_xyt(1,*) : pixel shift in y,
sxt_xyt(2,*) : time (msec).
reftime = Reference time. Either index or roadmap structure, or
a plain longword (msec). Calibrate output so that
output pixel offsets = 0/0 at reftime.
/aspect_offset = if set, the aspect telescope offset is added to the
x/y pixel offset values. If tvec is a roadmap or index
structure, then only the offsets for images taken through
one of the two white light filters are corrected.
OUTPUTS:
out = float(3,*). Calculated pixel offsets for the supplied times in
tvec. Same format and units as sxt_xyt.
A positive x (y) offset indicates that the image needs to be
shifted to the E (S).
KEYWORDS (OUTPUT):
hxa_out = float(3,*). Returns hxa data. Same format as out.
Only works if sxt_xyt is NOT supplied.
CALLS: ***
FORZONES [1], FORZONES [2], YOH_SVDFIT, get_closest, gt_day [1], gt_day [2]
gt_filta, gt_time [1], gt_time [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
RESTRICTIONS:
The program assumes that tvec covers less than one orbit.
If HXA is used to calibrate the giro's then the program assumes
that the number of hxa addresses (number of visible fiducial marks)
is constant throughout the period. And, that the solar limb is not
hidden by a fiducial mark.
PROCEDURE:
The giro data shows a linear slope which needs to be taken out
before use. This slope can assumed to be constant over time
intervals of several minutes. The program determines the slope
by comparison with either HXA or supplied calibrations.
MODIFICATION HISTORY:
JPW, Jan. 1992
JPW, May 1992. SXT roadmap or index allowed as tvec,
added /aspect_offset option,
added some HXA diagnostics.
[Previous]
[Next]
NAME: getcurstr
Purpose: given ptrs to current values of menu keys assemble
the current key string.
CALLS: ***
ARR2STR [1], Arr2Str [2]
CALLED BY:
wmkkey_event [1], wmkkey_event [2]
History: written 14-jan-92
update 27-Jan-92 for clearing a single key
[Previous]
[Next]
NAME: GetDatDir
PURPOSE: Return the full data to the input archive directory
CALLS: ***
finddir [1], finddir [2]
CALLED BY:
mktap
HISTORY: written 15-Nov-91
update for multiple directories 7-Feb
[Previous]
[Next]
NAME:
GetFnPath
Purpose:
Prompt the user with the file which was not found and
allow the user to specify a path to the file.
CALLING SEQUENCE:
path = GetFnPath([filename=fileNa, idx=idx])
Input/Keyword:
fileNa list of user requested filenames
idx current index value for the filename list.
Returned:
path path to the unlocated file
CALLED BY:
CkFurFiles
History:
written by GAL 26-July-91
NOTE: this routine should be updated with the X-window
equivalent i/o.
[Previous]
[Next]
Name:
GetLast
Purpose:
Find and return the last time from a list of times,
using the external format.
CALLING SEQUENCE:
lastTime = GetLast(time)
Input:
time list of times in external format
Returned:
latest time in list.
CALLED BY:
AdjUsrTim
History:
written 25-Apr-90 by GAL
updated 21-June-91 for SOLAR-A
[Previous]
[Next]
NAME: getm1ans
PURPOSE: get the information for creating a log entry for a
master tape.
Parameters:
dev tape output device number
Optional Output Parameters:
tapename tape name
CALLS: ***
ADDTIME [1], ADDTIME [2], Rd_TapDir, STR2ARR [1], STR2ARR [2], anytim2ex [1]
anytim2ex [2], def_tapd [1], def_tapd [2], def_tapd [3], get_host [1]
get_host [2], input [1], input [2], mt, wrttcplog
History:
19-Dec-96 - GLS - Added tapename output parameter
[Previous]
[Next]
Pro getmax,b,maxb,xpos,ypos
Finds the maximum of a 2-d array, and returns the subscripts of that pixel
Input: b= input array
Output: maxb= max of b
xpos= column of max point
ypos= row of max point
CALLS:
CALLED BY
fort2hxi [1], fort2hxi [2]
[Previous]
[Next]
Name: getmenu
Purpose: Get information for buliding pull-down menus.
Input/keywords:
sxt request for sxt specific menu information
Returned:
.item button label-search key
.labels "pull-down menu" labels for button label
.vals actual value for each "pull-down menu" label
.type type of operation for each "pull-down" label
CALLS: ***
MAKE_STR [1], MAKE_STR [2], gt_expmode, gt_filta, gt_filtb, gt_res
CALLED BY:
wmkkey [1], wmkkey [2]
History: written 6-Jan-92, gal
3-Feb-92, update for adding dpe/time(msec)
4-Feb-92, update for img_max and comp
25-Apr-92, update for gt_dpe....
[Previous]
[Next]
NAME:
GetNarOrb (get nearest orbit)
PURPOSE:
Get the NewOrb_p information and the NewOrb_p-indics
which is nearest in time to the user input times.
CALLING SEQUENCE:
GetNarOrb, fileNa, userTim, NewOrb_p, iNewOrb_p, len
INPUT:
fileNa Observing log file name.
userTim list of user input times. For example,
start and end times (in order). Structure:
userTim = {name, time:long, day:fix}
Output:
NewOrb_p list of NewOrbit times and pointers.
iNewOrb_p list of NewOrb_p-indices corresponding
to input times.
len number of 32-byte logical records
following the last requested neworb_p.
CALLS: ***
BinarySea, GETNARORB, Rd_NewOrb_p [1], Rd_NewOrb_p [2], Rd_fHeader [1]
Rd_fHeader [2], Rd_fHeader [3]
History:
written 1-Apr-91 by GAL
3-Apr-91 added len parameter.
9-Apr-91 len parameter correction after improvements were
made to observing.log access rountines.
[Previous]
[Next]
NAME:
GetObsDat
PURPOSE:
Get the observing log data-vectors for user requested
times and search keys.
CALLING SEQUENCE:
GetObsDat, fileNa, [userTimes=userTim, key=key, which=which,
fid=fid, sxtp=sxtp, sxtf=sxtf, oth3=oth3]
INPUT:
fileNa Observing log file name.
The input can be a vector of names.
userTim list of user input times. For example,
start and end times (in order). format:
userTim = {struct, time:long, day:fix}
key string containing a keyword specifing
search name and value: key = {structure,
name:string, value: string}
which A filter for extracting data: a string
vector containing the entries to
extract: (e.g. sxtp, sxtf, oth3).
Output:
fid data-vector of fileID logical records.
sxtp data-vector of sxt logical records for
partial frame images i.e. PFI.
sxtf data-vector of sxt logical records for
full frame images i.e. FFI.
bcs data-vector of BCS instrument
hxt data-vector of HXT instrument
wbs data-vector of WBS instrument
CALLS: ***
CkTimeNkey, GETNARORB, RdObsDat, TimToOff
HISTORY:
written 1-Apr-91 by GAL
modified 9-Apr-91 for two types of sxt logical records
and a new data format. Other changes include
new interface to observing log access
rountines.
modified 7-May-91, name has been changed from GetObsda.
For each call it returns a map, fid, sxtp, sxtf,
oth3.... Inaddition, if usertim is 0 but a key
specified the whole file will be searched. If both
can be specified: example, time,NaBan.
modified 20-May-91, major upgrade for keyword searches
into the database.
modified 26-July-91, to update documentation and formal
parameters.
modified 20-Aug-91, for hxt and wbs as seperate records.
modified 16-Oct-91 (MDM) to allow a vector of input
filenames. Also initialized the output vectors
so that previous searches are not appended.
[Previous]
[Next]
NAME:
GetObsID
PURPOSE:
Given the beginning date of the Archive week return
the proper file ID for the Observing Log.
CALLING SEQUENCE:
obsFileID = GetObsID(startT = startTime)
INPUT/Keyword:
startTime string giving the start time of
archive week.
RETURNED:
obsFileID string in the format of yy_wka
where,
letter 'a' is an unused option saved
CD archive-- part I and II denoted as
'a' and 'b'.
CALLS: ***
ex2week [1], ex2week [2]
CALLED BY:
TapDir, mk_desat, mk_desat_wl, mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sfw
mktap_prep
NOTE: the following was dropped with
19-Feb-92 ver.
The file extendsion is the rev. number
of the acrhiving process (e.g. first
time is rev 1 and 2nd is 2 ...etc.)
HISTORY:
written 23-Sep-91 by GAL
updated 19-Feb-92, GAL for MONS ver # within file name.
i.e. dropping the ".1" which was the revno
of the archiving from the fileID.
1-Mar-92 (MDM) Changed "wk" to use I2.2 format statement
(it had trouble with week # < 10)
15-Apr-92 added trap for null input... add to avoid
hanging reformatter.
[Previous]
[Next]
NAME:
GetRng
PURPOSE:
Return a full list of file names (or fileids) given the
start and end of the list.
Calling Sequence:
rangelist = getrng( st_en_date, drecs,
[nearest_time=nearest_time]
some valid examples:
Using filenames to specify range:
fileNames = getrng(['adayymmdd.hhmm','adayymmdd.hhmm'],
drecs)
or Using file ids to specify range:
fileids = getrng(['yymmdd.hhmm','yymmdd.hhmm'], drecs)
Inputs:
st_en_date Two element array with start and
stop date and time in the Yohkoh
file format. If these have a
prefix the returned list also
does. If they DO NOT have a file
prefix then the ret. list is just
a list of fileids.
CALLS: ***
UNIQ [1], UNIQ [2], UNIQ [3], nearest_fid [1], nearest_fid [2]
CALLED BY:
RdTap [1], RdTap [2], RdTap [3], gen_file_id [1], gen_file_id [2]
History:
written 18-Nov-91, gal
updated 5-May-94, gal for either full file names or fids
in formal para. infns
updated 9-May-94, gal for nearest_time search.
[Previous]
[Next]
Name:
GetSDAVec
Purpose:
For each given SDA File Name (SFR or SPR), GetSDAVec
returns an roadmap-index list which corresponds
to the input requested times.
CALLING SEQUENCE:
err = GetSDAVec(fileNa, times, st_idx, [dSet=dSet])
Input:
fileNa SDA file name (spr or sfr)
times list of requested times for input file.
st_idx start value index for the output dset vector
Output/Keyword:
dSet list of roadmap-index values for data-ptrs
GetSDAVec err value:
0 indicates an error occurs
1 indicates that no error occured.
CALLS: ***
BinarySea, Rd_Roadmap [2], rd_roadmap [1]
CALLED BY:
DsetVec
History:
written 12-Mar-1991 by GAL (no error checking added yet)
3-Jul-91, added keyword to returned data-set-vector (dSet).
[Previous]
[Next]
NAME:
GetStrDat
Purpose:
Create a formatted string containning the date:
mn/dd/yr from integer format buffer.
CALLING SEQUENCE:
GetStrDat, timbuf, sDate, len, h=h
Input:
timbuf 2-dimensional day array (days since 79):
timbuf(4:6, ndates)
Output:
stime returned string listing with dates.
len length of string.
Keyword:
h header for date
CALLED BY:
Idx2List, yolist
History:
written 26-Mar-91 by GAL
31-July-91, added optional return header
[Previous]
[Next]
NAME:
GetStrDPmode
Purpose:
Create a formatted string (length=len) containing the
DP_mode information.
CALLING SEQUENCE:
GetStrDPmode, inbuf, strmode, len, h=h
Input:
inbuf byte buffer array with DP_mode information.
Output:
strmode a string array with encoded DP_mode information
len length of string.
Keyword:
h header for DPmode
CALLED BY:
Idx2List, yolist
History:
written 27-Mar-91 by GAL.
31-Jul-91, added optional return header
[Previous]
[Next]
NAME:
GetStrExpLev
Purpose:
Create a formatted string (length=len) containing the
periph information.
CALLING SEQUENCE:
GetStrExpLev, inbuf, per, strexp, len, [conv=conv, h=h]
Input:
inbuf buffer array with ExpLevMode information.
per periph byte to check for 10% mask
conv boolean flag for the conversion to seconds
Output:
strexp returned string array with encoded ExpLevMode
information.
len length of string array.
Keyword:
h returned header for ExpLev
CALLS: ***
ExpLevMode, Periph, mbe2sec
CALLED BY:
Idx2List, yolist
History:
written 27-Mar-91 by GAL.
31-Jul-91, added optional return header
12-Aug-91, call to ExpLevMode via keywords
25-Spe-91, added conv parameter to request exp values
in seconds and per parameter to test for
10% mask.
11-Nov-91, MDM changed variable "mask" to "mask0" to
avoid conflict with function mask
[Previous]
[Next]
Name:
GetStrFOVcen
PURPOSE:
Create a formatted string containning the FOV center
in arcsec from sun center (pitch and yaw).
CALLING SEQUENCE:
GetStrFOVcen, inbuf, strFOV, len, [h=h]
INPUT:
inbuf 2-dimensional integer array with pitch and yaw
values.
OUTPUT:
strFOV returned string listing with FOV_center info.
len lenght of returned string
CALLED BY:
Idx2List, yolist
History:
written 31-July-91 by GAL
[Previous]
[Next]
NAME:
GetStrImgPar
PURPOSE:
Create a formatted string representation of the
information contained within the "imgParam" byte-type
field.
CALLING SEQUENCE:
GetStrImgPar, inbuf, strImgPar, len, [h=h]
INPUT:
inbuf is 1-dimensional vector containning the values
for the byte-type field "imgParam".
OUTPUT:
strImgPar returned string array with encoded
imgParam information.
len length of returned strings
Keyword:
h header for ImgParam
CALLS: ***
ImgParam
CALLED BY:
Idx2List, yolist
HISTORY:
written 31-July-91 by GAL
12-Aug-91, call ImgParam with keywords
[Previous]
[Next]
NAME:
GetStrObsReg
PURPOSE:
Create a formatted string containning the Observing
Region #.
CALLING SEQUENCE:
GetStrObsReg, inbuf, strObsReg, len, [h=h]
INPUT:
inbuf byte array giving the ObsReg. #
OUTPUT:
strObsReg returned string with encoded OR#
len length of returned string
Keyword:
h returned header
CALLED BY:
Idx2List, yolist
History:
written 6-Aug-91 by GAL
[Previous]
[Next]
NAME:
GetStrPeriph
Purpose:
Create a formatted string with the status of aspect,
shutter, and filters.
CALLING SEQUENCE:
GetStrPeriph, inbuf, strPer, len, [h=h]
Input:
inbuf byte buffer with the status of aspect, shutter,
and filters (periph).
Output:
strPer returned string with periph status.
len length of string.
Keyword:
h header for Periph
CALLS: ***
Periph
CALLED BY:
Idx2List, yolist
History:
written 27-Mar-91 by GAL
31-July, added optional return header
12-Aug-91, Periph call via Keywords
[Previous]
[Next]
NAME:
GetStrpfiffi
Purpose:
Create a formatted string (length=len) containing the
pfi_ffi information.
CALLING SEQUENCE:
GetStrpfiffi, inbuf, strpf, len, [h=h]
Input:
inbuf buf array with pfi_ffi information.
Output:
strpf a string array with encoded pfi_ffi information.
len len of string array.
Keyword:
h header for pfiffi information
CALLS: ***
pfi_ffi
CALLED BY:
Idx2List
History:
written 26-Mar-91 by GAL.
updated 24-June-91 -- OR # changed to EXP#
31-July-91, added optional return header
12-Aug-91, pfi_ffi call via keywords
[Previous]
[Next]
NAME:
GETSTRSHPCMD
PURPOSE:
Create a formatted string containning the commanded
image shape nx columns by ny lines.
CALLING SEQUENCE:
GetStrShpCmd, inbuf, strShpCmd, len, [h=h]
Input:
inbuf 2-dimensional integer giving the number of
columns and lines.
Output:
strShpCmd returned string with encoded image
shape.
len length of returned string
Keyword:
h returned header
CALLED BY:
Idx2List, yolist
History:
written 30-Jul-91 by GAL
31-July-91, added optional returned header
[Previous]
[Next]
NAME:
GetStrTim
Purpose:
Create a formatted string containning the time:
hr:mn:ss.mss from integer format (milliseconds are
optional).
CALLING SEQUENCE:
GetStrTim, timbuf, stime, len, [h=h, msec=msec]
Input:
timbuf 2-dimensional time array: timbuf(0:3, ntimes)
Output:
stime return string with times.
len length of returned string.
Keywords:
h header for stime.
msec if present and/or = 1 will include milli-seconds
of the day in output format.
CALLED BY:
Idx2List, yolist
History:
written 26-Mar-91 by GAL
31-Jul-91, added optional return header
[Previous]
[Next]
NAME:
GetT
PURPOSE:
Get the start or end times of the archive from the
times of the files beginning with prefix 'p'.
CALLED BY:
FndDur
history: 15-nov-92,
6-Mar-92, sam filters bad files
[Previous]
[Next]
NAME: getwid
PURPOSE:
Calling Sequence:
wids = getwid(prefix, directory)
prefix a file prefix to get fileIDs for.
dir... the directory to check for files.
CALLS:
CALLED BY
mk_mo_disk2
[Previous]
[Next]
NAME: getwkextlst
PURPOSE: get the list of file extensions for the weekly files that
are archived within the 1st cpio file.
CALLING SEQ:
strlst = getwkextlst(fileID, [archdir])
INPUT:
fileID fileID for all weekly files ex. "yy_wka"
archdir optional list of data directories
RETURNED:
simple intarr containning the weekly file extensions.
(e.g. [01,02,01] for obs,pnt,trn)
NOTES:
return array is loaded into a structure field which
has a maximum of 10 elements.
CALLED BY:
Load_recs
HISTORY:
written 17-Feb-92, GAL
updated 19-Feb-92, new defin. for weekly fileIDs
yy_wka vs yy_wka.1
6-Mar-92, gal *.* findfile
[Previous]
[Next]
NAME: getwkprelst
PURPOSE: get the list of file prefixes for the weekly files that
are archived within the 1st cpio file.
CALLING SEQ:
strlst = getwkprelst(fileID, [archdir])
INPUT:
fileID fileID for all weekly files ex. "yy_wka"
archdir optional list of data directories
RETURNED:
simple string containning the weekly file prefixes.
(e.g. 'obs,pnt,trn')
NOTES:
return string is loaded into a structure field which
has a max length of 40bytes. 10*3+9(',') = 39 bytes.
CALLS: ***
ARR2STR [1], Arr2Str [2]
CALLED BY:
Load_recs
HISTORY:
written 17-Feb-92, GAL
updated 19-Feb-92, new defin. for weekly fileIDs
yy_wka vs yy_wka.1
6-Mar-92, *.* on findfile
24-Apr-95, changed the returned err flag for no files
found to a string(-1 => '').
[Previous]
[Next]
pro gifmovie,datacube,root,rio,gio,bio,reset=reset,fixcolors=fixcolors, $
nomovie=nomovie,quiet=quiet,moviecommand=moviecmd, $
reverse=mreverse,ncolors=ncolors,nosort=nosort,xrange=xrange, $
yrange=yrange,zrange=zrange,add=add,noreordercolors=noreordercolors, $
nocompresscolors=nocompresscolors
NAME:
GIFMOVIE
PURPOSE:
Read a sequence of GIF files and display the images as a movie.
CATEGORY:
CALLING SEQUENCE:
gifmovie,datacube,root,r,g,b
INPUTS:
datacube = data
root = string containing the root GIF filename to display.
Default = 'global'. Ignored if datacube is set on imput and
/reset is not set.
OPTIONAL INPUT PARAMETERS:
KEYWORD PARAMETERS
/fixcolors = Fix the color table. Can be very slow, but fixes problems
when the color table is not consistent from one image to the
next or when there are not enough colors available. It's
best to use /fixcolors whenever you think you might add
more images with the /add keyword.
/nocompresscolors = do not compress the color table. Should not be
used if you expect to add data later with /add.
Slightly faster. Has no effect unless /fixcolors is
set
/reset = read data even if datacube is defined (destroys contents)
/add = add the specified GIF files to the current data cube. If
/fixcolors is NOT set, the color table from the new data will be
used. If /fixcolors is set, the old color table specified in
r,g,b will be merged with the new color table to the extent
possible. If the size of r,g,b is greater than ncolors, only
the low end of the specified color table is used. It's best
to use /add and /fixcolors together.
ncolors = the number of colors to use. Default is !d.table_size which
is the correct value if the movie is to be displayed in
the current idl session.
moviecommand = command to execute to show the movie. The data cube is
in an array called datacube, so the command should be
a string something like 'movie,datacube'.
Default = 'xtmovie,datacube'.
xrange,yrange,zrange = 2 element vectors giving the x, y, and z ranges
of the data cube to use. These only work when
GIF files are read. They have no effect when
a datacube is passed.
/reverse = Make the movie reverse direction at the end of the movie.
Nearly doubles the size of the data cube.
/nosort = Do not sort the file names before reading.
/noreordercolors = do not reorder the color table. Has no effect unless
/fixcolors is set.
/nomovie = do not show the movie, just read in the data.
/quiet = work quietly.
OUTPUTS:
datacube = data
r,g,b = color table
COMMON BLOCKS:
SIDE EFFECTS:
Messes with the color table unless /nomovie is set.
RESTRICTIONS:
Images which are not the same size as the first image are skipped. If
this is a problem, use the xrange and yrange keywords.
The default movie viewer, xtmovie, uses xinteranimate which crashes
the entire IDL session if it runs out of memory. Setting moviecommand
to 'xstepper,datacube,/noscale' is more forgiving, but MUCH slower.
PROCEDURE:
GIF files with file name root+"*" are read in and displayed as a movie.
Calls bisect_order, kill_index, where_arr, xtmovie (xtmovie is not
called if the moviecommand keyword is set)
MODIFICATION HISTORY:
T. Metcalf 1994-12-14
1995-03-14 TRM Fixed a bug in the way the color table was returned
when using /fixcolors.
[Previous]
[Next]
NAME:
GLITCH_TRACKER
PURPOSE:
follow time development of column glitch. Sums Q-res DPE 13
images over glitch columns above row 200. Makes plot.
CATEGORY:
CALLING SEQUENCE:
glitch_tracer, infil, xx=xx
INPUTS:
infil, array of sfr files
OPTIONAL (KEYWORD) INPUT PARAMETERS:
xx, start and stop column numbers to integrate
OUTPUTS:
index, excess
CALLS: ***
RD_XDA [1], RD_XDA [2], Rd_Roadmap [2], UTPLOT [1], UTPLOT [2], UTPLOT [3]
UTPLOT [4], UTPLOT [5], UTPLOT [6], gt_dpe, gt_percentd, gt_res, rd_roadmap [1]
sxt_decomp [1], sxt_decomp [2]
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
[Previous]
[Next]
NAME:
gntcleen
PURPOSE:
cleans up the Nobeyama Radioheliograph image allowing for
images which have very bright pixels in them
CATEGORY:
CALLING SEQUENCE:
img = gntcleen(gntimg)
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
img
ROUTINES CALLED:
CALLED BY:
fl_suntoday [1], fl_suntoday [2], fl_suntoday [3], lastgbo, mk_sun_mosaic
sun_today [1], sun_today [2], sun_today [3]
MODIFICATION HISTORY:
DA written 23-May-94
BNH - 1-Jul-94 - Fixed problem that program would crash when
img was LONG rather than BYTE array. HISTOGRAM
offsets when looking at LONG, doesn't for BYTE.
SLF - protect against subscripting with -1
[Previous]
[Next]
type_comp added, PGS 10-Dec-97
cdmax change to 649 PGS 01-27-98
CALLS:
[Previous]
[Next]
NAME: GO_DSN_FINAL
PURPOSE: to produce output text file showing weekly summary
of DSN station-by-station coverage (incl. KSC)
CALLING SEQUENCE: go_dsn_final,indgen(9)+5
This will create a file ~/dsn_summary.txt, showing the
summary of DSN downlinks by station for weeks 5-13
INPUT: week (can be a vector)
OPTIONAL INPUT: outfile
METHOD: apply rd_tfile on solass* and visible files
CALLS: ***
DSN_FINAL, anytim2ex [1], anytim2ex [2], rd_tfile [1], rd_tfile [2]
HISTORY: NVN written 25-may-00
11-jun-00, debugged (HSH) to trap errors resulting from no SOLASS
3-jul-00, replaced Santiago printout with NASA total (HSH)
13-Oct-00, Add Santiago back in (BNH)
14-Oct-00, Re-organize output with Santiago (NVN)
[Previous]
[Next]
NAME: GO_DSN_FINAL
PURPOSE: to produce output text file showing weekly summary
of DSN station-by-station coverage (incl. KSC)
CALLING SEQUENCE: go_dsn_final,indgen(9)+5
This will create a file ~/dsn_summary.txt, showing the
summary of DSN downlinks by station for weeks 5-13
INPUT: week (can be a vector)
OPTIONAL INPUT: outfile
METHOD: apply rd_tfile on solass* and visible files
CALLS: ***
DSN_FINAL, anytim2ex [1], anytim2ex [2], rd_tfile [1], rd_tfile [2]
HISTORY: NVN written 25-may-00
11-jun-00, debugged (HSH) to trap errors resulting from no SOLASS
3-jul-00, replaced Santiago printout with NASA total (HSH)
13-Oct-00, Add Santiago back in (BNH)
14-Oct-00, Re-organize output with Santiago (NVN)
[Previous]
[Next]
NAME:
go_dsnftp
PURPOSE:
Cron job to ftp the DSN schedule files.
HISTORY:
2-Feb-96, J. R. Lemen (LPARL), Written (first ever cron job!)
28-Feb-96, JRL, Update the ASCA mail list
12-mar-96, JRL, Update the ASCA mail list
23-Apr-96, JRL, Update the ASCA mail list
6-May-96, JRL, Update the ASCA mail list
7-Aug-96, JRL, Update the ASCA mail list (Remove Paul and add Ueda san)
28-Aug-96, JRL, Update the ASCA mail list (Remove Ueda san and add Paul)
19-Dec-96, JRL, Update the ASCA mail list (Remove Paul and add Ueda san)
4-Jan-97, JRL, Update the ASCA mail list (Remove Ueda san and add Paul)
24-mar-97, JRL, Update the ASCA mail list (Change to Ueda)
28-mar-97, JRL, Update the ASCA mail list (Change to Ishida)
8-Apr-97, JRL, Update the ASCA mail list (Change to Paul)
18-Jun-97, JRL, Add Hudson to Yohkoh mail list
18-Jul-97, JRL, Update the ASCA mail list (Chage to Ueda)
3-Aug-97, JRL, Update the ASCA mail list (Add Paul again)
8-Aug-97, JRL, Update the ASCA mail list (Change to Paul)
13-Sep-97, JRL, Update the ASCA mail list (Change to Ueda and Ishida)
23-Sep-97, JRL, Update the ASCA mail list (Change to Paul)
8-Jan-98, JRL, Update the ASCA mail list (Change to Ueda)
21-Jan-98, JRL, Update the ASCA mail list (Change to Paul)
[Previous]
[Next]
NAME:
go_dsnftp
PURPOSE:
Cron job to ftp the DSN schedule files.
HISTORY:
2-Feb-96, J. R. Lemen (LPARL), Written (first ever cron job!)
28-Feb-96, JRL, Update the ASCA mail list
12-mar-96, JRL, Update the ASCA mail list
23-Apr-96, JRL, Update the ASCA mail list
6-May-96, JRL, Update the ASCA mail list
7-Aug-96, JRL, Update the ASCA mail list (Remove Paul and add Ueda san)
28-Aug-96, JRL, Update the ASCA mail list (Remove Ueda san and add Paul)
19-Dec-96, JRL, Update the ASCA mail list (Remove Paul and add Ueda san)
4-Jan-96, JRL, Update the ASCA mail list (Remove Ueda san and add Paul)
[Previous]
[Next]
NAME: go_farnik
PURPOSE: Compute the time-profile for the average Te, EM, and
normalized Intensity for an aligned data-cube from
"sxt_prep*".
CALLING SEQUENCE:
go_farnik, index, data, te, em, dte, dem, fl1, fl2, $
[time=time, comments=comments, interp=interp, $
unc_data=unc_data, satpix=satpix, $
noplot=noplot, lc_plot=lc_plot]
INPUT:
index index-data records prepared by "sxt_prep*"
data data cube: decompressed, bkg subtracted,
leak corrected, and aligned via "sxt_prep*".
OUTPUT:
te Log of the electron temperature
em Log of the emission measure
dte Log of the Te errors
dem Log of the em errors
fl1 Normalized Intensity profile for thicker fil. images
fl2 Normalized Intensity profile from thinner fil. images
OPTIONAL INPUT:
interp switch to use spline vs linear interpolation
average always computes average Te over area selected.
FUTURE option--
will make this a switch but is not available yet
unc_data uncertainty data from "sxt_prep*"
sat_pix saturated pixel maps from "sxt_prep*"
noplot switch to turn-off interactive plots
lc_plot switch to request light-curve plots
backsub switch to request interactive background emission
subtraction.
OPTIONAL OUTPUT:
time list of interpolated times
comments User entered notes for each run, also used
as plot titles.
EXAMPLE USAGE:
NOTES and WARNINGS:
HISTORY:
written by GAL summer 93
modified for release Sept. 93
22-Oct-93, added code to handle uncertainty values for
background subtraction and interpolation.
19-Nov-93, J. R. Lemen, Modified to call pprint
15-Nov-94, GAL, modified to hardcopy prints be portrait
7x5in in size; vectorized call to sxt_teem.
04-Apr-96, GLS, Corrected for case of unequal thick and thin
filter frames
[Previous]
[Next]
NAME:
GO_FIND_LIM2
PURPOSE:
Run FIND_LIMB on a data cube and report the results. It also
optionally creates an output file "FIND_LIMB.TXT"
CATEGORY:
Yohkoh/register
CALLING SEQUENCE:
out = go_find_lim2(index, data)
out = go_find_lim2(index, data, /outfil)
INPUT:
index - index structure associated with data
data - data matrix (3-D)
CALLS: ***
FIND_LIMB, fmt_tim [1], fmt_tim [2], get_dc_image [1], get_dc_image [2]
get_dc_image [3], get_dc_warm, gt_filta, gt_res, gt_shape_cmd, gt_temp_ccd
int2secarr [1], int2secarr [2], sxt_decomp [1], sxt_decomp [2]
CALLED BY:
mk_sot
OPTIONAL KEYWORD INPUT:
qplot - if present, make two plots, one of the sun center
positions and one of the radius values as a function
of time
outfil - if preset, create an output file FIND_LIMB.TXT
OUTPUT:
Returns Nx6 element floating array with results of the fit,
where "N" is the number of images passed
(0) = x in 1x1 pixels
(1) = y
(2) = radius
(3) = r_err
(4) = oblateness
(5) = oblateness angle
(6) = "bias"
(7) = brightness
(8) = sig brightness
OPTIONAL KEYWORD OUTPUT:
img - The background subtracted image that was passed to FIND_LIMB.
This should only be used if only one image is being passed
into GO_FIND_LIM2
dc_data - The dark current image used (it is good to use this on the
call since if GO_FIND_LIM2 is being used in a loop, a read
to the DC data file will be prevented.
This should only be used if only one image is being passed
into GO_FIND_LIM2
dc_index- The dark current index
This should only be used if only one image is being passed
into GO_FIND_LIM2
INSTRUCTIONS:
If r_err or other look
out of step with most of the other values, those data are probably
bad for one reason or another. At the time of writing, data taken
in SAA are systematically bad.
MODIFICATION HISTORY
Written by Hugh Hudson, Nov. 1991
19-Nov-91 MDM - Modified the calling sequence and documentation header
Also modified to extract only image (for example when
4x4 image is included in dataset with 2x2 images)
7-Dec-91 MDM - Changed the for loop to use NY (using siz(3) did not
work for a 2-D array)
28-Mar-92 HSH - Added the rest of the FIND_LIMB output parameters
20-Apr-92 MDM - Changed from GO_FIND_LIMB to GO_FIND_LIM2
Modified to do DC background subtraction
Also added the /OUTFIL option (instead of always
creating a FIND_LIMB.TXT file
Reversed the calling sequence to "index, data"
Made it a function instead of a procedure
Added keyword output "img", "dc_data", "dc_index"
20-May-92 MDM - Added GET_DC_WARM for cases where the CCD is not
cooled
19-Aug-92 MDM - Added SIG_BRIGHTNESS
16-Nov-93 MDM - Removed the SXT_DECOMP call for the dark current image
[Previous]
[Next]
NAME:
GO_FIND_LIMB
PURPOSE:
Run FIND_LIMB on a data cube and report the results. It also
creates an output file "FIND_LIMB.TXT"
CATEGORY:
Yohkoh/register
CALLING SEQUENCE:
go_find_limb, data, index, limb_out
INPUT:
data - data matrix (3-D)
index - index structure associated with data
OPTIONAL INPUT:
qplot - if present, make two plots, one of the sun center
positions and one of the radius values as a function
of time
OUTPUT:
limb_out - Nx8 element floating array with results of the fit,
where "N" is the number of images passed
(0) = x in 1x1 pixels
(1) = y
(2) = radius
(3) = r_err
(4) = oblateness
(5) = oblateness angle
(6) = "bias"
(7) = brightness
INSTRUCTIONS:
If r_err or other look
out of step with most of the other values, those data are probably
bad for one reason or another. At the time of writing, data taken
in SAA are systematically bad.
MODIFICATION HISTORY
Written by Hugh Hudson, Nov. 1991
19-Nov-91 MDM - Modified the calling sequence and documentation header
Also modified to extract only image (for example when
4x4 image is included in dataset with 2x2 images)
7-Dec-91 MDM - Changed the for loop to use NY (using siz(3) did not
work for a 2-D array)
28-Mar-92 HSH - Added the rest of the FIND_LIMB output parameters
CALLS:
[Previous]
[Next]
NAME:
go_get_sirius
PURPOSE:
To allow a user to interactively enter a start and end time
to be used to copy data from SIRIUS
OPTIONAL INPUT:
st_timstr- The start time/date in a string format
en_timstr- The end time/date in a string format
noninteractive - If present, do not prompt the user for an
"ok" before calling "get_sirius"
reformat_dir - If present, run the reformatter on the data
file that was copied and put the output in that directory
CALLS: ***
Ex2Int [1], Ex2Int [2], MAKE_STR [1], MAKE_STR [2], fmt_tim [1], fmt_tim [2]
get_sirius [1], get_sirius [2], int2secarr [1], int2secarr [2], reformat [1]
reformat [2], reformat [3], timstr2ex [1], timstr2ex [2], yesnox [1], yesnox [2]
HISTORY:
Written 14-Nov-91 by M.Morrison
19-Apr-92 (MDM) - Added "temp" option to extract temporary
data.
22-Apr-92 (MDM) - Added "reformat_dir" option
[Previous]
[Next]
NAME:
PURPOSE:
track HXT housekeeping temperatures
CATEGORY:
CALLING SEQUENCE:
go_hxt_hk_temps, 'hda97*', temp_id, times, temps, sigs
INPUTS:
file type
temperature channel (see hxt_hk_temp for definitions; 20 is HXT-E
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
times, temps, sigs
CALLS: ***
DATA_PATHS, RD_XDA [1], RD_XDA [2], STDEV, file_list [1], file_list [2], fmt_tim [1]
fmt_tim [2], hxt_hk_temp
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
HSH, written 18-Feb-97
[Previous]
[Next]
NAME:
go_lasdisk (go-laser-disk)
PURPOSE:
Either write images to the peritek board on SXT for recording on
a Panasonic laser disk or write "nvs" files and transfer to the
NVS system for recording on a Sony laser disk.
CALLING SEQUENCE:
go_lasdisk
go_lasdisk,/sfd
go_lasdisk,/help ; Get on-line documentation and return
go_lasdisk,initfrm=initfrm,nvsdirfn=nvsdirfn,$
/display,/sfd
OPTIONAL KEYWORD INPUTS:
initFrm = 1st nvs frame # to start recording. If absent, go_nvs5
work out this number for you. It uses the current frame
position + 1.
display = If set to 1 will plot the display in IDL window 0.
The NVS files will be written, but not copied to the NVS.
This is a diagnostic mode. The routine will try to
tell the user what it thinks the current frame number is.
nvsDirfn = Path and file prefix for output file.
(format = /user/nvs0). Default = $HOME/nvs0
sfd = If set to 1, will look for files on $DIR_SXT_SFD.
Will try to read an sfd and sfw file.
nosfw = IF set to 1, will not read and display sfw file.
If not set, code will check dates of sfd files
and compare with entrance filter failure date.
partial = If set to 1, will allow sfd movie restart from any pt.
genx = If set, will read images from a genx file instead.
This technique allows only one image and no title box.
The genx and sfd switches are mutually exclusive.
nobanner = If set, will not display the banner box. Also, will not tvscl.
(This option works with sda file input).
red,green,blue = Color Table vector
help = If set to 1, will more the documentation file to tty.
The routine then returns without doing anything else.
no_center = If set to 1, will not center image within video display,
default is to center image.
no_resize = If set to 1, will not resize image to maximum aspect,
default is to resize image to maximum size keeping aspect
ratio.
no_record = If set to 1, will not record image (option on peritek only).
margin_color color level for margin area around image. Default is 0.
particularly useful for reversed color tables.
*_disk sony and pana logging directories
device unit number of laser disc you are sending commands to
COMMENTS ON USING /genx OPTION:
If called with the /genx option, will not autoscale intensities in the
array.
CALLS: ***
ADDTIME [1], ADDTIME [2], BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3]
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], DATA_PATHS, GET_INFO2, GO_LASDISK
MK512, MK_MOVIE2, MORE [1], MORE [2], PINIT, PLCT, PMODE, RD_XDA [1], RD_XDA [2]
Rd_Roadmap [2], STRETCH2, anytim2ex [1], anytim2ex [2], break_file [4]
command_laser, concat_dir [4], file_list [1], file_list [2], fmt_tim [1]
fmt_tim [2], get_laser_type, get_logenv [1], get_logenv [2], get_yo_dates [1]
get_yo_dates [2], get_yo_dates [3], hist_scale, input [1], input [2]
rd_roadmap [1], rd_tfile [1], rd_tfile [2], restgen [1], restgen [2], stdct
sxt_decomp [1], sxt_decomp [2], tim2dset [1], tim2dset [2], tim2weekid
wmenu_sel [1], wmenu_sel [2]
MODIFICATION HISTORY:
written by JRL (01-mar-92)
8-May-92, modified to procedure by GAL
14-May-92, GAL, mod to speed up data collection
18-Jun-92, GAL, added option to read from sda files in dirs
other than the sfd... and added safety net for
images less than 512x512 such as pfis. Program
automatically enlarges these images and centers
them within a 512x512 frame.
4-sep-92, JRL, Fixed the loop algorithm (last images sometimes
were not plotted). Changed default answers.
Read status to get initfrm. Corrected spelling errors.
Changed name to go_nvs5. Added /sfd, /genx, /help switchs.
Multiple files can now be processed.
14-nov-92, JRL, Fixed a bug for the /genx case
10-Jan-92, GAL, added nosfw switch
11-Jul-93, MDM, Modification so that 0-212 scaling is only done for SFD
images. The non-SFD SDA files will just do a TV of whatever
is passed in.
11-oct-93, JRL, Added nobanner switch and red,green,blue input keywords.
Changed references of /ys to $ys so backup mode works.
22-dec-93, JRL, Fixed an IDL V3.1 related bug
1-Jul-94, GAL, Major rewrite and merge with peritek verison (go_per2opt).
15-Aug-94, GAL, Minor changes and further merging between peritek and nvs.
23-Aug-94, GAL, change data loop collection from single image to
block of images.
12-Sep-94, GAL, Fixed a problem assoc. with quarter Res images in sfd files.
29-Sep-94, GAL, Fixed a prompt message for charsize and minor change to
keyword use.
4-Oct-94, GAL, V3.0 Modified to work with multi-sfd-file requests, the nosfw
switch is no longer required as it checks against filter
failure date.
19-nov-94, SLF, removed spawns (more and rm) to avoid shell differences
7-jan-95, JRL, V3.1 Fixed previous modification to delete files.
24-Mar-95, GAL, tied the nolog switch to the genx. No logging while
reading from a genx file.
6-Oct-95, GAL, made a name change from go_lasdisk2 back to go_lasdisk.
12-Oct-95, LS , merged code some more. treat the NVS as if it were just
an image card. NVS is not plugged into the SONY anymore,
so command_laser can now be used to operate the SONYs.
- also added device option
- took out increment option. do 1 image at a time.
- fixed a bug. now you can do multiple files, and the
proper file index will be passed to mk_movie2
21-Feb-96, JRL, Allow color table to be 0-31
30-Aug-96, GLS, Changed default 'Optical Disk number and side' to 004A.
8-Jan-97, GAL, changed the default color table at places other than
ISAS to also be red.
[Previous]
[Next]
NAME:
go_lasdisk2 (go-laser-disk)
PURPOSE:
Either write images to the peritek board on SXT for recording on
a Panasonic laser disk or write "nvs" files and transfer to the
NVS system for recording on a Sony laser disk.
CALLING SEQUENCE:
go_lasdisk
go_lasdisk,/sfd
go_lasdisk,/help ; Get on-line documentation and return
go_lasdisk,increment=increment,initfrm=initfrm,nvsdirfn=nvsdirfn, $
/display,/sfd
OPTIONAL KEYWORD INPUTS:
increment = Number of files to write at a time to disk (default=10).
Lower this number to 5 if you want to reduce the impact
to the workstation.
initFrm = 1st nvs frame # to start recording. If absent, go_nvs5
work out this number for you. It uses the current frame
position + 1.
display = If set to 1 will plot the display in IDL window 0.
The NVS files will be written, but not copied to the NVS.
This is a diagnostic mode. The routine will try to
tell the user what it thinks the current frame number is.
nvsDirfn = Path and file prefix for output file.
(format = /user/nvs0). Default = $HOME/nvs0
sfd = If set to 1, will look for files on $DIR_SXT_SFD.
Will try to read an sfd and sfw file.
nosfw = IF set to 1, will not read and display sfw file.
If not set, code will check dates of sfd files
and compare with entrance filter failure date.
partial = If set to 1, will allow sfd movie restart from any pt.
genx = If set, will read images from a genx file instead.
This technique allows only one image and no title box.
The genx and sfd switches are mutually exclusive.
nobanner = If set, will not display the banner box. Also, will not tvscl.
(This option works with sda file input).
red,green,blue = Color Table vector
help = If set to 1, will more the documentation file to tty.
The routine then returns without doing anything else.
no_center = If set to 1, will not center image within video display,
default is to center image.
no_resize = If set to 1, will not resize image to maximum aspect,
default is to resize image to maximum size keeping aspect
ratio.
no_record = If set to 1, will not record image (option on peritek only).
margin_color color level for margin area around image. Default is 0.
particularly useful for reversed color tables.
*_disk sony and pana logging directories
COMMENTS ON USING /genx OPTION:
If called with the /genx option, will not autoscale intensities in the
array.
If number of images in the genx file is large, IDL may run out of core.
In that case, try increment=1.
CALLS: ***
ADDTIME [1], ADDTIME [2], BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3]
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], DATA_PATHS, GET_INFO2, GO_LASDISK2
MK512, MK_MOVIE2, MORE [1], MORE [2], PINIT, PLCT, PMODE, RD_XDA [1], RD_XDA [2]
Rd_Roadmap [2], STRETCH2, anytim2ex [1], anytim2ex [2], break_file [4]
command_laser, concat_dir [4], data_type [1], data_type [2], dont_use_this [1]
dont_use_this [2], file_list [1], file_list [2], fmt_tim [1], fmt_tim [2]
get_laser_type, get_logenv [1], get_logenv [2], get_yo_dates [1]
get_yo_dates [2], get_yo_dates [3], hist_scale, input [1], input [2], nvsstat
rd_roadmap [1], rd_tfile [1], rd_tfile [2], restgen [1], restgen [2], stdct
sxt_decomp [1], sxt_decomp [2], tim2dset [1], tim2dset [2], tim2weekid
wmenu_sel [1], wmenu_sel [2]
MODIFICATION HISTORY:
written by JRL (01-mar-92)
8-May-92, modified to procedure by GAL
14-May-92, GAL, mod to speed up data collection
18-Jun-92, GAL, added option to read from sda files in dirs
other than the sfd... and added safety net for
images less than 512x512 such as pfis. Program
automatically enlarges these images and centers
them within a 512x512 frame.
4-sep-92, JRL, Fixed the loop algorithm (last images sometimes
were not plotted). Changed default answers.
Read status to get initfrm. Corrected spelling errors.
Changed name to go_nvs5. Added /sfd, /genx, /help switchs.
Multiple files can now be processed.
14-nov-92, JRL, Fixed a bug for the /genx case
10-Jan-92, GAL, added nosfw switch
11-Jul-93, MDM, Modification so that 0-212 scaling is only done for SFD
images. The non-SFD SDA files will just do a TV of whatever
is passed in.
11-oct-93, JRL, Added nobanner switch and red,green,blue input keywords.
Changed references of /ys to $ys so backup mode works.
22-dec-93, JRL, Fixed an IDL V3.1 related bug
1-Jul-94, GAL, Major rewrite and merge with peritek verison (go_per2opt).
15-Aug-94, GAL, Minor changes and further merging between peritek and nvs.
23-Aug-94, GAL, change data loop collection from single image to
block of images.
12-Sep-94, GAL, Fixed a problem assoc. with quarter Res images in sfd files.
29-Sep-94, GAL, Fixed a prompt message for charsize and minor change to
keyword use.
4-Oct-94, GAL, V3.0 Modified to work with multi-sfd-file requests, the nosfw
switch is no longer required as it checks against filter
failure date.
19-nov-94, SLF, removed spawns (more and rm) to avoid shell differences
7-jan-95, JRL, V3.1 Fixed previous modification to delete files.
24-Mar-95, GAL, tied the nolog switch to the genx. No logging while
reading from a genx file.
6-Oct-95, GAL, made this routine obsolete
[Previous]
[Next]
NAME: go_mk_cd
Purpose: Make a cd archive from tape.
Keyword Parameters:
stage_disk Complete Path to stage area on disk. If not
supplied, then default staging area for dumping
and compression will be /sxt8data5/stage_b1
weekid Complete name of tape, e.g., '95_381.01-1.220'
tape_dev tape device: default = 0
mkrootdir passed through to mk_cd.pro. Creates a root
level directory on the cd.
qstop debug flag. Stops execution
of go_mk_cd so the dump script can be
examined. Note: the dump script default
writes the script to the staging area,--
in this cae the script is erased before data
is written to the staging area.
dump_only returns from procedure after dumping files and
before executing mk_cd.pro
scrpt_loc Alternate directory for writing 'my_cd' script
Default directory is the staging area. When
go_mk_cd calls mk_cd, it enforces it causes
mk_cd to write its scripts to the same file
that go_mk_cd does. Note: mk_cd.pro called
by itself has a different default directory
for writing script than go_mk_cd.
uniq_nm Appends year + date to 'dump_week' script
so 'dump_week' is identifiable and will not
be overwritten by calls to go_mk_cd for other
tapes made from the same directory.
Output Parameters:
drecs_st If this keyword is included, then on completion
of go_mk_cd, the structure drecs_comp will
be returned, which contains the XBD files
read from tape, and also from disk. Useful
for examining discrepances in files and file
sizes reported by XBD files.
bad_vects A structure containing an explanatory readme string,
and 6 vectors with value 0 in position index
where no write error was found after dump from disk,
and contain a 1 in the position index where a write
error was found for that type of file, e.g., ada, sfr,...
Some Example Calls:
go_mk_cd, weekid='92_47a.01-1.170'
assumes: tape_dev=0, stage_disk=/sxt8data5/stage_b1'
Will exit on error, AND WILL NOT pass out drecs_st.
go_mk_cd, weekid='92_47a.01-1.170', drecs_st=drecs_st, bad_vects=bad_vects
assumes: tape_dev=0, stage_disk=/sxt8data5/stage_b1'
Will exit on error, AND WILL pass out drecs_st, and bad_vects.
go_mk_cd, weekid='92_47a.01-1.170', /qstop
Halts before tape dump to allow for dump script debugging.
go_mk_cd, weekid='92_47a.01-1.170', tape_dev=1,weekid='97_24',$
scrpt_loc='/sxt8data4/stage_a1'
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], RdTap [1], RdTap [2], RdTap [3]
Rd_TapDir, STR2ARR [1], STR2ARR [2], break_file [4], def_tapd [1], def_tapd [2]
def_tapd [3], file_append [1], file_append [2], file_size [1], file_size [2]
mk_cd [1], mk_cd [2], mtcmd [1], mtcmd [2], weekfiles
Note: different tape device, different location to write dump tape script
History:
PGS 07-Jan-98, modified from prep_week.pro & mk_cd.pro
PGS 05-Feb-98, added mkrootdir, qstop, drecs, error checks.
PGS 10-Feb-98, added name checks, file checks, expanded weekid
input, added bad_vects.
[Previous]
[Next]
ROUTINE:
go_mk_orbit_fil
PURPOSE:
Makes the DSN predictions for +3 to +7 weeks, and
Creates the *16s.ascii file for op_first_guess
CALLING SEQUENCE:
Run it batch from the operating system with this command:
% idl_batch go_mk_orbit_fil
COMMENTS:
This routine should only need to be run if the copy of orbital
elements to the mainframe does not occur for some reason.
However, in this case, an old set of orbital elements will be
generated.
MODIFICATION HISTORY:
Written, 27-oct-92, J. R. Lemen
[Previous]
[Next]
batch driver for mk_spd (after testing, mk_spd is called from go_toban)
[Previous]
[Next]
cron job to generate daily summary data files
[Previous]
[Next]
NAME: go_mktap
PURPOSE: source the mktap.com file from IDL and put it in
the background.
ASSUMES: user is in the directory where "mktap.com" located.
HISTORY:
written by gal, 15-Apr-92
30-Nov-93 (MDM) - Added IDL error log file checking
- Added sending mail when completed
19-Dec-96 (GLS) - Modified mail message
[Previous]
[Next]
NAME: go_mktap1
PURPOSE: source the mktap.com file from IDL and put it in
the background.
ASSUMES: user is in the directory where "mktap1.com" located.
HISTORY:
written by gal, 15-Apr-92
added delay so log file can be written
2-Oct-93 (MDM) - Extended delay from 2 minutes to
8 minutes.
30-Nov-93 (MDM) - Added IDL error log file checking
- Added sending mail when completed
[Previous]
[Next]
NAME:
go_nvs4
PURPOSE:
Create "n" nvs files and display them if requested
FORMAL PARAMETERS:
increment have no more than n-increment" nvs files
on the disk at any given time.
display display and review images before record
initFrm 1st nvs frame # to start recording
nvsDirfn nvs directory and file prefix
format = /yd1/sub/nvs0
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONGRID [1], CONGRID [2]
CONGRID [3], GET_INFO2, MK512, RD_SDA [1], RD_SDA [2], RD_SDA [3], Rd_Roadmap [2]
STEPPER [1], STEPPER [2], STEPPER [3], STEPPER [4], STEPPER [5], STEPPER [6]
STEPPER [7], STR2ARR [1], STR2ARR [2], break_file [4], file_list [1]
file_list [2], input [1], input [2], int2secarr [1], int2secarr [2], mk_close_vec
mk_nvs_movie, rd_roadmap [1], sxt_decomp [1], sxt_decomp [2], wmenu_sel [1]
wmenu_sel [2]
History:
written by JRL (01-mar-92)
8-May-92, modified to procedure by GAL
14-May-92, mod to speed up data collection
18-Jun-92, added option to read from sda files in dirs
other than the sfd... and added safety net for
images less than 512x512 such as pfis. Program
automatically enlarges these images and centers
them within a 512x512 frame.
31-aug-92, Fixed the loop alogorithm (last images sometimes
were not plotted). Changed default answers.
Read status to get initfrm
[Previous]
[Next]
NAME:
go_nvs5
PURPOSE:
Write "nvs" files and transfer to the NVS for recording on laser disk.
CALLING SEQUENCE:
go_nvs5
go_nvs5,/sfd
go_nvs5,/help ; Get on-line documentation and return
go_nvs5,increment=increment,initfrm=initfrm,nvsdirfn=nvsdirfn, $
/display,/sfd
OPTIONAL KEYWORD INPUTS:
increment = Number of files to write at a time to disk (default=10).
Lower this number to 5 if you want to reduce the impact
to the workstation.
initFrm = 1st nvs frame # to start recording. If absent, go_nvs5
work out this number for you. It uses the current frame
position + 1.
display = If set to 1 will plot the display in IDL window 0.
The NVS files will be written, but not copied to the NVS.
This is a diagnostic mode. The routine will try to
tell the user what it thinks the current frame number is.
nvsDirfn = Path and file prefix for output file.
(format = /user/nvs0). Default = ~/nvs0
sfd = If set to 1, will look for files on /yd1/sfd.
Will try to read an sfd and sfw file.
nosfw = IF set to 1, will not read and display sfw file.
partial = If set to 1, will allow sfd movie restart from any pt.
genx = If set, will read images from a genx file instead.
This technique allows only one image and no title box.
The genx and sfd switches are mutually exclusive.
nobanner = If set, will not display the banner box. Also, will not tvscl.
(This option works with sda file input).
red,green,blue = Color Table vector
help = If set to 1, will more the documentation file to tty.
The routine then returns without doing anything else.
COMMENTS ON USING /genx OPTION:
If called with the /genx option, will not autoscale the array.
If number of images in the genx file is large, IDL may run out of core.
In that case, try increment=1.
CALLS: ***
ADDTIME [1], ADDTIME [2], BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3]
GET_INFO2, MK512, RD_SDA [1], RD_SDA [2], RD_SDA [3], Rd_Roadmap [2], STRETCH2
anytim2ex [1], anytim2ex [2], break_file [4], file_list [1], file_list [2]
fmt_tim [1], fmt_tim [2], hist_scale, input [1], input [2], mk_nvs_movie, nvsstat
rd_roadmap [1], restgen [1], restgen [2], stdct, sxt_decomp [1], sxt_decomp [2]
tim2dset [1], tim2dset [2], wmenu_sel [1], wmenu_sel [2]
MODIFICATION HISTORY:
written by JRL (01-mar-92)
8-May-92, modified to procedure by GAL
14-May-92, GAL, mod to speed up data collection
18-Jun-92, GAL, added option to read from sda files in dirs
other than the sfd... and added safety net for
images less than 512x512 such as pfis. Program
automatically enlarges these images and centers
them within a 512x512 frame.
4-sep-92, JRL, Fixed the loop algorithm (last images sometimes
were not plotted). Changed default answers.
Read status to get initfrm. Corrected spelling errors.
Changed name to go_nvs5. Added /sfd, /genx, /help switchs.
Multiple files can now be processed.
14-nov-92, JRL, Fixed a bug for the /genx case
10-Jan-92, GAL, added nosfw switch
11-Jul-93, MDM, Modification so that 0-212 scaling is only done for SFD
images. The non-SFD SDA files will just do a TV of whatever
is passed in.
11-oct-93, JRL, Added nobanner switch and red,green,blue input keywords.
Changed references of /ys to $ys so backup mode works.
22-dec-93, JRL, Fixed an IDL V3.1 related bug
[Previous]
[Next]
NAME:
go_per2opt
PURPOSE:
Write images from SDA files to the Panasonic optical disk recorder
from the Peritek.
Calling Sequence:
.run go_per2opt (main routine)
The user will be asked to select sda file names. He will then be asked
if he wants to select a set of file names containing secondary images.
For example, sfd and sfw files can be display together this way.
Modification History:
26-may-92, Written, J. R. Lemen (LPARL)
13-Aug-92, modified for two color tables, GAL.
17-Aug-92, modified log, text titles, and prompts, GAL.
27-Aug-92, minor mods, GAL.
27-Jan-93, minor mods to work without SFW files, MDM
02-Jul=93, fixed a few bugs with ff structure. current frame is now
really the current frame
[Previous]
[Next]
NAME :
GO_PFICC
PURPOSE:
Driver to calculate relative displacement of sunspots using CC_OFF2.
CALLING SEQUENCE:
.run go_pficc
INPUTS:
data = PFIs data cube
index = structure of index
OUTPUTS:
SIDE EFFECT:
COMMON BLOCKS:
MODIFICATION HISTORY:
Written May 20, 1992 by Bachtiar Anwar
Modified May 25, 1992 by Bachtiar Anwar, Hugh Hudson
- deleted summation of CC_OFFSETS output
- added iteration for CC
- saving spots position to variable array xyspot(2,*,*)
- allowing to check "error" of CC_OFF2
[Previous]
[Next]
NAME:
GO_QUICK
PURPOSE:
create quick looks at Yohkoh data, software, database diagnostics
to be shown on the $ftp/pub/sxt_co/quick/quick.html display
CATEGORY:
CALLING SEQUENCE:
main program
INPUTS:
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
COMMON BLOCKS:
SIDE EFFECTS:
ROUTINES
runs the "quick" series of programs on this directory (/0p/sxt_co/idl)
RESTRICTIONS:
MODIFICATION HISTORY:
August 1998, written (HSH)
23-Aug-98, added LASTSFD (HSH)
08-Oct-98, added default ftp location, recast in terms of environmentals.
24-Nov-98, added LASTSFD_DIFF (HSH)
06-Jan-99, added FAKE_PATROL, SHOW_CONTACTS. Commented out QUICKLIMB.
(DMcK)
11-Jan-99, added SET_PLOT,'Z' after LATEST_SFDS_GIF, to counter the
explicit set_plot,'x' within that program. (DMcK)
9-Jul-99, revised the terminator display to account for
the new normal pointing installed 2-Jul-99.
Added SXT_COVERAGE_MAP. (HSH)
9-Jul-99, OVER_LINEPLOT (BH)
18-Jul-99, LASTKSC added (HSH)
11-Oct-99, added spawn to 'convert' .gif for isass0/1 login banners (PGS)
17-Oct-99, added quick_dpe, note: reverses color table. (PGS)
12-nov-99, added '/quick' to fake_patrol call. (PGS)
18-Apr-00, added plottrav call. (BNH)
23-AUg-00, wrapped separate activities in 'execute' statements & IF-blocks. (PGS)
09-Jul-01, edited path to 'convert' (DMcK)
28-Aug-01, commented out error message for latest_sfd_gifs. (PGS)
[Previous]
[Next]
NAME:
GO_QUICK
PURPOSE:
create quick looks at Yohkoh data, software, database diagnostics
to be shown on the $ftp/pub/sxt_co/quick/quick.html display
CATEGORY:
CALLING SEQUENCE:
main program
INPUTS:
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
COMMON BLOCKS:
SIDE EFFECTS:
ROUTINES
runs the "quick" series of programs on this directory (/0p/sxt_co/idl)
RESTRICTIONS:
MODIFICATION HISTORY:
August 1998, written (HSH)
23-Aug-98, added LASTSFD (HSH)
08-Oct-98, added default ftp location, recast in terms of environmentals.
[Previous]
[Next]
NAME:
go_rasm_files
PURPOSE:
Call mk_rasm_files from the script call_rasm
CALLING SEQUENCE:
IDL go_mk_rasm_files
(This is designed to run IDL in batch mode.)
MODIFICATION HISTORY:
Written, 16-sep-92, J. R. Lemen
[Previous]
[Next]
NAME:
go_rd_obs
PURPOSE:
Front end main program for calling RD_OBS (read observing log)
HISTORY:
Written 23-Nov-92 by M.Morrison
[Previous]
[Next]
NAME:
go_rdtap
PURPOSE:
To read a Yohkoh Archive tape, via menus and point and click.
CALLS: ***
RdTap [1], RdTap [2], RdTap [3], Rd_TapDir, STR2ARR [1], STR2ARR [2], def_tapd [1]
def_tapd [2], def_tapd [3], file_list [1], file_list [2], gen_fn [1], gen_fn [2]
get_afile_size [1], get_afile_size [2], input [1], input [2], mt, mtcmd [1]
mtcmd [2], prt_afile_size [1], prt_afile_size [2], wmenu_sel [1], wmenu_sel [2]
yesnox [1], yesnox [2]
Note: default mode is to read the tape directory files from
disk. The location on the disk is given by the alias or logical
$DIR_GEN_XBD, which must be defined.
CALLING SEQUENCE:
go_rdtap, [dev=dev, tape=tape]
go_rdatp ;defaults to device #0
go_rdtap, dev=1 ;use tape device #1
go_rdtap, dev=1, /tape ;read tape directory from dev #1
go_rdtap, /put_ydb ;restore weeklys to database dirs.
go_rdtap, dev=1, /script ;reads tape from an unix script
;rather than IDL.
NOTE: on ALPHA's /script is default.
noexec option to allow the user to start the script
edit option to allow the user to edit the script
(via vi) before script is started.
INPUT:
dev is the device number 0 or 1 (0 for /dev/nrmt0h...etc)
HISTORY:
Written Mar-92 by M.Morrison
15-Apr-92 (MDM) - changed calling sequence somewhat
24-Apr-92 (GAL) - added menu for dir and weekly files extraction
27-Apr-92 (gal) - Added documentation...for menus
14-May-92 (gal) - added more doc...re-rel 27-Apr ver that
some how disappeared
20-May-92 (gal) - added safty features for those who do not have
xbd files on $DIR_GEN_XBD
26-May-92 (gal) - added mount command for vms use
14-Jun-92 (gal) - minor menu and prompt changes, bug fix for
data extraction.
17-Sep-92 (gal) - added feature to display size of extract
files in Kbytes.
2-Dec-92 (MDM) - Patch to work when extracting only weekly files
and no orbit files (bug introdcued with
17-Sep-92 modification - GET_AFILE_SIZE)
26-Apr-93 (gal) - added put_ydb switch to write weekly files to
the database directory areas (e.g. $DIR_GEN_*).
minor logic change for case of no prefix selected.
28-Apr-93 (gal) - bug fix
20-May-93 (MDM) - Changed call to FINDFILE to be *.* for VMS
19&20-Jul-93 (gal) - mods to get_afile_size call to pass the tape
dir-file information (when reading tape dir-file
from tape).
3-Dec-93 (MDM) - Added /cd switch to FILE_LIST call
26-Jul-94 (MDM) - Added /YDB switch to match /PUT_YDB since
documentation in YAG says /YDB
26-Apr-95 (GAL) - Added script option and made the script option
default on ALPHA's.
8-May-95 (GAL) - Added unload option and made no-unload default.
8-Jun-95 (GAL) - Replaced v.2.7 with v.3.1.
[Previous]
[Next]
NAME:
go_rdtap
PURPOSE:
To read a Yohkoh Archive tape, via menus and point and click.
CALLS: ***
GO_RDTAP2, RDTAP2, Rd_TapDir, STR2ARR [1], STR2ARR [2], def_tapd [1], def_tapd [2]
def_tapd [3], dont_use_this [1], dont_use_this [2], file_list [1], file_list [2]
gen_fn [1], gen_fn [2], get_afile_size [1], get_afile_size [2], input [1]
input [2], mt, mtcmd [1], mtcmd [2], prt_afile_size [1], prt_afile_size [2]
wmenu_sel [1], wmenu_sel [2], yesnox [1], yesnox [2]
Note: default mode is to read the tape directory files from
disk. The location on the disk is given by the alias or logical
$DIR_GEN_XBD, which must be defined.
CALLING SEQUENCE:
go_rdtap, [dev=dev, tape=tape]
go_rdatp ;defaults to device #0
go_rdtap, dev=1 ;use tape device #1
go_rdtap, dev=1, /tape ;read tape directory from dev #1
go_rdtap, /put_ydb ;restore weeklys to database dirs.
go_rdtap, dev=1, /script ;reads tape from an unix script
;rather than IDL.
NOTE: on ALPHA's /script is default.
noexec option to allow the user to start the script
edit option to allow the user to edit the script
(via vi) before script is started.
INPUT:
dev is the device number 0 or 1 (0 for /dev/nrmt0h...etc)
HISTORY:
Written Mar-92 by M.Morrison
15-Apr-92 (MDM) - changed calling sequence somewhat
24-Apr-92 (GAL) - added menu for dir and weekly files extraction
27-Apr-92 (gal) - Added documentation...for menus
14-May-92 (gal) - added more doc...re-rel 27-Apr ver that
some how disappeared
20-May-92 (gal) - added safty features for those who do not have
xbd files on $DIR_GEN_XBD
26-May-92 (gal) - added mount command for vms use
14-Jun-92 (gal) - minor menu and prompt changes, bug fix for
data extraction.
17-Sep-92 (gal) - added feature to display size of extract
files in Kbytes.
2-Dec-92 (MDM) - Patch to work when extracting only weekly files
and no orbit files (bug introdcued with
17-Sep-92 modification - GET_AFILE_SIZE)
26-Apr-93 (gal) - added put_ydb switch to write weekly files to
the database directory areas (e.g. $DIR_GEN_*).
minor logic change for case of no prefix selected.
28-Apr-93 (gal) - bug fix
20-May-93 (MDM) - Changed call to FINDFILE to be *.* for VMS
19&20-Jul-93 (gal) - mods to get_afile_size call to pass the tape
dir-file information (when reading tape dir-file
from tape).
3-Dec-93 (MDM) - Added /cd switch to FILE_LIST call
26-Jul-94 (MDM) - Added /YDB switch to match /PUT_YDB since
documentation in YAG says /YDB
26-Apr-95 (GAL) - Added script option and made the script option
default on ALPHA's.
8-May-95 (GAL) - Added unload option and made no-unload default.
[Previous]
[Next]
NAME:
go_sunset
PURPOSE:
Driver program for GET_SUNSET to return an array of times to
sunset for the sunset immediately following terminator images.
CALLING SEQUENCE:
go_sunset, index, sstimes=sstimes
go_sunset, sttim, sstimes=sstimes, duration=duration, noisy=noisy
INPUT:
sttime - The starting time or time array in any format.
CALLS: ***
get_sunset
OPTIONAL KEYWORD INPUT:
duration- The number of hours to calculate the sunset time starting
from "sttim". If it is not passed in, then duration will
default to 0.5 hours
noisy - Print out messages about sunset times
OUTPUT:
sstimes - The times of the transition from day to night with
a one second accuracy.
HISTORY:
Written 13-Dec-94 by L. Acton
[Previous]
[Next]
Run sxt_align on all the good data currently on the disk. Takes a long
time!!
To run:
IDL> .run go_sxt_align
[Previous]
[Next]
NAME:
go_sxt_etemp
PURPOSE:
Driver to run sxt_etemp.pro which generates the SXT response file
(electrons vs. temp) that is used by sxt_te to compute temperatures.
MODIFICATION HISTORY:
Written, 19-jan-93, J. R. Lemen, LPARL
[Previous]
[Next]
Name: go_sxt_sss2secondary
Purpose: create secondary files (movie/gif/fits) from sss
CALLS: ***
BOX_MESSAGE, BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONCAT_DIR [1]
CONCAT_DIR [2], CONCAT_DIR [3], FILE2TIME, REVERSE, SXT_LASTSXT_LINK
SXT_SSN2SECONDARY, TIME2FILE, anytim [1], anytim [2], anytim [3], anytim [4]
anytim [5], break_file [4], concat_dir [4], data_chk [1], data_chk [2]
file_append [1], file_append [2], file_list [1], file_list [2], html_doc
reltime [1], reltime [2], str2html [1], str2html [2], str2html [3]
str_replace [1], str_replace [2]
History:
6-March-2001 - due to relaxation of Yohkoh data moratorium
28-jun-2001 - added call to 'sxt_sxtlast_link'
[Previous]
[Next]
NAME:
go_sxt_teem
PURPOSE:
Main program to run sxt_prep and sxt_teem.
Must previous read in index,data (with yodat)
and define ss1=filter1 indices, ss2=filter2 indices
MODIFICATION HISTORY:
31-mar-93, J. Lemen, written
[Previous]
[Next]
NAME: go_teem
PURPOSE: Compute the time-profile for the average Te, EM, and
normalized Intensity for an aligned data-cube from
"sxt_prep*".
CALLING SEQUENCE:
go_teem, index, data, te, em, dte, dem, fl1, fl2, $
[time=time, comments=comments, interp=interp, $
unc_data=unc_data, satpix=satpix, $
noplot=noplot, lc_plot=lc_plot]
INPUT:
index index-data records prepared by "sxt_prep*"
data data cube: decompressed, bkg subtracted,
leak corrected, and aligned via "sxt_prep*".
OUTPUT:
te Log of the electron temperature
em Log of the emission measure
dte Log of the Te errors
dem Log of the em errors
fl1 Normalized Intensity profile for thicker fil. images
fl2 Normalized Intensity profile from thinner fil. images
OPTIONAL INPUT:
interp switch to use spline vs linear interpolation
average always computes average Te over area selected.
FUTURE option--
will make this a switch but is not available yet
unc_data uncertainty data from "sxt_prep*"
sat_pix saturated pixel maps from "sxt_prep*"
noplot switch to turn-off interactive plots
lc_plot switch to request light-curve plots
backsub switch to request interactive background emission
subtraction.
OPTIONAL OUTPUT:
time list of interpolated times
comments User entered notes for each run, also used
as plot titles.
EXAMPLE USAGE:
NOTES and WARNINGS:
CALLS: ***
SXT_TEEM [1], SXT_TEEM [2], WDEF [1], WDEF [2], anytim2ints [1], anytim2ints [2]
bkg_sub, go_teem_plots, gt_expdur [1], gt_expdur [2], input [1], input [2]
pprint [1], pprint [2], sxt_interp [1], sxt_interp [2], wdefroi [1], wdefroi [2]
wdefroi [3], wdefroi [4], wfilpck
HISTORY:
written by GAL summer 93
modified for release Sept. 93
22-Oct-93, added code to handle uncertainty values for
background subtraction and interpolation.
19-Nov-93, J. R. Lemen, Modified to call pprint
15-Nov-94, GAL, modified to hardcopy prints be portrait
7x5in in size; vectorized call to sxt_teem.
21-Feb-06, T. Wang, modified keywords of unc1 and unc2 in call of
sxt_teem
[Previous]
[Next]
NAME: go_teem
PURPOSE: Compute the time-profile for the average Te, EM, and
normalized Intensity for an aligned data-cube from
"sxt_prep*".
CALLING SEQUENCE:
go_teem, index, data, te, em, dte, dem, fl1, fl2, $
[time=time, comments=comments, interp=interp, $
unc_data=unc_data, satpix=satpix, $
noplot=noplot, lc_plot=lc_plot]
INPUT:
index index-data records prepared by "sxt_prep*"
data data cube: decompressed, bkg subtracted,
leak corrected, and aligned via "sxt_prep*".
OUTPUT:
te Log of the electron temperature
em Log of the emission measure
dte Log of the Te errors
dem Log of the em errors
fl1 Normalized Intensity profile for thicker fil. images
fl2 Normalized Intensity profile from thinner fil. images
OPTIONAL INPUT:
interp switch to use spline vs linear interpolation
average always computes average Te over area selected.
FUTURE option--
will make this a switch but is not available yet
unc_data uncertainty data from "sxt_prep*"
sat_pix saturated pixel maps from "sxt_prep*"
noplot switch to turn-off interactive plots
lc_plot switch to request light-curve plots
backsub switch to request interactive background emission
subtraction.
OPTIONAL OUTPUT:
time list of interpolated times
comments User entered notes for each run, also used
as plot titles.
EXAMPLE USAGE:
NOTES and WARNINGS:
CALLS: ***
SXT_TEEM [1], SXT_TEEM [2], WDEF [1], WDEF [2], anytim2ints [1], anytim2ints [2]
bkg_sub, go_teem_plots, gt_expdur [1], gt_expdur [2], input [1], input [2]
pprint [1], pprint [2], sxt_interp [1], sxt_interp [2], wdefroi [1], wdefroi [2]
wdefroi [3], wdefroi [4], wfilpck
HISTORY:
written by GAL summer 93
modified for release Sept. 93
22-Oct-93, added code to handle uncertainty values for
background subtraction and interpolation.
19-Nov-93, J. R. Lemen, Modified to call pprint
15-Nov-94, GAL, modified to hardcopy prints be portrait
7x5in in size; vectorized call to sxt_teem.
[Previous]
[Next]
NAME: go_teem_nn
PURPOSE: Compute the time-profile for the average Te, EM, and
normalized Intensity for an aligned data-cube from
"sxt_prep*". The only modification from go_teem is
to be able to keep the information on the areas selected.
CALLING SEQUENCE:
go_teem_t, index, data, te, em, dte, dem, fl1, fl2, $
[time=time, comments=comments, interp=interp, $
unc_data=unc_data, satpix=satpix, $
noplot=noplot, lc_plot=lc_plot, area=area]
INPUT:
index index-data records prepared by "sxt_prep*"
data data cube: decompressed, bkg subtracted,
leak corrected, and aligned via "sxt_prep*".
OUTPUT:
te Log of the electron temperature
em Log of the emission measure
dte Log of the Te errors
dem Log of the em errors
fl1 Normalized Intensity profile for thicker fil. images
fl2 Normalized Intensity profile from thinner fil. images
area (NN) Selected areas - bombs if the selected area has more
than 400 pixels or there are more than 100 points
in time.
OPTIONAL INPUT:
interp switch to use spline vs linear interpolation
average always computes average Te over area selected.
FUTURE option--
will make this a switch but is not available yet
unc_data uncertainty data from "sxt_prep*"
sat_pix saturated pixel maps from "sxt_prep*"
noplot switch to turn-off interactive plots
lc_plot switch to request light-curve plots
backsub switch to request interactive background emission
subtraction.
ws the size of the window #3 on which an area is clicked.
default is 512, as determined by wdef.
logscale a log scale image is used at area selection.
disp_reg previously selected regions are displayed.
OPTIONAL OUTPUT:
time list of interpolated times
comments User entered notes for each run, also used
as plot titles.
EXAMPLE USAGE:
NOTES and WARNINGS:
CALLS: ***
CONGRID [1], CONGRID [2], CONGRID [3], PLOT_AREA_NN, SXT_TEEM [1], SXT_TEEM [2]
WDEF [1], WDEF [2], WDEFROI_NN, anytim2ints [1], anytim2ints [2], bkg_sub
go_teem_plots, gt_expdur [1], gt_expdur [2], input [1], input [2], ocontour [1]
ocontour [2], ocontour [3], ocontour [4], ocontour [5], pprint [1], pprint [2]
sxt_interp [1], sxt_interp [2], wfilpck
HISTORY:
written by GAL summer 93
modified for release Sept. 93
22-Oct-93, added code to handle uncertainty values for
background subtraction and interpolation.
19-Nov-93, J. R. Lemen, Modified to call pprint
22-Mar-94, N. Nitta, added a keyword area to remember which
areas are selected.
15-Jan-95, N. Nitta, vectorized sxt_teem call, add ws keyword
so that the display of the image can be made bigger.
[Previous]
[Next]
Name: go_teem_plots
Purpose: make timeseries plots of te, em, Int_filt_1, Int_filt_2
Calling Sequence:
go_teem_plots, comment, index1, index2, te, dte, em, dem, $
emzero, npixs, fl1, fl2, [hardcopy=hardcopy, lc_plot=lc_plot]
index1 is just a single data-index used to label light curve
index2 is the data-index which cooresponds to the times of obs.
CALLS: ***
ERRPLOT [1], ERRPLOT [2], UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4], UTPLOT [5]
UTPLOT [6], WDEF [1], WDEF [2], gt_filtb, int2secarr [1], int2secarr [2]
CALLED BY:
go_teem [1], go_teem [2], go_teem_nn, go_teem_t
History:
written 14-Sept-93, gal
21-Oct-93, errbars handled for Te and EM
15-Nov-94, defaults to hardware fonts instead of vector.
[Previous]
[Next]
NAME: go_teem_t
PURPOSE: Compute the time-profile for the average Te, EM, and
normalized Intensity for an aligned data-cube from
"sxt_prep*". The only modification from go_teem is
to be able to keep the information on the areas selected.
CALLING SEQUENCE:
go_teem_t, index, data, te, em, dte, dem, fl1, fl2, $
[time=time, comments=comments, interp=interp, $
unc_data=unc_data, satpix=satpix, $
noplot=noplot, lc_plot=lc_plot, area=area]
INPUT:
index index-data records prepared by "sxt_prep*"
data data cube: decompressed, bkg subtracted,
leak corrected, and aligned via "sxt_prep*".
OUTPUT:
te Log of the electron temperature
em Log of the emission measure
dte Log of the Te errors
dem Log of the em errors
fl1 Normalized Intensity profile for thicker fil. images
fl2 Normalized Intensity profile from thinner fil. images
area Selected areas - bombs if an area has more than 400
pixels
OPTIONAL INPUT:
interp switch to use spline vs linear interpolation
average always computes average Te over area selected.
FUTURE option--
will make this a switch but is not available yet
unc_data uncertainty data from "sxt_prep*"
sat_pix saturated pixel maps from "sxt_prep*"
noplot switch to turn-off interactive plots
lc_plot switch to request light-curve plots
backsub switch to request interactive background emission
subtraction.
OPTIONAL OUTPUT:
time list of interpolated times
comments User entered notes for each run, also used
as plot titles.
EXAMPLE USAGE:
NOTES and WARNINGS:
CALLS: ***
CONGRID [1], CONGRID [2], CONGRID [3], SXT_TEEM [1], SXT_TEEM [2], WDEF [1]
WDEF [2], anytim2ints [1], anytim2ints [2], bkg_sub, go_teem_plots, gt_expdur [1]
gt_expdur [2], input [1], input [2], ocontour [1], ocontour [2], ocontour [3]
ocontour [4], ocontour [5], pprint [1], pprint [2], sxt_interp [1], sxt_interp [2]
wdefroi [1], wdefroi [2], wdefroi [3], wdefroi [4], wfilpck
HISTORY:
written by GAL summer 93
modified for release Sept. 93
22-Oct-93, added code to handle uncertainty values for
background subtraction and interpolation.
19-Nov-93, J. R. Lemen, Modified to call pprint
22-Mar-94, N. Nitta, added a keyword area to remember which
areas are selected.
[Previous]
[Next]
NAME:
go_toban
PURPOSE:
To allow the SXT toban to (1) call SRSJCL, (2) call SRSGET,
(3) reformat the data, (4) append to the observing log,
(5) to make the event log, (5) to append to the PNT file, and
(6) make SFD files, (7) submit the DAILY_FORECAST batch job
(8) make SLD and SLS files, (9) update the CCD_SUNC data file
with the center of the sun location, (10) make the SFT files
CALLED BY:
auto_toban, ref_term [2]
RESTRICTIONS:
Only run on FLARE1 or FLARE11
CALLING SEQUENCE:
go_toban
go_toban, /interactive, /dsn
go_toban, /interactive, srsget=2 ;to not interfere with AUTO_TOBAN
go_toban, /interactive, /flare2 ;to not interfere with AUTO_TOBAN
go_toban, /nosrsjcl
go_toban, /nosrsjcl, /nosrsget
go_toban, /journal
go_toban, /mail
OPTIONAL KEYWORD INPUT:
interactive - If set, ask the user which of the "stages" to run
nosrsjcl - If set, do not run the SRSJCL stage
nosrsget - If set, do not run the SRSGET stage
noreformat - If set, do not run the REFORMAT stage
noobs - If set, do not run the OBS stage
noevn - If set, do not run the EVN stage
nopnt - If set, do not run the PNT stage
nosfd - If set, do not run the SFD stage
nosl - If set, do not run the SLS and SLD stage
noccd_sunc - If set, do not run the CCD_SUNC update stage
nosft - If set, do not run the SFT stage
journal - If set, make a journal file. The file name will
be GO_TOBANyymmdd.hhmmss in the ~ directory.
mail - If set, send error/warning/status mail messages.
See the list below for what types of messages
error - The error status. Codes less than 100 are from
GET_SIRIUS.
0 = successful
5 = SRSGET: "jbopen" or similar error
9 = SRSGET: The user prompt was not what was
expected after starting to run "srsget"
10 = SRSGET: "srsget" is begin run already
100 = No ADA files so cannot figure out the
starting time for SRSGET
101 = Calculated SRSGET time span is over
96 hours which should be impossible
110 = No file was created after SRSGET
120 = The file SRSGET created had less than
60 seconds of data, so no new data available
150 = Not enough disk space on any of the listed
disks.
year - Manually define the year since year nibble is not being
defined properly.
st_tim - The start time for SRSGET. If not passed, then the
start time is taken as the time of the last available
data in the last ADA file.
en_tim - The end time for SRSGET. If not passed, then use the
current UT time.
summary_line - A single line summarizing the success of the GO_TOBAN run
copy_cmd - Optionally the command to copy the SRSPAS.NEW file to
SRSPAS.OLD (signifying that data has been processed)
DESCRIPTION:
GO_TOBAN
1. Optionally run SRSJCL.
2. Optionally run SRSGET. It purges the files in raw telemetry
disk keeping the last eight files created (purged by creation
date). The start time is set to the last data available in
the reformatted ADA files. The end time is set to the current
time. For the case when there is no new telemetry available,
SRSGET could still return up to 60 seconds of telemetry
(because of the granularity of the SRSGET command). If this
occurs, that file is deleted and GO_TOBAN will exit.
3. Optionally run REFORMAT. The routine first checks to see that
enough disk space exists. If not, it goes through a list of
disks until it finds enough space, or it reaches the end of the
list. The current list is: /yd3/reformat, /yd1/reformat. When
the reformatting is finished, it will send a mail message the
the users specified in the "MAIL" keyword input parameter. This
is set to "sxt" and "morrison" for calls made from AUTO_TOBAN.
4. Optionally copy SRSPAS.NEW to SRSPAS.OLD
5. Optionally run MK_OBS. It only makes the weekly OBS file for
the week # of the data that was just reformatted. The new
data is appended.
6. Optionally run MK_EVN. It only makes the weekly EVN file for
the week # of the data that was just reformatted. A whole
new file is created.
7. Optionally run MK_PNT. It only makes the weekly PNT file for
the week # of the data that was just reformatted. The new
data is appended.
8. Optionally run MK_SFD. A separate SFD file is created for each
new SFR file available.
9. Optionally submit the DAILY_FORECAST batch job to copy daily
images to various institutions around the country.
10. Optionally run MK_SL for SLS and SLD files. A whole new file is
created.
11. Create SFT files
Environment When they get messages
Variable
$MAIL_TOBAN_STATUS * Successful completion of reformating stage
$MAIL_TOBAN_ERROR * SRSGET Error - someone else running SRSGET
* No ADA files available to determine start
time for SRSGET
* Not enough disk space on a listed disk
* No disk space on ANY of the listed disks
$MAIL_TOBAN_WARN * Down to less than 100 megabytes on primary
disk
* SRSGET Info - less than 60 sec of new data
* SRSGET Info - main frame is off
* SRSGET Info - some other SRSGET error
$MAIL_TOBAN_DEBUG
* Successful completion of all of GO_TOBAN
HISTORY:
Written 14-Oct-92 by M.Morrison using GO_GET_SIRIUS as a start.
15-Oct-92 (MDM) - Added MK_PNT "stage"
16-Oct-92 (MDM) - Made variable "wid" into a scalar since it
caused problems to MK_EVN
20-Oct-92 (MDM) - Added MK_SFD "stage"
21-Oct-92 (MDM) - Added jump capbility to only run MK_SFD (goto statement)
21-Oct-92 (SLF) - Added spawning of srsjcl on flare1
(shuto san program to create sirius Temp data)
added informational messages for each stage
23-Oct-93 (MDM) - Added jump capability to only build the INFIL array
- Added /USEFID to MK_OBS call
26-Oct-92 (MDM) - Changed from a program to a procedure
2-Nov-92 (MDM) - Modified so that if NOSRSGET is set and REFORMAT is set,
then prompt the user for the input file name
3-Nov-92 (MDM) - Modifed 2-Nov patch to use the proper directory name
for flare1 and flare11 use.
5-Nov-92 (MDM) - Modified to prompt the user for the WeekID if
NOREFORMAT is set.
19-Nov-92 (MDM) - Added check of error status from GET_SIRIUS. Stop
GO_TOBAN if there was an error.
25-Nov-92 (SLF) - Added auto purge of raw telemetry disk
Increased number of beeps when reformatter completed
Logic to find raw telemtry disk mount name
(may be machine dependent)
30-Nov-92 (MDM) - Added the /JOURNAL option
- Also printed the options selected
1-Dec-92 (MDM) - Adjusted the logic of the "nosrsjcl" type keywords
3-Dec-92 (MDM) - Added extra check in SRSGET stage to see that the
raw telemetry file had at least more than one minute
of data. This is necessary because if SRSGET was
called a second time when there was no new data, we
will get at least one minute of data. If there is
less than one minute, then delete the file.
- Added check to see that enough disk space exists
for the reformatted data files.
- Added MAIL option to send mail after reformatting
8-Dec-92 (MDM) - Added extensive mail message options for monitoring
progress. The environment variables $MAIL_TOBAN_xxx
were introduced.
8-Dec-92 (MDM) - Added MK_SL stage to make SLS and SLD files (leak
tracking routines).
11-Dec-92 (MDM) - Changed the mail message to print out the time range
covered in the new reformatted data
14-Dec-92 (MDM) - Changed maximum duration that is alowable from 48
hours to 96 hours (since we can have big gaps over
weekends)
1-Jan-93 (MDM) - Removed number of hours check from GET_SIRIUS
4-Jan-93 (MDM) - Added the YEAR keyword for REFORMAT use
5-Jan-93 (MDM) - Changed the error/warning mail messages some for
GET_SIRIUS stage.
8-Jan-93 (MDM) - Modification to MK_SL stage to check that SFR file
exists first.
20-Jan-93 (MDM) - Fixed an error with MK_SL stage. It was not selecting
the files properly since 8-Jan-93 modification.
20-Jan-93 (MDM) - Added ST_TIM and EN_TIM keyword options. Also added
SUMMARY_LINE
26-Jan-93 (MDM) - Fixed up logic for MK_SFD stage. It was crashing if
no SFD files needed to be made.
- Changed format of the SUMMARY_LINE string
2-Feb-93 (MDM) - Changed the "slop" requirement to 125% of raw telemetry
file. If less than that space is free, go to the backup
disk. It used to be 110%.
- Corrected mail message for case where not enough
disk space is free for reformatting (listed wrong disk)
9-Mar-93 (MDM) - Added /AUTODEL switch to REFORMAT call to delete the
files if they already exist
- Changed logic to find the last directory which is
not empty to figure out the reformatted data directory
14-Apr-93 (MDM) - Added /DSN option
- Changed "df" command to be "df -n" to find raw tlm dir
29-May-93 (MDM) - Added update of CCD_SUNC data file with the center of the
sun location
- Added /NOCCD_SUNC switch (and /NOSL since it was missing)
10-Aug-93 (MDM) - Modified the way that CCD_SUNC calculation was being done.
11-Aug-93 (MDM) - Corrected typo of 10-Aug
30-Aug-93 (MDM) - The raw telemetry directory name was not being determined
properly for flare workstations (raw telem files were
not getting purged as a result)
- Modified to save 15 raw telem files (instead of 8)
30-Sep-93 (MDM) - Corrected typo in the mail message "will" vs "with"
7-Oct-93 (MDM) - Changed to use $DIR_SITE_NEWDATA instead of /yd3/reformat
10-Oct-93 (MDM) - Added creation of ATR and ATT (will remove PNT after
confirming ATR/ATT creation is working)
11-Oct-93 (MDM) - Corrected error in CCDSUNC option for the case where
no PNT data is available.
12-Oct-93 (MDM) - Added call to DAILY_FORECAST to copy 4 forecast images to
remote institutions.
14-Oct-93 (MDM) - Modified call to DAILY_FORECAST to keep 20 IDL log files
16-Oct-93 (MDM) - Have DAILY_FORCAST called every time - have it figure if
it sould run or not
11-Nov-93 (MDM) - Added FLARE2 and SRSGET options so that GO_TOBAN can be
used without interfering with AUTO_TOBAN
16-Nov-93 (MDM) - Removed unnecessary code
19-Nov-93 (MDM) - Added MK_SFT stage
2-Dec-93 (MDM) - Added COPY_CMD (copy SRSPAS.NEW to SRSPAS.OLD)
- Added /DAILY_FORECAST option
8-Dec-93 (MDM) - Make DAILY_FORECAST job be submitted right after
MK_SFD stage
- Have alarm at 100 meg or less free (used to
be 50 meg)
14-Dec-93 (MDM) - removed MK_PNT from the set of things done
- Commented out all references to SRSJCL
3-Mar-94 (MDM) - Changed logic so that it would work for the case
where there are no ADA files in the reformat directory
but they aren't needed anyway because "st_tim0"
is passed in
10-May-94 (SLF) - use /noftp switch to idl_batch call (daily_forecast)
12-May-94 (SLF) - replace spawn df with look at /etc/fstab
10-Jul-94 (SLF) - spawn mk_newdata as background task after SFD
24-Sep-94 (SLF) - rsh mk_newdata and daily_forecast to unburden isaas0 (and run faster?)
26-Sep-94 (SLF) - use is_bestnode to select 'best' node for spawned tasks
8-oct-94 (SLF) - spawn mk_spd as another background task
1-nov-94 (SLF) - spawn mk_newdata on local (it spawns subtasks on others)
7-nov-94 (SLF) - use go_batch for mk_newdata
9-Dec-94 (SLF) - remove DATE switch for mk_newdata log
6-Mar-95 (MDM) - Execute "COPY_CMD" for the case where less than 35
major frames are copied during SRSGET
10-Mar-95 (MDM) - Modified so that SUMMARY_LINE is defined for problem cases
11-may-95 (SLF) - submit daily_forecast on isass1
10-jun-95 (SLF) - move forecast to isass0 (cant fix isass1 remotly)
23-aug-95 (SLF) - use temporary SFC area for SFD (entrance filter failure)
9-nov-95 (SLF) - call mk_sfc when mk_sft is run
17-nov-95 (SLF) - rm go_batch for mk_spd
11-jan-96 (SLF) - change get_sirius call - inhibit TEMP if DSN
19-mar-96 (SLF) - reinstated ccd_sunc updates (att instead of pnt)
23-mar-96 (SLF) - divided sxt_cen by 4! (prior to entry into ccd_sunc)
04-apr-96 (GLS) - reversed the sense of the EW coordinate
(prior to entry into ccd_sunc)
22-aug-97 (SLF) - remove /append and /usefid switches in mk_week,'atr'
13-oct-98 (SLF) - spawn go_forecast on local machine
23-mar-99 (GLS) - Added uniq/sort of ada file list
Pass ada file list to mk_att for hxa_scan data
01-apr-99 (PGS) - Modified calls to uniq/sort.
6-Jan-99 (SLF) - simplify mk_sfd / sfr selection (Y2K...)
25-jan-00 (PGS) - y2k fix for purgin raw_tlm filex
8-Aug-2000 - S.L.Freeland - add 'ssc' and 'sss' generation
[Previous]
[Next]
Name: go_yo_prod_batch
Purpose: generate and optionally submit a customized batch job to
produce various Yohkoh archive products (eg, level1, ssc)
Input Paramters:
time0 - start day of desired time range
time1 - stop day of desired time range
Keyword Paramters:
DAYS - vector of one or more days (in leiu of time0/time1 range)
SUBMIT - (switch) - if set, submit the job ~now via ssw_batch
YEAR - do full year (ex: YEAR=1991) in leiu of time range or DAYS
nimages - for testing only, number of images/day to process
(generally used for infrastructure TESTING only)
For example, NIMAGES=5 only does 1st 5 images of each DAY
beta - (switch) - use $YOARCH/ssc_beta instead of $YOARCH/ssc
(only software/yohkoh accounts - ignored for others)
topdir - optional full path for output parents - defaults
derived from $SSW_YOARCH and user info
release - (switch) if set, use 'release' online area instead of
user-personal area
online - (switch) - synonym for /RELEASE (only authorized users allowed)
prefix - optional prefix for output files; default is 'ssc'
JOB_DESCRIPTION - optional descriptive buzzword to innclude in job/log
derived JobNames (used for *pro and *log names)
JobName> USER_yyyymmdd_hhmm + _JOB_DESCRIPTION + {.pro,.log}
| | |^^^^^^^^^^^^^^^
| --Derived------| |-- Optional --|
|user+time of run| | Default=null |
---- common processing control ----
vignette - (switch) if set, ENABLE vignette
destreak - (switch) if set, ENABLE destreak
----------------------------------------------------------
---- sxt_prep processing control ----
float - (switch)
dc_orbit_correct - (switch)
sxt_cleanx - (switch)
noleak - (switch)
second_order_leak - (switch)
----------------------------------------------------------
---- mk_ssc processing control ----
scatter - (switch) if set, ENABLE scatter correction
second - (switch) if set, ENABLE second order leak correction
nonormalize - (switch) if set, DISABLE SSC normalization (DN/S/Pixel)
clean - (switch) if set, ENABLE despiking
----------------------------------------------------------
------ xxx_beta switches for overriding released ydb input dbases
sfc_beta - NN -> version of $SSWDB/ydb_beta/sfc_NN
sdc_beta - NN -> version of $SSWDB/ydb_beta/sdc_NN
att_beta - NN -> version of $SSWDB/ydb_beta/att_NN
fem_beta - NN -> version of $SSWDB/ydb_beta/fem_NN
syncoeff_beta - NN -> version of $SSWDB/ydb_beta/synsfc_NN
----------------------------------------------------------
Calling Sequence:
IDL> go_yo_prod_batch,t0,t1 [,processing flags] [,B-ydb flags] [,SUBMIT]
Calling Examples:
----- defaults for time range & run -----
IDL> go_yo_prod_batch,'1-mar-1997','10-mar-1997',/SUBMIT - all defaults
----- add 2nd order leak, use ydb_beta SFC version 2
IDL> go_yo_prod_batch,'1-mar-1997','10-mar-1997',/SECOND, SFC_BETA=2,/SUB
----- discrete DAYS vector instead of contiguious time range ----
IDL> go_yo_prod__batch,DAYS=['1-sep-2000','15-nov-1999'],/SUBMIT
----- full year run ----
IDL> go_yo_prod__batch,YEAR=1992,/SUBMIT,/SECOND
----- mission long run ----
IDL> go_yo_prod__batch,get_yo_dates(/launch), $
last_nelem(get_yo_dates(/ent)),/sub,/second,job_desc='MISSION'
CALLS: ***
ARR2STR [1], Arr2Str [2], BOX_MESSAGE, CONCAT_DIR [1], CONCAT_DIR [2]
CONCAT_DIR [3], FILE_EXIST [2], POPD, PUSHD, STR2ARR [1], STR2ARR [2], STRTAB2VECT
TIME2FILE, anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
concat_dir [4], curdir [1], curdir [2], data_chk [1], data_chk [2]
file_append [1], file_append [2], file_exist [1], file_exist [3], get_logenv [1]
get_logenv [2], get_user [1], get_user [2], is_member [1], is_member [2]
pr_status [1], pr_status [2], rd_tfile [1], rd_tfile [2], reltime [1], reltime [2]
ssw_path, str2cols [1], str2cols [2], str_replace [1], str_replace [2]
ut_time [1], ut_time [2], write_access [1], write_access [2], yesnox [1]
yesnox [2]
History:
5-Mar-2003 - S.L.Freeland
7-Mar-3003 - S.L.Freeland add OUT param to batch cmd spawn
(avoid some kind of frozen pipe on some Linux)
Add YEAR keyword and function
18-Apr-2003 - S.L.Freeland added /ONLINE and /RELEASE (synonyms)
[Previous]
[Next]
NAME:
GOES2DPE
PURPOSE:
Assess the GOES flux level and recommend AEC settings for SXT.
This is meant to be an empirical thing, so please improve the
algorithm if you are getting screwy results.
CATEGORY:
goes2dpe
CALLING SEQUENCE:
INPUTS:
OPTIONAL (KEYWORD) INPUT PARAMETERS:
test samples the most recent actual SXT data
OUTPUTS:
CALLS: ***
FMT_TIMER [1], FMT_TIMER [2], STDEV, anytim2ints [1], anytim2ints [2], gt_dpe
gt_expmode, gt_filtb, gt_res, rd_gxd [1], rd_gxd [2], rd_gxd [3], rd_obs
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
HSH, written 27-Jul-97
14-Sep-98, workaround for RD_GXD problem (HSH)
4-Oct-98, merge D.Mckenzie 1-jun mod
tweaked recommended DPE upwards by 4, 01-jun-98
[Previous]
[Next]
Name: goes2str
Purpose: convert goes xray tekplot file into Yohkoh type data structure
Input Parameters:
xrfile - goes xray plot file (assume tektronix format)
loglun - open logical unit to write status info (-1 is terminal)
Output Parameters:
function return value is {gxr_data_rec} array
Keyword Parameters:
plot - if set, tekplot file is displayed during vector generation
History - slf, 8-Sep-92 (digitization code adapted from tekplot.pro
by T. Sakurai)
slf, 9-mar-93 trapped some TEK file corruption problems
send mail to $MAIL_MK_GXT when encountered
slf,10-mar-93 use file_append to log corrupt files
only mail trouble report for new entries
slf,15-oct-93 if file size < 1000 bytes, assume corrupt
append to corrupt file log and exit
slf,25-aug-94 change structure order when goes6 died.
CALLS:
[Previous]
[Next]
Name: goes3sec_copy
Purpose: copy 3 second data from selsis - optionally make week file
Input Parameters:
date0 - start day for copy (default is today or via WEEK keyword)
date1 - stop day for copy (stop day - default is 24 hours from date0)
Keyword Parameters:
week - string of form 'YY_WW' can be used instead of date0/date1
last_24hrs - if set, date0=yesterday, date1=today
Calling Examples:
goes3sec_copy,date ; copy files for date (UT)
goes3sec_copy,week='95_13',/mk_week ; files for week / make gxd file
CALLS: ***
BOX_MESSAGE, BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONCAT_DIR [1]
CONCAT_DIR [2], CONCAT_DIR [3], STR2ARR [1], STR2ARR [2], anytim2ex [1]
anytim2ex [2], anytim2ints [1], anytim2ints [2], break_file [4], concat_dir [4]
ex2fid [1], ex2fid [2], ex2week [1], ex2week [2], fid2ex [1], fid2ex [2]
file_list [1], file_list [2], get_logenv [1], get_logenv [2], gt_day [1]
gt_day [2], int2secarr [1], int2secarr [2], last_nelem, mk_week_file [1]
mk_week_file [2], pr_week2tim [1], pr_week2tim [2], sel_timrange [1]
sel_timrange [2], ssw_deltat, str_perm, timegrid, ut_time [1], ut_time [2]
HISTORY:
Written by M.Morrison
25-Mar-93 (MDM) - Modified to use DECNET "dcp" command instead
of FTP since there were computer problems at Boulder
16-Apr-93 (MDM) - Modified to re-copy when the file size of the existing
file is less than 70,000 bytes (should be 70600 or 70620
when properly copied)
- went back to using FTP
- Added INFIL option
12-May-93 (MDM) - Correct for case where there are no existing files
- Added /MK_WEEK_FILE option
14-May-93 (MDM) - Changed to use $ydb_raw and $ys
16-May-93 (MDM) - The MK_WEEK_FILE option was not working for Saturdays
because it was using the wrong time.
17-May-93 (MDM) - Changed how MK_WEEK_FILE option worked
26-May-93 (MDM0 - Changed to use /ys/site/script instead of /ys/gen/script
19-Aug-93 (MDM) - Removed /self switch from Mail call
4-Jan-94 (MDM) - Modified mailing list
11-apr-95 (SLF) - cleaned up / use GOES3_FTP_NODE env
13-apr-95 (SLF) - major rewrite of date code using timegrid / ftp_copy
dont bother with goes6 after date='17-aug-94'
add WEEK keyword and function - eliminte dcp stuff
29-jun-95 (SLF) - remove software from mailing list
29-aug-95 (SLF) - cleaned up some "ss" logic
30-aug-95 (SLF) - generate 1 and 5 minute average files after GxD.
20-mar-96 (SLF) - add GOES9
27-mar-96 (SLF) - and GOES8
13-aug-96 (SLF) - GOES7 turn-off fixup (14-aug-96)
20-sep-96 (SLF) - fix typo in last_24hrs keyword
21-Jul-98 (SLF) - add GOES10
19-oct-98 (SLF) - inhibit week files for goes10 (mk_week_file prob)
8-apr-2003 (SLF) - add GOES12
[Previous]
[Next]
NAME:
GOES8_READER
PURPOSE:
input GOES-8 temperature response functions from ASCII file
CATEGORY:
Yohkoh
CALLING SEQUENCE:
goes8_reader, goes8
goes8_reader, goes8, /raymond
INPUTS:
OPTIONAL (KEYWORD) INPUT PARAMETERS:
/raymond gets the Raymond calculation (default Mewe) supplied
by Howard Garcia August, 1994
OUTPUTS:
GOES8 contains
line #
ratio of responses
wavelength, A
1-8 A response per 10^44 em
0.5-4 response
WARNING:
makes a plot in whatever window it can find
MODIFICATION HISTORY:
HSH, written 9-Aug-94 based on e-mail from Howard Garcia
HSH, added /raymond 17-aug-94
[Previous]
[Next]
NAME:
Goes_bck0
PURPOSE:
Esitmate of the "true" goes background level, see P.L.Bornmann,
Apj. 356, pg 733. Requires three conditions for the start of
the flare; T must increase, EM must increase, T(flare)>T(background).
Various numbers are tested, the ones that give the highest percentage
for these conditions during the flare rise phase are used. The
start and end times or subscripts of the background must be passed in.
CALLING SEQUENCE:
bck = Goes_bck0(tim_arr, flux, bck_trange, pct_bck=pct_bck, no_bstep=no_bstep, $
preflare=preflare, quiet=quiet)
INPUT:
tim_arr= the times for the GOES data, in Yohkoh formats, or in sec from 1970
flux= the GOES flux, 2 channels
bck_trange = start and end times time or subscripts
OUTPUT:
bck = the background levels for both channels
KEYWORDS:
bck_frac = the "flare" is said to be 1+bck_frac times the preflare flux level
no_bstep = the number of steps in the preflare level that will be tested
to find the true background
preflare = preflare flux level, either chosen by the user or by AUTO_BCK_FIND.
quiet = passed into auto_bck, if needed
CALLS: ***
anytim2ints [1], anytim2ints [2], tim2dset [1], tim2dset [2]
CALLED BY:
goes_teem, goesem_eqn [1], goest_eqn [1]
HISTORY:
From GOES_BCK, 8-feb-96, jmm
[Previous]
[Next]
NAME:
GOES_CONVERTER
CALLING SEQUENCE
goes_converter, data_in, data_out
PURPOSE:
Converts data_in from PLOT_GOES format to W/m^Hz units
WARNING:
Only temporary, really, until the 3-sec data become
available.
CALLED BY:
goes_log
HISTORY:
Written by HSH Jan. 15, 1992
[Previous]
[Next]
Name: goes_gaps
Purpsse: find missing 6 hour perids in goes GXT data
CALLS: ***
anytim2ints [1], anytim2ints [2], file_append [1], file_append [2], fmt_tim [1]
fmt_tim [2], gt_day [1], gt_day [2], rd_gxt, str_replace [1], str_replace [2]
syst2ex [1], syst2ex [2], syst2ex [3]
History:
15-Nov-1993 (SLF) Written
Method - read gxt data in 6 hour chunks (aligned with Tektronix plots)
use status return from rd_week_file (rd_gxt) or nrecs <=1
[Previous]
[Next]
Name: goes_grid
Purpose: draw grid on previously drawn goes plot (assume utplot)
CALLED BY:
goes_plot [1], goes_plot [2], goes_plot [3], goes_plot [4], goes_plot [5]
History:
1-sep-1992 (circa) (SLF)
7-Dec-1992 (use normalized coords)
13-Sep-1994 added grid_thick to control grid thickness
14-Sep-1994 guard against undefined grid_thick
[Previous]
[Next]
NAME:
goes_log
PURPOSE:
Click on a GOES plot and then return the values of
Goes 6,7 in the low and high bands for the selected time.
CALLING SEQUENCE:
(Run Plot_goes first)
goes_log,/file
goes_log,time1,time2,file=file
goes_log,time1,time2,file=file,/append,/refresh
INPUTS:
None.
OUTPUS:
None.
OPTIONAL OUTPUT KEYWORDS:
file = If set, write out to goes_log.dat
file = file => Write output to given filename
append = If set, append to an existing file
refresh = Refresh the GOES plot
fillsaa = If set, fill in SAA if the GOES plot is refreshed
fillnight = If set, fill in Night if the GOES plot is refreshed
result = A string array of information
CALLS: ***
DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], FILE_EXIST [2], GETUT [1]
GETUT [2], GOES_CONVERTER, PLOT_GOES, anytim2ints [1], anytim2ints [2]
delvarx [5], evt_grid, file_exist [1], file_exist [3], fmt_tim [1], fmt_tim [2]
rd_gxt, tim2dset [1], tim2dset [2], utcursor [1], utcursor [2]
MODIFICATION HISTORY:
11-dec-93, J. R. Lemen LPARL, Written
[Previous]
[Next]
Name: goes_plot
Purpose: plot goes x-ray data (Yohkoh structure)
Input Parameters:
input1 - user start time or goes xray data record structure array
input2 - user stop time
Optional Keyword Paramters:
fem - if set, overplot Yohko ephemeris grid (call fem_grid)
fillnight - (pass to fem_grid) - polyfill Yohkoh nights
fillsaa - (pass to fem_grid) - polyfill Yohkoh saas
saa - (pass to fem_grid) - show saa events overlay grid
low - if set, only plot low energy
high - if set, only plot high energy
title - user title (appended to default title predicate)
nodeftitle- if set, dont append default title predicate
color - color of lines
ascii - if set, use sec ascii files in $SSWDB/goes/xray/
Calling Sequence:
plot_goes,'5-sep-92' ; start time + 24 hours
plot_goes,'5-sep-92',/three ; same, but use 3 second data
plot_goes,'5-sep-92',6 ; start time + 6 hours
plot_goes,'5-sep-92','7-sep-92' ; start time / stop time
plot_goes,gxtstr ; input goes records from rd_gxt
plot_goes,'5-sep',/fem ; overplot Yohkoh ephemeris grid
plot_goes,'5-sep',/fillnight ; ditto, but fill in Yohkoh nights
plot_goes,'1-jun','30-jul',/low ; only plot low energy
plot_goes,t1,t2,/one_minute ; one minute averages (default)
plot_goes,t1,t2,/five_minute ; five minute averages
plot_goes,t1,t2,/auto ; use environmental goes_auto_range
plot_goes,t1,t2,auto=[.25,1.,5] ; auto range (3 second/1 min/5 min)
plot_goes,t1,t2,/hc or /hardcopy ; PS hardcopy (default orient=landscape)
plot_goes,t1,t2,/portrait ; PS hardcopy (orient=portrait)
History: slf 22-sep-1992
slf 11-oct-1992 - added low and high keywords, add documentation
slf 26-oct-1992 - added nodeftitle keyword
slf 15-mar-1993 - return on no data
mdm 24-Mar-1993 - corrected error due to integer overflow
slf 19-Jul-1993 - implemented LO and HI keyword function
slf 29-jul-1993 - added max_value keyword (pass to utplot)
slf 4-sep-1993 - add charsize, no6, no7 keywords
slf 22-Nov-1993 - added lots of plot keyowords
jrl 1-dec-1993 - added thick, charthick, xtitle keywords
slf 5-dec-1993 - set default xstyle = 1
slf, 7-dec-1993 - a) added three (second) keyword and functions
c) gave up on any and all hopes for clean logic
slf 15-dec-1993 - a) yrange w/gxt input b) check deriv(valid)
cleanup the input logic a little.
ras 17-aug-1994 - no longer use call procedure by setting proc to
'utplot' or 'utplot_io' by just calling utplot and
setting ytype as needed
slf, 19-aug-94 - make no6 default if start time after 17-aug
dmz 21-Aug-1994 - lumped all plot keywords into _EXTRA
so that keyword inheritance will work with
UTPLOT. Also replaced OUTPLOT by OPLOT and
fixed potential bug in DVALID
slf, 25-aug-94 - merged divergent changes (19-aug / 21-aug)
add /fast switch (use saved version if avail)
gal, 13-aug-94 - added grid_thick switch to control goes grids.
mdm, 20-Sep-94 - Added TIMERANGE option
slf, 9-oct-94 - Added NOYLAB keyword
slf, 30-aug-95 - add ONE_MINUTE and FIVE_MINUTE keywords
add auto_ranging (via environ= goes_auto_range)
preferentially use G71 instead of GXT if availble
slf, 26-sep-95 - protect against missing G6
slf, 28-sep-95 - add HC, HARDCOPY, LANDSCAPE, and PORTRAIT switches
slf, 5-oct-95 - add STATUS keyword (1=some data, 0=none)
jmm, 8-aug-96 - Fixed bugs to allow for the plotting of input
data structures, changed a reference to GXR_DATA_REC
to GXD_DATA_REC.
slf, 13-aug-96 - make GOES 9 default after 1-july-1996
(replace GOES 7 , no goes7 after 14-aug-96)
slf, 18-aug-96 - add goes91/95 to the ydb_exist check
slf, 30-Jul-98 - GOES 9 off , make GOES8 the default
slf, 24-apr-99 - enable COLOR
Zarro, 4-Nov-99 - fixed vector bug when plotting input data
slf, 3-Jan-1999 - put wrapper around 'input1/input2' - pseudo Y2K
slf, 16-apr-2003 - add GOES12, get time dependent default sat# from get_goes_defsat.pro
Zarro, 23 Apr-2004 - add check for GXRIN
CALLS: ***
ADDTIME [1], ADDTIME [2], CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], EXIST
FILE_EXIST [2], GETUTBASE [1], GETUTBASE [2], LOADCT, PLOT_GOES, STR2ARR [1]
STR2ARR [2], UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4], UTPLOT [5], UTPLOT [6]
WDEF [1], WDEF [2], anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
anytim2ints [1], anytim2ints [2], concat_dir [4], data_chk [1], data_chk [2]
deriv_arr [1], deriv_arr [2], fem_grid [1], fem_grid [2], file_exist [1]
file_exist [3], fl_goesplot [1], fl_goesplot [2], fl_goesplot [3], fmt_tim [1]
fmt_tim [2], get_goes_defsat [1], get_goes_defsat [2], get_logenv [1]
get_logenv [2], goes_grid [1], goes_grid [2], gt_day [1], gt_day [2]
int2secarr [1], int2secarr [2], pprint [1], pprint [2], prstr [1], prstr [2]
rd_goesx_ascii, rd_gxd [1], rd_gxd [2], rd_gxd [3], rd_gxt, syst2ex [1], syst2ex [2]
syst2ex [3], tbeep [1], tbeep [2], tbeep [3], ut_time [1], ut_time [2]
ydb_exist [1], ydb_exist [2], ydb_exist [3], ydb_exist [4]
Side Effects:
/fast switch causes color table 15 load
[Previous]
[Next]
Name: goes_plot
Purpose: plot goes x-ray data (Yohkoh structure)
Input Parameters:
input1 - user start time or goes xray data record structure array
input2 - user stop time
Optional Keyword Paramters:
fem - if set, overplot Yohko ephemeris grid (call fem_grid)
fillnight - (pass to fem_grid) - polyfill Yohkoh nights
fillsaa - (pass to fem_grid) - polyfill Yohkoh saas
saa - (pass to fem_grid) - show saa events overlay grid
low - if set, only plot low energy
high - if set, only plot high energy
title - user title (appended to default title predicate)
nodeftitle- if set, dont append default title predicate
color - color of lines
Calling Sequence:
plot_goes,'5-sep-92' ; start time + 24 hours
plot_goes,'5-sep-92',/three ; same, but use 3 second data
plot_goes,'5-sep-92',6 ; start time + 6 hours
plot_goes,'5-sep-92','7-sep-92' ; start time / stop time
plot_goes,gxtstr ; input goes records from rd_gxt
plot_goes,'5-sep',/fem ; overplot Yohkoh ephemeris grid
plot_goes,'5-sep',/fillnight ; ditto, but fill in Yohkoh nights
plot_goes,'1-jun','30-jul',/low ; only plot low energy
plot_goes,t1,t2,/one_minute ; one minute averages (default)
plot_goes,t1,t2,/five_minute ; five minute averages
plot_goes,t1,t2,/auto ; use environmental goes_auto_range
plot_goes,t1,t2,auto=[.25,1.,5] ; auto range (3 second/1 min/5 min)
plot_goes,t1,t2,/hc or /hardcopy ; PS hardcopy (default orient=landscape)
plot_goes,t1,t2,/portrait ; PS hardcopy (orient=portrait)
History: slf 22-sep-1992
slf 11-oct-1992 - added low and high keywords, add documentation
slf 26-oct-1992 - added nodeftitle keyword
slf 15-mar-1993 - return on no data
mdm 24-Mar-1993 - corrected error due to integer overflow
slf 19-Jul-1993 - implemented LO and HI keyword function
slf 29-jul-1993 - added max_value keyword (pass to utplot)
slf 4-sep-1993 - add charsize, no6, no7 keywords
slf 22-Nov-1993 - added lots of plot keyowords
jrl 1-dec-1993 - added thick, charthick, xtitle keywords
slf 5-dec-1993 - set default xstyle = 1
slf, 7-dec-1993 - a) added three (second) keyword and functions
c) gave up on any and all hopes for clean logic
slf 15-dec-1993 - a) yrange w/gxt input b) check deriv(valid)
cleanup the input logic a little.
ras 17-aug-1994 - no longer use call procedure by setting proc to
'utplot' or 'utplot_io' by just calling utplot and
setting ytype as needed
slf, 19-aug-94 - make no6 default if start time after 17-aug
dmz 21-Aug-1994 - lumped all plot keywords into _EXTRA
so that keyword inheritance will work with
UTPLOT. Also replaced OUTPLOT by OPLOT and
fixed potential bug in DVALID
slf, 25-aug-94 - merged divergent changes (19-aug / 21-aug)
add /fast switch (use saved version if avail)
gal, 13-aug-94 - added grid_thick switch to control goes grids.
mdm, 20-Sep-94 - Added TIMERANGE option
slf, 9-oct-94 - Added NOYLAB keyword
slf, 30-aug-95 - add ONE_MINUTE and FIVE_MINUTE keywords
add auto_ranging (via environ= goes_auto_range)
preferentially use G71 instead of GXT if availble
slf, 26-sep-95 - protect against missing G6
slf, 28-sep-95 - add HC, HARDCOPY, LANDSCAPE, and PORTRAIT switches
slf, 5-oct-95 - add STATUS keyword (1=some data, 0=none)
jmm, 8-aug-96 - Fixed bugs to allow for the plotting of input
data structures, changed a reference to GXR_DATA_REC
to GXD_DATA_REC.
slf, 13-aug-96 - make GOES 9 default after 1-july-1996
(replace GOES 7 , no goes7 after 14-aug-96)
slf, 18-aug-96 - add goes91/95 to the ydb_exist check
CALLS: ***
ADDTIME [1], ADDTIME [2], CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], EXIST
FILE_EXIST [2], GETUTBASE [1], GETUTBASE [2], LOADCT, PLOT_GOES, STR2ARR [1]
STR2ARR [2], UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4], UTPLOT [5], UTPLOT [6]
WDEF [1], WDEF [2], anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
anytim2ints [1], anytim2ints [2], concat_dir [4], data_chk [1], data_chk [2]
deriv_arr [1], deriv_arr [2], fem_grid [1], fem_grid [2], file_exist [1]
file_exist [3], fl_goesplot [1], fl_goesplot [2], fl_goesplot [3], fmt_tim [1]
fmt_tim [2], get_goes_defsat [1], get_goes_defsat [2], get_logenv [1]
get_logenv [2], goes_grid [1], goes_grid [2], gt_day [1], gt_day [2]
int2secarr [1], int2secarr [2], pprint [1], pprint [2], prstr [1], prstr [2]
rd_goesx_ascii, rd_gxd [1], rd_gxd [2], rd_gxd [3], rd_gxt, syst2ex [1], syst2ex [2]
syst2ex [3], tbeep [1], tbeep [2], tbeep [3], ut_time [1], ut_time [2]
ydb_exist [1], ydb_exist [2], ydb_exist [3], ydb_exist [4]
Side Effects:
/fast switch causes color table 15 load
[Previous]
[Next]
NAME:
goes_reducer
PURPOSE:
Reduce GOES data to T, em, luminosity, etc. Note that the default
call gets 3-second data from the GOES archive. These data, while
good, often have "range change" glitches arising in the GOES
analog electronics. Right now these must be dealt with manually
if one needs a clean time series.
CATEGORY:
X-rays: GOES
CALLING SEQUENCE:
goes_reducer, t1, t2, goes_time, goes_out, total_energy
goes_reducer, t1, t2, goes_time, goes_out, total_energy, /three
goes_reducer, t1, t2, goes_time, goes_out, total_energy, /noback,/plot
goes_reducer, t1, t2, goes_time, goes_out, /notemps
goes_reducer, t1, t2, goes_time, goes_outs, /three, /fix_time, /noback, /quiet
INPUTS:
t1, t2 define GOES time period
these times are passed to read procedure 'rd_gxd'.
Usually t1 and t2 will be start and end time as a formatted
string of type '15-nov-91 22:00'. Alternatively, setting t1
to a week number and t2 to a year reads a whole weekly GOES file.
OPTIONAL INPUT PARAMETERS:
/noback defeats the background estimate (i.e, takes the total signal)
/first_back sets the background level to the first point (t1)
/plot makes standard plots (done indepently with GR_SUMMARY_PLOT)
/fix_time bypasses the PLOT_LCUR calls, i.e. non-interactive
/quit defeats message-printing (the "Blame Roger Thomas" one)
/notemps just returns data (can be used with /noback just to get
the GOES fluxes, as an alternative to plot_goes)
/one reverts to one-minute integrations
/five gives five-minute integrations
/three doesn't do anything except print a note about the default 3-sec data.
/goes10 uses GOES 10 instead of the RD_GXD default
The following three keywords control identification of 'bad data'.
T and EM are not calculated (set to NaN) if the GOES fluxes drop below the
threshold fluxes; or the GOES ratio is below the minimum ratio or above the
maximum ratio (in gr_summary_plot these data are not plotted).
minratio=minratio
minimum ratio of high/low energy GOES channel (default: 0.01)
maxratio=maxratio
maximum ratio of high/low energy GOES channel (default: 0.7)
threshold=threshold
2-element array with GOES fluxes for low and high channel
(default: [0,0])
Note that all keywords to plot_lcur, goes_tem, tem_thermal_power and gr_summary_plot
are also accepted. See those routines for more details.
goes_tem keywords : /thomas, /garcia
tem_thermal_power keywords : /mewe
gr_summary_plot keywords : unit, power and noerror + any old plot keyword
OUTPUTS:
goes_time index-type file of times, for UTPLOT entry
goes_out structure containing the fit parameters:
temperatures (MK)
emission measures (units of 10^49 cm^-3)
total radiated powers (ergs/s)
(as calculated by function tem_thermal_power)
radio ff flux (sfu @ 15 GHz. This assumes He/H = 6.3% abundance)
GOES fractional fluxes (high-energy channel, low-energy channel)
(these are the GOES energy flux normalized to the total power)
GOES input fluxes (w/m^2; these are background-corrected)
GOES backgrounds as input interactively
terrmin is lower limit for temperature
terrmax is upper limit for temperature
emerrmin is lower limit for emission measure
emerrmax is upper limit for emission measure
total_energy the time integral of X-ray radiated energy
WARNING:
The present GOES data sometimes have mismatched points in the different channels.
This causes a 'dischronicity alert' and a halt.
Beware of results if the signal-to-background ratio is small. The total power fit
is valid only for 5-30 MK and doesn't include long-wavelength emissions of
probable significance, such as Ly-alpha or He 304.
With the 3-sec GOES data, the "range change" glitches are quite obvious. These
must currently be dealt with manually. None of this has been tried on GOES-8 data.
CALLS: ***
CHECKVAR [1], GOES_TEM, MEAN, checkvar [2], gr_summary_plot, plot_lcur [1]
plot_lcur [2], rd_gxd [1], rd_gxd [2], rd_gxd [3], tem_thermal_power
MODIFICATION HISTORY:
HSH written 21-Feb-93
HSH added radio fluxes (algorithm from Stephen White, U. Md.) 13-Mar-93
HSH added fractional energy flux outputs 30-Mar-93
HSH added /three keyword 18-Apr-93
HSH added /noback and fixed other things 24-Apr-93
PLB added error bars to the calculation 9/13/93. see ApJ reference.
this uses the three extremes of including and subtracting
background fluxes; it does not fit the rise of the flare as
described in the reference (Bornmann, P. 1990, Ap. J. 356, p. 733).
HSH added /plot keyword 9-Oct-93
HSH added /notemps keyword 22-Nov-93
HSH added /fix_time, /quiet, /first_back 11-May-95
HSH converted to RD_GXD, 3-sec default, 2-Dec-95 (/one, /five)
HSH fixed the radio flux algorithm (thanks for bug report from K. Shibasaki, NRO), 26-Apr-96
JUNE-2001; Paul Hick (UCSD/CASS; pphick@ucsd.edu)
Replaced call to thomas_goes by calls to goes_tem and tem_thermal_power.
EM units changed from 10^55 to 10^49 cm^-3 (consistent with goes_tem).
Added keywords minratio, maxratio and threshold
Added keyword _extra to pass arguments to tem_thermal_power, goes_tem, gr_summary_plot
23-jun-01 added /goes10 keyword (HSH)
[Previous]
[Next]
NAME:
GOES_REDUCER
PURPOSE:
Reduce GOES data to T, em, L_X, etc.
CATEGORY:
CALLING SEQUENCE:
goes_reducer, t1, t2, goes_time, goes_out, total_energy
goes_reducer, t1, t2, goes_time, goes_out, total_energy, /three
goes_reducer, t1, t2, goes_time, goes_out, total_energy, /noback
INPUTS:
t1 = start time (formatted, eg '15-nov-91 22:00')
t2 = end time (formatted)
OPTIONAL (KEYWORD) INPUT PARAMETERS:
three calls the 3-sec integrations. Not available for all times.
noback defeats the background estimate (ie, takes the total signal)
OUTPUTS:
goes_time is an index file of times, for UTPLOT
goes_out is a structure containing the fit parameters:
temperatures (MK)
emission measures (units of 10^55 cm^-3)
total radiated powers (ergs/s)
radio ff flux (sfu @ 15 GHz. This assumes He/H = 6.3% abundance)
GOES fractional fluxes (high-energy channel, low-energy channel)
(these are the energy flux in band normalized to the total)
GOES input fluxes (w/m^2; these are background-corrected)
GOES backgrounds as input interactively
total_energy is the time integral
WARNING:
The present GOES data sometimes have mismatched points in the
different channels. This causes a 'dischronicity alert' and
a halt.
Beware of results if the signal-to-background ratio is small.
As of 24-Apr-93 the radio output isn't quite right.
The total power fit is valid only for 5-30 MK and doesn't
include long-wavelength emissions of probable significance,
such as Ly-alpha or He 304.
MODIFICATION HISTORY:
HSH written 21-Feb-93
HSH added radio fluxes (algorithm from Stephen White, U. Md.) 13-Mar-93
HSH added fractional energy flux outputs 30-Mar-93
HSH added /three keyword 18-Apr-93
HSH added /noback and fixed other things 24-Apr-93
[Previous]
[Next]
NAME:
GOES_SAFE
PURPOSE:
Plots GOES data from both -8 and -9. Uses 1-minute smoothing.
CATEGORY:
CALLING SEQUENCE:
goes_safe,'20-oct 06:00','20-oct 10:00' (shows a solar event)
goes_safe,'19-oct','19-oct 7:00' (shows non-solar events)
INPUTS:
OPTIONAL (KEYWORD) INPUT PARAMETERS:
gxd8, gxd9 return the GOES data structures
high, looks at the high-energy channel
OUTPUTS:
Makes a plot, displacing the GOES-8 data upwards by one decade.
(two in the case of /high)
CALLS: ***
OUTPLOT [1], OUTPLOT [2], OUTPLOT [3], UTPLOT_IO [1], UTPLOT_IO [2], UTPLOT_IO [3]
rd_gxd [1], rd_gxd [2], rd_gxd [3]
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
21-oct-96, written (HSH)
9-Feb-98, added /high; changed to 5-minute averages (HSH)
[Previous]
[Next]
Name: goes_summary
Purpose: summarize weekly goes activity / Yohkoh ephemeris on 1 page
Input Parameters:
start - start time for plot (any Yohkoh format)
ndays - number of days to summarize (default=7)
Optional Keyword Parameters:
above - (not implemented) goes class cutoff for individual flare display
big - number of individual flare displays
hc - generate and print ps file
bpp - bits/pixel for PS (default is 4 for speed)
Calling Sequence:
goes_summary ; last 7 days, 6 largest flares
goes_summary, start [,ndays , above='M1'] ; indiv flares above M1
goes_summary, start [,ndays , big=5] ; biggest 5 flares in period
Description:
A single page of plots is produced containing:
One plot covering entire time range, no Yohkoh Ephemeris
Multiple plots (number depends on above or big parameters, max=9)
largest flares for week, expanded time, Yohkoh ephemeris
CALLS: ***
ARR2STR [1], Arr2Str [2], PLOT_GOES, RD_GEV, REVERSE, anytim2ints [1]
anytim2ints [2], anytim2weeks [1], anytim2weeks [2], evt_grid, fmt_tim [1]
fmt_tim [2], gt_day [1], gt_day [2], gt_time [1], gt_time [2], pprint [1]
pprint [2], restsys [1], restsys [2], savesys [1], savesys [2], syst2ex [1]
syst2ex [2], syst2ex [3]
CALLED BY:
monthly_summary
History:
25-Oct-92 (SLF) - Written to Simplify Toban duties
17-Mar-93 (MDM) - Patch to handle when there are no flares to
blow up
18-Mar-93 (MDM) - Added /QDEBUG option
30-Mar-93 (SLF) - Document / unclutter
10-May-93 (SLF) - Make most recent week default if no input time
added hc keyword, use 4bits/pix by default
10-sep-93 (SLF) - Lowered flare threshold (no C flares!)
2-nov-93 (SLF) - Protect agains no GEV data
6-Dec-93 (SLF) - call evt_grid to tag expanded flares,
call savesys and restsys (avoid global side effects)
30-aug-95 (SLF) - added ONE_MINUTE, FIVE_MINUTE, and AUTO_RANGE keywords
[Previous]
[Next]
NAME:
goes_teem
CALLING SEQUENCE:
Goes_teem, goes_data, te, em, time_array, time_intervals, flux, bflux, $
btime, dtb, st_times = st_times, int_times = int_times, quiet=quiet, $
bck_time=bck_time, bck_dt=bck_dt, dt_resolution=dt_resolution, $
auto_bck=auto_bck, auto_tim=auto_tim, nbcks=nbcks, nbsigmas=nbsigmas, $
channel=channel, alt_tsel=alt_tsel, zzb=zzb, auto_peak=auto_peak, $
schwartz=schwartz, use_goes_bck=use_goes_bck, goes8=goes8, $
goes9=goes9, goes6=goes6, goes7=goes7, verbose=verbose,garcia=garcia
PURPOSE:
gets temperature and emission measure for GOES
INPUT:
goes_data= GOES data structure, from RD_GXD or READ_GOES_FITS
OUTPUT: (OPTIONAL)
te = GOES temperature in MK
em = GOES emission measure in Logs
time_array = the start times of the chosen intervals
time_intervals = the interval times in seconds
flux = the excess GOES flux for the chosen intervals
bflux= the background flux
btime= the background start time
dtb = the background interval time
KEYWORD INPUT:
st_times= an array of accumulation start times, in any yohkoh format
int_times= interval times corresponding to st_times, may be a scalar,
if this is not set, and st_times is set, the routine will
use the differences between st_times. Must be an integer
number of seconds, if the value of int_times is less than
a minor frame value, e.g., when not in flare mode,
we'll try to adjust.
bck_time= a background time, in any yohkoh format
bck_dt= the background accumulation time, bck_time must be set,
If bck_dt is not set dtb=120.0 seconds is used.
dt_resolution= The number of 3 second intervals per fit interval
If set to -1, use the whole interval.
;;;;;;;;;;;;;;;;;;;;;;This will only operate if the time is selected by
;;;;;;;;;;;;;;;;;;;;;;the user, or the st_times keyword has only one element.
auto_bck= if set, the background interval is obtained automatically
auto_tim= if set, the flare interval is obtained automatically
FOR AUTOMATIC TIME SELECTION:
nbcks = if set, the number of background levels above the
background that the data within trange must be,
i.e., data - bck > nbcks*bck, the default is 1.0,
if not set. If both nbcks and nbsigmas are set,
nbcks gets used.
nbsigmas = if set, the number of sigmas above the background
that the data within trange must be, no default,
i.e., data - bck > nbsigmas*sigma(bck). Note here that
we assume that the background is Poisson distributed,
even if that is not true.
channel=channel to use for choice of background and interval
for automatic choices, default is zero, for interactive
choices, the default is to prompt the user
alt_tsel = uses ALT_TIM_SEL to obtain interval, rather than PLOT_LCUR
Useful if you don't have x-windows.
zzb = Don't use this.. zero background.
auto_peak= if set, find the peak interval for the
appropriate channel and fit it, if set to -1 this will
prompt you FOR an ok FOR the spot. IF NOT, no prompt...
use_goes_bck= if set, use GOES_BCK.pro to obtain the background...
quiet= if set, run quietly
schwartz= if set, use Richard Schwartz's goes_tem routine, which
uses the flux ratio directly, just like SXT,
GOES_TEM KEYWORDS:
GOES6 - if set, use response for GOES6, this is the default
GOES7 - if set, use response for GOES7
GOES8 - if set, use response for GOES8+
GOES9 - if set, use response for GOES9
GARCIA - if set, interpolate on Garcia generated tables from Raymond
SATELLITE - Alternative to GOESN keyword, supply the GOES satellite
number, i.e. for GOES6==> SATELLITE=6, range from 0-9
CALLS: ***
GOES_TEM, Goes_bck0, OUTPLOT [1], OUTPLOT [2], OUTPLOT [3], UTPLOT [1], UTPLOT [2]
UTPLOT [3], UTPLOT [4], UTPLOT [5], UTPLOT [6], accum_counts [1], accum_counts [2]
accum_counts [3], anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2]
auto_bck_find, choose_interval, fmt_tim [1], fmt_tim [2], goesem_eqn [1]
goesem_eqn [2], goest_eqn [1], goest_eqn [2], int2secarr [1], int2secarr [2]
yesnox [1], yesnox [2]
CALLED BY:
Sxt_goes_teem, goesem_eqn [1], goest_eqn [1]
HISTORY:
11-oct-95, jmm, from HXT_FSP
1-apr-96, jmm, changed input to structures
[Previous]
[Next]
NAME:
GOES_TEK
PURPOSE:
plot GOES data for Yohkoh CO with Tek graphics
CATEGORY:
CALLING SEQUENCE:
goes_tek
goes_tek, delta
goes_tek, t1, t2
goes_tek, 24 (the default)
INPUTS:
delta = offset time in hours, ie for a 1-day plot do delta=24 (default)
OPTIONAL (KEYWORD) INPUT PARAMETERS:
ut_offset = puts in a correction for local time (Japan is 9) in the
selection time (plot is still UT)
fillsaa = puts SAA times on plot
OUTPUTS:
CALLS: ***
CLEAR_UTPLOT [1], CLEAR_UTPLOT [2], OUTPLOT [1], OUTPLOT [2], OUTPLOT [3]
UTPLOT_IO [1], UTPLOT_IO [2], UTPLOT_IO [3], anytim2ints [1], anytim2ints [2]
data_chk [1], data_chk [2], evt_grid, fem_grid [1], fem_grid [2], fmt_tim [1]
fmt_tim [2], gt_dp_mode [1], gt_dp_mode [2], gt_dp_rate [1], gt_dp_rate [2]
linecolors [1], linecolors [2], rd_gxd [1], rd_gxd [2], rd_gxd [3], rd_obs
reltime [1], reltime [2], ssw_deltat, time_window
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
HSH, written 3-Aug-96
HSH, ut_offset 6-Dec-96
HSH, evt_grid 24-Dec-96
TRM, Added GOES classifications and JST times, 1997-Feb-25
TRM, Added a call to clear_utplot since the UT plot configuration
was left in a strange state.
HSH, distinguished DP rates, 15-apr-97
HSH, added /fillsaa, 16-May-97
HSH, added horizontal lines 10-Oct-97
HSH, added /tek keyword 17-Oct-97
HSH, put in t1, t2 27-Jan-98
HSH, reverted to GOES-8 29-jul-98
HSH, fiddled with RD_GXD some more, 12-Sep-98
BNH, SSWified and modernized the time calculations, 9-Nov-2000
[Previous]
[Next]
NAME:
GOES_TEK
PURPOSE:
plot GOES data for Yohkoh CO with Tek graphics
CATEGORY:
CALLING SEQUENCE:
goes_tek
goes_tek, delta
goes_tek, t1, t2
goes_tek, 24 (the default)
INPUTS:
delta = offset time in hours, ie for a 1-day plot do delta=24 (default)
OPTIONAL (KEYWORD) INPUT PARAMETERS:
ut_offset = puts in a correction for local time (Japan is 9) in the
selection time (plot is still UT)
fillsaa = puts SAA times on plot
OUTPUTS:
CALLS: ***
CLEAR_UTPLOT [1], CLEAR_UTPLOT [2], GOES_TEK_WEEK, UTPLOT_IO [1], UTPLOT_IO [2]
UTPLOT_IO [3], anytim2ints [1], anytim2ints [2], evt_grid, gt_dp_mode [1]
gt_dp_mode [2], gt_dp_rate [1], gt_dp_rate [2], linecolors [1], linecolors [2]
rd_gxd [1], rd_gxd [2], rd_gxd [3], rd_obs
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
HSH, written 24-jul-98, derived from GOES_TEK
29-Jul-98, switched to GOES-8 (HSH)
[Previous]
[Next]
NAME:
GOES_TODAY
PURPOSE:
PLOT_GOES for these 24 hours.
CALLING SEQUENCE:
GOES_TODAY
GOES_TODAY, /fillsaa, /fillnight
GOES_TODAY, days
INPUT:
none
CALLS: ***
CLOSE_PAPER, PLOT_GOES, SET_PAPER, anytim2ints [1], anytim2ints [2], ut_time [1]
ut_time [2]
OPTIONAL KEYWORD INPUT:
days - Display from Today-days; default is 2 days.
fillsaa - Same as the one used in PLOT_GOES.
fillnight - Same as above.
psout - If set, then a PostScript file will be created.
OUTPUT:
none
SIDE EFFECT:
A window is displayed.
CATEGORY:
Daily activity monitor for the Sun.
HISTORY:
version 1.0 96.11.25 (Mon) T.Sakao written.
1.1 96.12.26 (Thu) Option days added.
[Previous]
[Next]
Name: goes_widget
Purpose: allow GOES data display and time definitions for dbase access
CALLS: ***
FMT_TIMER [1], FMT_TIMER [2], GET_WUVALUE, GET_WVALUE, GOES_DRAW, GOES_DRAW_EVENT
GOES_MARK, GOES_SLIDER_EVENT, GOES_WIDGET_EVENT, OUTPLOT [1], OUTPLOT [2]
OUTPLOT [3], PLOT_GOES, UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4], UTPLOT [5]
UTPLOT [6], XMENU2, XSPR_NEWSS, XSPR_UPDATE_IMG, evt_grid, fem_grid [1]
fem_grid [2], fmt_tim [1], fmt_tim [2], get_utevent [1], get_utevent [2]
int2secarr [1], int2secarr [2], mapx [1], mapx [2], restsys [1], restsys [2]
savesys [1], savesys [2], sel_timrange [1], sel_timrange [2], sort_index [1]
sort_index [2], timegrid
CALLED BY:
xspr [1], xspr [2]
History:
10-apr-1995 (SLF)
23-may-1995 (SLF) - allow 'interupts' which change window (like xloadct)
[Previous]
[Next]
NAME:
goesem_eqn
PURPOSE:
Given the goes temperature, and the flux in the low energy channel,
Obtains the emission measure, Approximation of Thomas, etal., 1975
CALLING SEQUENCE:
em = goesem_eqn(t6, low)
INPUT:
t6 = temperature/10^6 K
low = low energy channel flux (fluxes come in W/m^2).
OUTPUT:
em = log emission measure, in cm^{-3}
CALLS: ***
GOES_TEM, Goes_bck0, OUTPLOT [1], OUTPLOT [2], OUTPLOT [3], UTPLOT [1], UTPLOT [2]
UTPLOT [3], UTPLOT [4], UTPLOT [5], UTPLOT [6], accum_counts [1], accum_counts [2]
accum_counts [3], anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2]
auto_bck_find, choose_interval, fmt_tim [1], fmt_tim [2], goes_teem, goest_eqn [1]
goest_eqn [2], int2secarr [1], int2secarr [2], yesnox [1], yesnox [2]
CALLED BY:
goes_teem, goest_eqn [1]
HISTORY:
9/22/94, jmm
Low energy factor of 1.4 found by R.Schwartz,
for GOES4-GOES9, added, 2/12/97, jmm
[Previous]
[Next]
NAME:
goesem_eqn
PURPOSE:
Given the goes temperature, and the flux in the low energy channel,
Obtains the emission measure, Approximation of Thomas, etal., 1975
CALLING SEQUENCE:
em = goesem_eqn(t6, low)
INPUT:
t6 = temperature/10^6 K
low = low energy channel flux (fluxes come in W/m^2).
OUTPUT:
em = log emission measure, in cm^{-3}
CALLED BY:
goes_teem, goest_eqn [1]
HISTORY:
9/22/94, jmm
Low energy factor of 1.4 found by R.Schwartz,
for GOES4-GOES9, added, 2/12/97, jmm
[Previous]
[Next]
NAME:
goest_eqn
PURPOSE:
Given ratio of GOES high energy channel to low energy channel
Obtains the temperature, Approximation of Thomas, etal., 1975
CALLING SEQUENCE:
t6 = goest_eqn(ratio)
INPUT:
ratio = ratio of high energy channel flux to low energy channel flux
(fluxes come in W/m^2).
OUTPUT:
t6 = temperature/10^6 K
t6 = 3.15+77.2*ratio-164*ratio^2+205*ratio^3
CALLS: ***
GOES_TEM, Goes_bck0, OUTPLOT [1], OUTPLOT [2], OUTPLOT [3], UTPLOT [1], UTPLOT [2]
UTPLOT [3], UTPLOT [4], UTPLOT [5], UTPLOT [6], accum_counts [1], accum_counts [2]
accum_counts [3], anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2]
auto_bck_find, choose_interval, fmt_tim [1], fmt_tim [2], goes_teem
goesem_eqn [1], goesem_eqn [2], int2secarr [1], int2secarr [2], yesnox [1]
yesnox [2]
CALLED BY:
goes_teem, goesem_eqn [1]
HISTORY:
9/22/94, jmm
Low energy factor of 1.4 found by R.Schwartz,
for GOES4-GOES9, added, 2/12/97, jmm
[Previous]
[Next]
NAME:
goest_eqn
PURPOSE:
Given ratio of GOES high energy channel to low energy channel
Obtains the temperature, Approximation of Thomas, etal., 1975
CALLING SEQUENCE:
t6 = goest_eqn(ratio)
INPUT:
ratio = ratio of high energy channel flux to low energy channel flux
(fluxes come in W/m^2).
OUTPUT:
t6 = temperature/10^6 K
t6 = 3.15+77.2*ratio-164*ratio^2+205*ratio^3
CALLED BY:
goes_teem, goesem_eqn [1]
HISTORY:
9/22/94, jmm
Low energy factor of 1.4 found by R.Schwartz,
for GOES4-GOES9, added, 2/12/97, jmm
[Previous]
[Next]
NAME:
GOOD_HXA_SCAN
PURPOSE:
determine whether the HXA scan data are valid, by
checking HXA_SCAN.NPOSUM and also by comparing
with the expected locations of the fiducial marks
CATEGORY:
Yohkoh
CALLING SEQUENCE:
print, good_hxa_scan(hxa_scan_data)
INPUTS:
hxa_scan
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
vector with 1's where the data are good
CALLS: ***
FORZONES [1], FORZONES [2]
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
7-Sep-98, written (HSH)
[Previous]
[Next]
NAME:
GOOD_MAX
PURPOSE:
Determine the real plot maximum, ignoring bad points
CALLING SEQUENCE:
max = good_max(counts [,gvec,gmin])
INPUTS:
counts array of counts
OUTPUTS:
max maximum value
OPTIONAL OUTPUTS:
gvec vector of points used in the max. determination
gmin minimum using same vector
KEYWORD OUTPUTS:
thresh threshold to test against
debug prints other info.
CALLS: ***
ALL_VALS [1], ALL_VALS [2]
CALLED BY:
BCS_24HR_PLOT [1], BCS_24HR_PLOT [3], OBS_PLOT
RESTRICTIONS:
PROCEDURE:
Finds good maxiumum after first removing "spikes"
MODIFICATION HISTORY:
RDB 04-Jul-92
RDB Jun-94 Rewritten
RDB 29-Jul-94 Small correction for last point
Improved handling of single point
RDB 27-Oct-95 Improved removal of bad points
added /nan in min and max function calls...
RDB 26-Jan-96 Removed undefined numbers; took out v4 test
[Previous]
[Next]
NAME:
GOOD_MAX
PURPOSE:
Determine the real plot maximum, ignoring bad points
CALLING SEQUENCE:
max = good_max(counts [,gvec,gmin])
INPUTS:
counts array of counts
OUTPUTS:
max maximum value
OPTIONAL OUTPUTS:
gvec vector of points used in the max. determination
gmin minimum using same vector
KEYWORD OUTPUTS:
thresh threshold to test against
debug prints other info.
CALLS: ***
ALL_VALS [1], ALL_VALS [2]
CALLED BY:
BCS_24HR_PLOT [1], BCS_24HR_PLOT [3], OBS_PLOT
RESTRICTIONS:
PROCEDURE:
Finds good maxiumum after first removing "spikes"
MODIFICATION HISTORY:
RDB 04-Jul-92
RDB Jun-94 Rewritten
RDB 29-Jul-94 Small correction for last point
Improved handling of single point
RDB 27-Oct-95 Improved removal of bad points
added /nan in min and max function calls...
[Previous]
[Next]
NAME:
goodch
CALLING SEQUENCE:
goodch,nsig,chok,y0,bck,dt,tc,b,icch,nch
PURPOSE:
Obtain the channels for which the excess count rate is greater than
nsig sigmas of the background
INPUT:
nsig=no. of sigmas above background for good data
chok=0 for good data, =1 for bad data
y0=total count rate,
bck=background,
dt=interval,
OUTPUT:
tc= total counts for good channels,
b= background for those channels,
icch= the channels,
nch=the number of good channels
CALLED BY:
fsp_11, fsp_mc
HISTORY:
Spring '92 by JMcT
16-aug-94, changed so that channels above the lowest
channel that is excluded for background purposes
are also excluded, jmm
19-sep-94, turn off the last change when the background is zero,
a cheap way to deal with SXT, jmm
5-jul-95, turn off that change for channels that have been
deleted before being passed in, to avoid oddness
with Ulysses data.
[Previous]
[Next]
NAME:
gr_summary_plot
PURPOSE:
Make a 4-panel or 6-panel plot showing output from 'goes_reducer'
CATEGORY:
X-rays, GOES
CALLING SEQUENCE:
gr_summary_plot, times, outputs [,unit=unit, /noerror, plotorder=plotorder, /power]
INPUTS:
times
outputs
output variables from GOES_REDUCER
OPTIONAL INPUT PARAMETERS:
/power if not set a 2x2 plot is made for the fluxes, T and EM
if set a 2x3 plot is made, adding power and radio flux
unit=unit
4- or 6-element integer array; changes the units on the y-axis
unit[0] changes the hard channel units to 10^unit[0] W/m^2
unit[1] changes the soft channel units to 10^unit[1] W/m^2
unit[2] changes the temperature units to 10^unit[2] K
unit[3] changes the emiss measure units to 10^unit[3] cm^-3
unit[4] changes the power units to 10^unit[4] erg/s
unit[5] changes the radio flux units to 10^unit[5] ???
Only the integer part of 'unit' is used
/noerrors
suppresses plotting of error estimates on the temperature
and emission measure plots.
plotorder=plotorder
4- or 6-element integer array with a permutation of numbers 0,1,2,3,4,5
Default is [0,2,1,3,4,5].
Modifies the plot layout. By default the top-left plot is
the hard channel, bottom-left is the soft channel, top-right is
the temperature, and bottom-right is the emission measure.
CALLS: ***
CLEAR_UTPLOT [1], CLEAR_UTPLOT [2], OUTPLOT [1], OUTPLOT [2], OUTPLOT [3]
UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4], UTPLOT [5], UTPLOT [6]
CALLED BY:
goes_reducer [1]
RESTRICTIONS:
The input units for the GOES fluxes should be to W/m^2, the input
temperature should be in MK, the emission measure in 10^55 cm^-3
OUTPUTS:
none
MODIFICATION HISTORY:
HSH, written 9 Oct. 1993
JUN-2001, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
added keywords 'plotorder', 'unit'
!p.multi is saved on entry and restored on exit (rather than setting it to zero).
added optional power and radio flux plots
[Previous]
[Next]
NAME: gradls
PURPOSE: To do a least squares fit to a non-linear function
with a parabolic expansion of chi square.
METHOD: Uses the gradient in chi-squared space to search for
minimum chi-squared and optimize the parameters for
a curve to get the best fit to a set of data points.
CALLING SEQUENCE: fit=gradls(x,y,a,delta,chisqr,mode,sigmay,funct="circle")
PARAMETERS: x data points for independent variable
y data points for dependent variable
mode determines weighting method
+1 (instrumental) weight(i) = 1./sigmay(i)**2
0 (no wieghting) weight(i) = 1.
-1 (statistical) weight(i) = 1./y(i)
a fit parameters
sigmay standard deviations of the y data points
delta parameter increments
chisqr reduced chi square for fit
fit the point on the fit curve: [xfit,yfit]
KEYWORDS: funct Set to indicate what function to fit to.
Current options are:
circle (default) and ellipse.
CALLS: ***
circle_fn, ellipse_fn, fchisq
CALLED BY:
ellipse_fit
HISTORY: Converted from Bornmann C procedure, AMcA, August 1994.
added trap for convergent chi squares, AMcA, Aug. 24 1994
[Previous]
[Next]
NAME:
grid
PURPOSE
Draw a grid on a window.
CALLING SEQUENCE
grid,nx,ny,x,y,color=color,xoffset=xoffset,yoffset=yoffset
grid,2,3,256,128,yoffset=128
INPUT PARAMETERS
nx : number of boxes in x direction
ny : number of boxes in y direction
xx : x dimension of a single box
OPTIONAL INPUTS
yy : y dimension of a single box
(Optional, default is y=x.)
OPTIONAL KEYWORD INPUTS
color = color to draw the grid (default color = 255)
xoffset, yoffset = offsets in x & y to apply to each grid element.
narrow - draw single-pixel-width lines (default is 2 pixels)
HISTORY
2/14/92, lwa
4/04/94, lwa (added y parameter and header)
8/04/94, lwa (replaced tvplot with plots and
added soffset & yoffset keywords)
12/03/94, lwa (added narrow keyword)
CALLED BY
LATEST_SFDS_GIF, SYNOP_3_ROTS, eit_getobs, sacpeak_image
[Previous]
[Next]
NAME:
GRID_CURSOR
PURPOSE:
Interactively position and scale a heliocentric grid
CATEGORY:
Interactive graphics.
CALLING SEQUENCE:
grid_cursor [,item, x0, y0, r, init=init, fixed_size=fixed_size, $
erase=erase, no_message=no_message, qstop=qstop]
EXAMPLE CALLS:
grid_cursor, index
grid_cursor, b0
grid_cursor, '12-feb-93'
INPUTS:
No required input parameters.
OPTIONAL INPUT PARAMETERS:
item - may be:
1. a tilt angle (b0) in degrees
2. an INDEX structure, from which b0 will be derived
3. a time in any standard Yohkoh format, from which b0 will
be derived
x0, y0, r give the initial location (x0, y0) and
size r of the circle if the keyword INIT is set. Otherwise, the
circle is initially drawn in the center of the screen.
KEYWORD PARAMETERS:
INIT: If this keyword is set, x0, y0, r contain the initial
parameters for the circle.
FIXED_SIZE: If this keyword is set, r contains the initial
size of the circle. This size may not be changed by the user.
ERASE: If set then erase the window before drawing grid
NO_MESSAGE: If set, inhibit message describing cursor operation
OUTPUTS:
x0: X value of center of circle in device pixels.
y0: Y value of center of circle in device pixels.
r: radius of circle in device pixels.
CALLS: ***
CIRCLE_CURSOR, DATATYPE [1], DATATYPE [2], DATATYPE [3], DRAW_GRID [1]
DRAW_GRID [2], DRAW_GRID [3], fmt_tim [1], fmt_tim [2], get_rb0p [1], get_rb0p [2]
RESTRICTIONS:
Works only with window system drivers.
PROCEDURE:
The graphics function is set to 6 for eXclusive OR. This
allows the circle to be drawn and erased without disturbing the
contents of the window.
Operation is as follows:
Left mouse button: Move the circle by dragging.
Middle mouse button: Resize the circle by dragging.
Right mouse button: Exit procedure, returning the
current circle parameters.
MODIFICATION HISTORY:
Jan 95 - Written by GLS using BOX_CURSOR as a base.
[Previous]
[Next]
Name: grid_data
Purpose: return gridded subset of input (~fixed cadence if no gaps)
Input Parametrs:
index - generally, an index or roadmap array
Keyword Parameters:
seconds, hours, minutes (one) - desired cadence passed to timegrid.pro
non_uniq - if set, return duplicates (default is uniq matches)
oindex - if set, return index(SS) - default is subscripts (SS)
delta (output) - delta seconds for data set/grid matches
Output Parameters:
function returns SS vector of index records closest to grid times
if /OINDEX is set, return INDEX(SS); ie, reduced structure array
Calling Examples:
gdata=grid_data(index, min=5) ;return SS vector, cad.=5minutes
gdata=grid_data(rmap, hour=6],/oindex) ;return index(SS), cad.= 6 hours
evt_grid,grid_data(rmap,min=5,/oindex,tickpos=.9) ; overlay on utplot
Method: calls timegrid.pro and tim2dset
CALLS: ***
BOX_MESSGE, UNIQ [1], UNIQ [2], UNIQ [3], anytim [1], anytim [2], anytim [3]
anytim [4], anytim [5], tim2dset [1], tim2dset [2], timegrid
CALLED BY:
TRACE_SSWHERE [1], eit_fulldisk, eit_proton_summary, image2movie, plot_fov [1]
plot_ssw_fov, special_movie, ssw_track_demo, sxt2mpeg, trace_cosmic2hist_accum
trace_last_movie [1], trace_last_movie [3], trace_make_vignette
trace_special_movie [1], trace_special_movie [2], trace_special_movie [3]
trace_special_movie2, trace_sswhere [2], trace_sswhere [3], trace_sswhere [4]
History:
19-may-1995 (SLF) - to allow tasting (sampling) files at low cadence
[Previous]
[Next]
NAME:
grs32_fsp
CALLING SEQUENCE:
grs32_fsp,index,data,fit_pars,sc_par,ch_dta,outfile=outfile,$
pfile=pfile,sdel=sdel,countfile=countfile,fix_pars=fix_pars,$
st_times=st_times,int_times=int_times,tyspec=tyspec,$
bck_time=bck_time,bck_dt=bck_dt,noplot=noplot, $
dt_resolution=dt_resolution,auto_bck=auto_bck, $
auto_tim=auto_tim,nbcks=nbcks,nbsigmas=nbsigmas, $
channel=channel, alt_tsel=alt_tsel, nsigmas=nsigmas, $
erange=erange, sys_err=sys_err, zzb=zzb, two_bck=two_bck, $
auto_peak=auto_peak, grs2=grs2, init_a=init_a
PURPOSE:
Fits spectra for the first 32 channels of GRSL YOU choose the data interval
INPUT:
index= data info. structure from rd_wda
data=data structure from rd_wda
OUTPUT:
fit_pars, a structure of type {fitinfo}, for each interval, with tags:
tyspec= type of spectrum
ma= no. of parameters fit
alabels = labels for the fit parameters
t= the interval START times, in the 7 element array
dt= the interval lengths
a= the fit parameters, a fltarr(6)
NOTE ON UNITS: for Power laws, K is the differential flux
at 1keV, in photons/(sec-cm^2-keV).
Break energies (ebr) are in keV.
For thermal fits, em is the Emission Measure
in cm^(-3) but the output EM is normalized
by 1.0e47. T is in Kelvin, but the output
temperatures are in MK. (T/10^6)
tyspec =1 a(0)=K, a(1)=gamma
=2 a(0)=K1, a(1)=gamma1, a(2)=gamma2, a(3)=ebr
=3 a(0)=em/1.0e47, a(1)=T/1.0e6
=4 a(0)=em/1.0e47, a(1)=T/1.0e6, a(2)=K, a(3)=gamma
=5 a(0)=em1/1.0e47, a(1)=T1/1.0e6, a(2)=em2/1.0e47, a(3)=T2/1.0e6
=6 a(0)=K1, a(1)=gamma1, a(2)=K2, a(3)=gamma2
=7 a(0)=K, a(1)=gamma, a(2)=T/1.0e6, a(3)=Ebr
=8 a(0)=em/1.0e47, a(1)=T/1.0e6,
a(2)=K1, a(3)=gamma1, a(4)=gamma2, a(5)=Ebr
=9 a(0)=K1, a(1)=gamma1, a(2)=gamma2,
a(3)=gamma3, a(4)=eb1 (between gamma1 & gamma2),
a(5)=eb2 (between gamma2 and gamma3)
=10 a(0)=em/1.0e47, a(1)=T/1.0e6
=11 a(0)=em/1.0e47, a(1)=T/1.0e6, a(2)=K, a(3)=gamma
=12, a(0)=K, a(1)=gamma, a(2)=e0
=13, a(0)=K, a(1)=gamma, a(2)=e0
sa= uncertainties in the fit parameters
ffx= 0 if the associated parameter is free, 1 if fixed at a
user defined value, 2 if fixed at the value initially
given by ainit.
chi2= chi^2
nch= the number of channels for each interval
fluxc= flux correction if any
nsig= # of sigmas above background for good channels.
flags= saturated flag, incomplete flag, channel event
was found in, highest channel included in fit,
mro flag.
sc_par, a structure containing data for each sc channel, tags:
e10= channel low energy edges
e20= channel high energy edges
eb0= channel midpt energy
bck= background count rates, for the two bck intervals, fltarr(2)
sbck= Uncertainty in bck
tb= the background START time for two background intervals, an array of(7, 2)
dtb= the bck time interval, fltarr(2)
ch_dta, a structure containing data for each channel for each interval
y0= incident count rates
sy0= Uncertainty in y0
chok=channel flag, 0 for channels used in fit ,
1 for channel not used
b0 = background count rate
sb0 = uncertainty in b0
f0 = photon flux in the channel, for most cases f0 is
the flux at the channel energy, for thermal + line fits
f0 is the average photon flux in that channel.
Note that f0 = model flux * ((y0-b0)/c0)
sf0 = uncertainty in f0.
c0 = Model Excess count rates
KEYWORD INPUT:
outfile= the output file, a keyword
pfile= a file for spectral plots
sdel= array of channels to delete
countfile= a file name for the accumulated counts which can
be used as input to fsp_proc.pro, no fit is done
if you set this keyword.
fix_pars= if set, you choose parameters to be fixed
st_times= an array of accumulation start times, in any yohkoh format
int_times= interval times corresponding to st_times, may be a scalar,
if this is not set, and st_times is set, the routine will
use the differences between st_times. Must be an integer
number of seconds, if the value of int_times is less than
a minor frame value, e.g., when not in flare mode,
we'll try to adjust.
tyspec=the spectral type, if not set, the program prompts you
= 1 for single p.l.
= 2 for double p.l.
= 3 for single thermal
= 4 for p.l. + thermal
= 5 for thermal + thermal
= 6 for p.l. + p.l.
= 7 thermal below Ebr, p.l. above Ebr
= 8 for thermal plus double p.l.
= 9 for triple p.l.
= 10 thermal including line emission
= 11 for p.l. + thermal, includes SXR lines
nsigmas= the number of sigmas above background for a "good" channel,
=3.0 as a default
bck_time= a background time, in any yohkoh format
bck_dt= the background accumulation time, bck_time must be set,
If bck_dt is not set dtb=120.0 seconds is used.
noplot= if set, don't put up a screen plot
dt_resolution= The number of datasets per fit interval,
In flare mode, it's the number of 4 second intervals
In QT mode, it's the number of 32 second intervals.
If set to -1, use the whole interval.
;;;;;;;;;;;;;;;;;;;;;;This will only operate if the time is selected by
;;;;;;;;;;;;;;;;;;;;;;the user, or the st_times keyword has only one element.
auto_bck= if set, the background interval is obtained automatically
auto_tim= if set, the flare interval is obtained automatically
FOR AUTOMATIC TIME SELECTION:
nbcks = if set, the number of background levels above the
background that the data within trange must be,
i.e., data - bck > nbcks*bck, the default is 1.0,
if not set. If both nbcks and nbsigmas are set,
nbcks gets used.
nbsigmas = if set, the number of sigmas above the background
that the data within trange must be, no default,
i.e., data - bck > nbsigmas*sigma(bck). Note here that
we assume that the background is Poisson distributed,
even if that is not true.
channel=channel to use for choice of background and interval
The default is to sum the counts over all channels.
alt_tsel = uses ALT_TIM_SEL to obtain interval, rather than PLOT_LCUR
Useful if you don't have x-windows.
erange= an energy range to be used for the spectral fit, channels with
middle energies between the two limits are included. Channels
specified using sdel are still deleted, but the user is not
prompted for channels to delete if erange is supplied.
sys_err= a 'systematic error', pass in if you don't trust the
errors you get from counting stats, or to arbitrarily
push down chi^2 values, or in cases where different
instruments cause counts mismatches. The default iz 0.0
This makes the error in the rate = sqrt(cps/dt)+sys_err*cps.
zzb = Don't use this... zero background
two_bck= choose two background intervals, the default is to choose one
auto_peak= if set, find the peak interval for the
appropriate channel and fit it, if set to -1 this will
prompt you for an ok for the spot. if not, no prompt...
grs2 if set, use GRS2 instead of GRS1, which is the default
init_a= initial values for the fit parameters, can be an array
of (number of fit parameters, ntimes)
CALLS: ***
OUTPLOT [1], OUTPLOT [2], OUTPLOT [3], UTPLOT [1], UTPLOT [2], UTPLOT [3]
UTPLOT [4], UTPLOT [5], UTPLOT [6], accum_counts [1], accum_counts [2]
accum_counts [3], any_fsp, anyrts, anytim2ex [1], anytim2ex [2], anytim2ints [1]
anytim2ints [2], auto_bck_find, choose_interval, dprate2sec [1], dprate2sec [2]
fmt_tim [1], fmt_tim [2], grsl1_dead [1], grsl1_dead [2], grsl2_dead
mk_timarr [1], mk_timarr [2], yesnox [1], yesnox [2]
HISTORY:
Written Summer '92 by JMcT
Changed to strucutres Dec '92 (JM)
Added 1 sec time resolution, and changed to use
any_fsp.pro Sep-93 (JM)
Added countfile option, to replace hxsrts.pro 21-oct-93 (JMM)
adapted to use non-flare mode data 28-oct-93 (JMM)
Added fixed parameters option, 5-JAN-94 (JMM)
Added st_times, int_times bck_time, bck_dt keywords, 9-Mar-94 (JMM)
Changed to used of sel_timrange for those keywords, 24-mar-94 (JMM)
Added the dt_resolution, auto, and channel keywords, 29-jul-94, jmm
Stripped out accumulation stuff, replaced it with calls to ACCUM_COUNTS,
and CHOOSE_INTERVAL, 30-mar-95, jmm
added erange keyword, 5-apr-95, jmm
added sys_err keyword, 24-jun-95, jmm
Different output structures, two background, intervals, 26-jul-95, jmm
Rewrote HXS_FSP into GRSL_FSP to GRS32_FSP, it's easier to deal with all of
the changes, 28-jul-95, jmm, this happens every month...
Added init_a 23-oct-95, jmm
[Previous]
[Next]
NAME:
grs_lsm
PURPOSE:
Least Square Method model fitting subroutine
for GRS-PHL1 & GRS-PHL2
CALLING SEQUENCE:
grs_lsm,log_phl_eff,log_energycl,fit_stch,fit_endch,
flag_ch,index1_lsm,index2_lsm
INPUTS:
(It will be written by Sato-san near future.)
CALLED BY:
ph_pow_grs1, ph_pow_grs2
HISTORY:
29-Jun-92 (J.Sato) First written.
28-Jun-93 (J.S) Revised.
10-Jul-93 (K.Suga) Added Header only.
[Previous]
[Next]
NAME:
grs_plot
PURPOSE:
To analyze wbs/grs and rbm in the yohkoh reformat data.
CALLING SEQUENCE:
grs_plot,data,index
( after the run of yodat and extracting 'data' and 'index' )
INPUTS:
data = wbs data structure from reformat data.
index = wbs index structure from reformat data.
OPTIONAL INPUT KEYWORDS:
pname = string containing the name of printer.
if not present, the printer name is 'lp'.
VARIABLES:
dp_mode = string array <- DP Mode
bitrate = string array <- DP Rate
date = string array <- Date
doy = integer array <- Total Dates from 0-JAN-79
utime = string array <- Universal Time : The Start Time of one Data
utime2 = string array <- Universal Time : The End Time of one Data
utime_sec = long integer array <- Total Seconds from 00:00:00
tsec = long integer array <- Total Seconds from First Data Time
isec = integer array <- Integrated Time of one Data
CALLS: ***
HXT_DECOMP, Int2Ex [1], Int2Ex [2], UNSIGN, gt_day [1], gt_day [2], gt_dp_mode [1]
gt_dp_mode [2], gt_dp_rate [1], gt_dp_rate [2], gt_time [1], gt_time [2]
int2secarr [1], int2secarr [2], pc_tplot_grs, pc_tplot_rbm, ph_eff_grs1
ph_eff_grs2, wmenu_sel [1], wmenu_sel [2]
HISTORY:
Written 20-jun-93 by T.Hiraoka
Updated 10-jul-93 by T.Hiraoka
[Previous]
[Next]
NAME:
grs_pow_fit
PURPOSE:
Single power law fitting procedure for GRS-PHL1 & GRS-PHL2
CALLING SEQUENCE:
grs_pow_fit,gr_phl_obs,obs_err,gr_r_energyll,gr_r_energycl,
gr_r_energyhl,gr_r_energywl,gr_resp,fit_stch,fit_endch,
flag_ch,base_energy,index1_lsm,base_flux_lsm,index,base_flux,
min_red_kai
INPUTS:
(It will be written by Sato-san near future.)
CALLED BY:
ph_pow_grs1, ph_pow_grs2
HISTORY:
10-Jul-93 (K.Suga) First published instead of J.Sato .
[Previous]
[Next]
NAME:
GRS_SPEFF
PURPOSE:
To plot WBS grs_phl spectrum data.
CALLING SEQUENCE:
grs_speff,index,data,ph=1,fltime=fltime,bgtime=bgtime
grs_speff,index,data,ph=2,/disp
INPUT:
index - Wbs index structure from reformat data.
data - Wbs data structure from reformat data.
ph - Detector number of wbs grs_phl
fltime - Flare time. for example, fltime = ['22:37 11-NOV-91',
'22:38:32.114 11-NOV-91']
bgtime - Background time.
disp - If set, you can select the data on display by mouse.
OPTIONAL INPUT:
int - Integration time of flare data. For example, int = 4 then
integration time is 4 secounds. If present, fltime is divided
by int.
notitle - If set, no title is plotted.
( title, xtitle, ytitle, etc.. )
noerr - If set, error bars are not plotted.
yrange - If present, the data points below (above) yrange(0)
(yrange(1)) are plotted at the yrange(0) (yrange(1)).
PROCEDURE:
In this plot the flux of each channel is calculated by dividing
counts by full energy peak efficiency. We do not plot the first
three channels of grs_phl1 and the first four channels of grs_phl2
because their channel widths are not exactly determined.
Flare time and background time are the observation time.
These are after time subtracting prestored time from header time.
Data plotted are deadtime-corrected.
CALLS: ***
ERRPLOT [1], ERRPLOT [2], FCHECK, GET_KBRD2, OUT_GRSPHL1, OUT_GRSPHL2, header_scan
wmenu_sel [1], wmenu_sel [2]
RESTRICTIONS:
Flare data (fltime & bktime) are restricted to high and medium
bit rate data.
HISTORY:
Written 27-dec-93 by T.Hiraoka ( Rikkyo Univ.)
[Previous]
[Next]
NAME:
grsl1_dead
CALLING SEQUENCE:
zz=grsl1_dead(index,data)
PURPOSE:
Decompresses GRS-L data, and calculates
dead time correction for the appropriate interval
INPUT:
index= data info.
data= grs data structure
OUTPUT:
zz=decompressed and dead time corrected GRS counts
HISTORY
4-feb-94, fro dtcf_ph_grsl1.pro JMM
CALLED BY
grs32_fsp, grsl_fsp, hxsgrs_fsp
[Previous]
[Next]
NAME:
grsl1_dead
CALLING SEQUENCE:
zz=grsl1_dead(index,data)
PURPOSE:
Decompresses GRS-L data, and calculates
dead time correction for the appropriate interval
INPUT:
index= data info.
data= grs data structure
OUTPUT:
zz=decompressed and dead time corrected GRS counts
HISTORY
4-feb-94, fro dtcf_ph_grsl1.pro JMM
CALLS:
CALLED BY
grs32_fsp, grsl_fsp, hxsgrs_fsp
[Previous]
[Next]
NAME:
grsl2_dead
CALLING SEQUENCE:
zz=grsl2_dead(index,data)
PURPOSE:
Decompresses GRS-L data, and calculates
dead time correction for the appropriate interval
INPUT:
index= data info.
data= grs data structure
OUTPUT:
zz=decompressed and dead time corrected GRS counts
HISTORY
4-feb-94, fro dtcf_ph_grs2l.pro JMM
CALLS:
CALLED BY
grs32_fsp, grsl_fsp, hxsgrs_fsp
[Previous]
[Next]
NAME:
grsl_fsp
CALLING SEQUENCE:
grsl_fsp,index,data,fit_pars,sc_par,ch_dta,outfile=outfile,$
pfile=pfile,sdel=sdel,countfile=countfile,fix_pars=fix_pars,$
st_times=st_times,int_times=int_times,tyspec=tyspec,$
bck_time=bck_time,bck_dt=bck_dt,noplot=noplot, $
dt_resolution=dt_resolution,auto_bck=auto_bck, $
auto_tim=auto_tim,nbcks=nbcks,nbsigmas=nbsigmas, $
channel=channel, alt_tsel=alt_tsel, nsigmas=nsigmas, $
erange=erange, sys_err=sys_err, zzb=zzb, two_bck=two_bck, $
auto_peak=auto_peak, grs2=grs2, init_a=init_a
PURPOSE:
Fits spectra for the GRSL YOU choose the data interval
INPUT:
index= data info. structure from rd_wda
data=data structure from rd_wda
OUTPUT:
fit_pars, a structure of type {fitinfo}, for each interval, with tags:
tyspec= type of spectrum
ma= no. of parameters fit
alabels = labels for the fit parameters
t= the interval START times, in the 7 element array
dt= the interval lengths
a= the fit parameters, a fltarr(6)
NOTE ON UNITS: for Power laws, K is the differential flux
at 1keV, in photons/(sec-cm^2-keV).
Break energies (ebr) are in keV.
For thermal fits, em is the Emission Measure
in cm^(-3) but the output EM is normalized
by 1.0e47. T is in Kelvin, but the output
temperatures are in MK. (T/10^6)
tyspec =1 a(0)=K, a(1)=gamma
=2 a(0)=K1, a(1)=gamma1, a(2)=gamma2, a(3)=ebr
=3 a(0)=em/1.0e47, a(1)=T/1.0e6
=4 a(0)=em/1.0e47, a(1)=T/1.0e6, a(2)=K, a(3)=gamma
=5 a(0)=em1/1.0e47, a(1)=T1/1.0e6, a(2)=em2/1.0e47, a(3)=T2/1.0e6
=6 a(0)=K1, a(1)=gamma1, a(2)=K2, a(3)=gamma2
=7 a(0)=K, a(1)=gamma, a(2)=T/1.0e6, a(3)=Ebr
=8 a(0)=em/1.0e47, a(1)=T/1.0e6,
a(2)=K1, a(3)=gamma1, a(4)=gamma2, a(5)=Ebr
=9 a(0)=K1, a(1)=gamma1, a(2)=gamma2,
a(3)=gamma3, a(4)=eb1 (between gamma1 & gamma2),
a(5)=eb2 (between gamma2 and gamma3)
=10 a(0)=em/1.0e47, a(1)=T/1.0e6
=11 a(0)=em/1.0e47, a(1)=T/1.0e6, a(2)=K, a(3)=gamma
=12, a(0)=K, a(1)=gamma, a(2)=e0
=13, a(0)=K, a(1)=gamma, a(2)=e0
sa= uncertainties in the fit parameters
ffx= 0 if the associated parameter is free, 1 if fixed at a
user defined value, 2 if fixed at the value initially
given by ainit.
chi2= chi^2
nch= the number of channels for each interval
fluxc= flux correction if any
nsig= # of sigmas above background for good channels.
flags= saturated flag, incomplete flag, channel event
was found in, highest channel included in fit,
mro flag.
sc_par, a structure containing data for each sc channel, tags:
e10= channel low energy edges
e20= channel high energy edges
eb0= channel midpt energy
bck= background count rates, for the two bck intervals, fltarr(2)
sbck= Uncertainty in bck
tb= the background START time for two background intervals, an array of(7, 2)
dtb= the bck time interval, fltarr(2)
ch_dta, a structure containing data for each channel for each interval
y0= incident count rates
sy0= Uncertainty in y0
chok=channel flag, 0 for channels used in fit ,
1 for channel not used
b0 = background count rate
sb0 = uncertainty in b0
f0 = photon flux in the channel, for most cases f0 is
the flux at the channel energy, for thermal + line fits
f0 is the average photon flux in that channel.
Note that f0 = model flux * ((y0-b0)/c0)
sf0 = uncertainty in f0.
c0 = Model Excess count rates
KEYWORD INPUT:
outfile= the output file, a keyword
pfile= a file for spectral plots
sdel= array of channels to delete
countfile= a file name for the accumulated counts which can
be used as input to fsp_proc.pro, no fit is done
if you set this keyword.
fix_pars= if set, you choose parameters to be fixed
st_times= an array of accumulation start times, in any yohkoh format
int_times= interval times corresponding to st_times, may be a scalar,
if this is not set, and st_times is set, the routine will
use the differences between st_times. Must be an integer
number of seconds, if the value of int_times is less than
a minor frame value, e.g., when not in flare mode,
we'll try to adjust.
tyspec=the spectral type, if not set, the program prompts you
= 1 for single p.l.
= 2 for double p.l.
= 3 for single thermal
= 4 for p.l. + thermal
= 5 for thermal + thermal
= 6 for p.l. + p.l.
= 7 thermal below Ebr, p.l. above Ebr
= 8 for thermal plus double p.l.
= 9 for triple p.l.
= 10 thermal including line emission
= 11 for p.l. + thermal, includes SXR lines
nsigmas= the number of sigmas above background for a "good" channel,
=3.0 as a default
bck_time= a background time, in any yohkoh format
bck_dt= the background accumulation time, bck_time must be set,
If bck_dt is not set dtb=120.0 seconds is used.
noplot= if set, don't put up a screen plot
dt_resolution= The number of datasets per fit interval,
In flare mode, it's the number of 4 second intervals
In QT mode, it's the number of 32 second intervals.
If set to -1, use the whole interval.
;;;;;;;;;;;;;;;;;;;;;;This will only operate if the time is selected by
;;;;;;;;;;;;;;;;;;;;;;the user, or the st_times keyword has only one element.
auto_bck= if set, the background interval is obtained automatically
auto_tim= if set, the flare interval is obtained automatically
FOR AUTOMATIC TIME SELECTION:
nbcks = if set, the number of background levels above the
background that the data within trange must be,
i.e., data - bck > nbcks*bck, the default is 1.0,
if not set. If both nbcks and nbsigmas are set,
nbcks gets used.
nbsigmas = if set, the number of sigmas above the background
that the data within trange must be, no default,
i.e., data - bck > nbsigmas*sigma(bck). Note here that
we assume that the background is Poisson distributed,
even if that is not true.
channel=channel to use for choice of background and interval
The default is to sum the counts over all channels.
alt_tsel = uses ALT_TIM_SEL to obtain interval, rather than PLOT_LCUR
Useful if you don't have x-windows.
erange= an energy range to be used for the spectral fit, channels with
middle energies between the two limits are included. Channels
specified using sdel are still deleted, but the user is not
prompted for channels to delete if erange is supplied.
sys_err= a 'systematic error', pass in if you don't trust the
errors you get from counting stats, or to arbitrarily
push down chi^2 values, or in cases where different
instruments cause counts mismatches. The default iz 0.0
This makes the error in the rate = sqrt(cps/dt)+sys_err*cps.
zzb = Don't use this... zero background
two_bck= choose two background intervals, the default is to choose one
auto_peak= if set, find the peak interval for the
appropriate channel and fit it, if set to -1 this will
prompt you for an ok for the spot. if not, no prompt...
grs2 if set, use GRS2 instead of GRS1, which is the default
init_a= initial values for the fit parameters, can be an array
of (number of fit parameters, ntimes)
CALLS: ***
OUTPLOT [1], OUTPLOT [2], OUTPLOT [3], UTPLOT [1], UTPLOT [2], UTPLOT [3]
UTPLOT [4], UTPLOT [5], UTPLOT [6], accum_counts [1], accum_counts [2]
accum_counts [3], any_fsp, anyrts, anytim2ex [1], anytim2ex [2], anytim2ints [1]
anytim2ints [2], auto_bck_find, choose_interval, dprate2sec [1], dprate2sec [2]
fmt_tim [1], fmt_tim [2], grsl1_dead [1], grsl1_dead [2], grsl2_dead
mk_timarr [1], mk_timarr [2], yesnox [1], yesnox [2]
HISTORY:
Written Summer '92 by JMcT
Changed to strucutres Dec '92 (JM)
Added 1 sec time resolution, and changed to use
any_fsp.pro Sep-93 (JM)
Added countfile option, to replace hxsrts.pro 21-oct-93 (JMM)
adapted to use non-flare mode data 28-oct-93 (JMM)
Added fixed parameters option, 5-JAN-94 (JMM)
Added st_times, int_times bck_time, bck_dt keywords, 9-Mar-94 (JMM)
Changed to used of sel_timrange for those keywords, 24-mar-94 (JMM)
Added the dt_resolution, auto, and channel keywords, 29-jul-94, jmm
Stripped out accumulation stuff, replaced it with calls to ACCUM_COUNTS,
and CHOOSE_INTERVAL, 30-mar-95, jmm
added erange keyword, 5-apr-95, jmm
added sys_err keyword, 24-jun-95, jmm
Different output structures, two background, intervals, 26-jul-95, jmm
Rewrote HXS_FSP into GRSL_FSP, it's easier to deal with all of
the changes, 28-jul-95, jmm, this happens every month...
Added init_a, 23-oct-95, jmm
[Previous]
[Next]
Procedure to plot FeXXVI on a wavelength scale. Spectrum used is the mean
spectrum produced by GS_SP and that is smoothed before plotting.
If on graphics device, then user locates line peak labelling - if hard copy
then previous positions are used.
Use:
IDL> .run gs_fe26
CDP Feb 92
[Previous]
[Next]
Procedure to plot the mean spectrum within the window defined by GS_CUR
on a grey scale image displayed by GS. The display part is a rip-off
from JM's VG procedure.
By-product: GSP(767) the mean spectral array (c/s).
Use:
IDL> .run gs to display data
IDL> .run gs_cur to select time window
IDL> .run gs_sp to plot mean spectrum in that window
Control variables:
The action of gs_sp can be changed by 2 control variables.
GS_SP_SM(4) allows the mean spectrum in each channel to be
smoothed independently ie setting
gs_sp_sm=[5,0,0,0] will smooth channel 1 (only) by
a 5 bin average.
GS_SP_OLD allows the use of the mean spectrum retrieved from
a disk file (as opposed to creating it from the
2-d GSP array created by GS). Thus
gs_sp_old = 1 will by pass the creation of the mean
spectrum and assume it already exists. Set the
variable to zero to switch off this.
CDP Nov 91
revised plot format Jan '92
added ability to smooth via variable GS_SP_SM(4) Feb '92
added ability to use old GSP array (without having GSA array)
by switching variable GS_SP_OLD = 0/1 Feb '92
add variable number of bins per spectrum Mar '92
major rewrite to follow updating of GS etc Mar '92
add possible FeXXVI line markings Jun '92
(variable gs_sp_mark)
Adjust search for FeXXV w line Oct '92
[Previous]
[Next]
Constructs a four-panel viewgraph (light curves + 3 spectral windows)
from data window set up using GS routines.
Only slight interface change from original JM routine VG.
A similar result showing all 4 channels of data can be produced by
GS_SP.
Use:
IDL> .run gs display data
IDL> .run gs_cur select time window
IDL> .run gs_vg
CDP Nov 91
Mar 92 Put in variable bins/channel
Mar 92 revamp after changes in GS etc
[Previous]
[Next]
NAME:
GS_ZAP
PURPOSE:
To interpolate across duff spectra
CALLING SEQUENCE:
.run BCS_ZAP
INPUT:
None
OUTPUT:
None
HISTORY
CDP August 1992 Written
[Previous]
[Next]
NAME:
GSFC_STYLe
PURPOSE:
Give a plot the "GSFC look"
CATEGORY:
CALLING SEQUENCE:
gsfc_style
INPUTS:
none
OUTPUTS:
none
WARNINGS:
may mess up your plot parameters?
MODIFICATION HISTORY:
Written by R. Schwartz, H. Hudson, B. Anwar 29-mar-93
[Previous]
[Next]
Name: gt2exe
Purpose: convert gt function shorthand to valid calls (for use w/execute)
Input Parameters:
input - string of form "<item> <relation> <value>"
<item> = {filta, filtb, expmode, dpe, percentd, etc}
<relation> = { =,>,<,>=,<=,<>}
<value> = value, list (ex: 1,2,5) or range (ex: 4-10)
CALLS: ***
ARR2STR [1], Arr2Str [2], BOX_MESSAGE, STR2ARR [1], STR2ARR [2], data_chk [1]
data_chk [2], is_member [1], is_member [2], is_number [1], is_number [2]
str_replace [1], str_replace [2], strextract, strmids [1], strmids [2]
CALLED BY:
TRACE_SSWHERE [1], mk_sfc [1], mk_sfc [2], mk_spd, plot_fov [1], struct_where
sxt_where, trace_sswhere [2], trace_sswhere [3], trace_sswhere [4], trace_where
Examples:
IDL> print,gt2exe('dpe=[12-20]',/addind)
IDL> gt_dpe(index(ss)) ge 12 AND gt_dpe(index(ss)) le 20
IDL> print,gt2exe('filta=[2,5]', /addind)
IDL> gt_filta(index(ss)) eq 2 OR gt_filta(index(ss)) eq 5
History:
Circa jan-93 (SLF) - for spd files
22-mar-1995 (SLF) - add range and list (expanded for obs searches)
[Previous]
[Next]
NAME:
gt_adoor
PURPOSE:
To extract the bits corresponding to aspect door position and optionally
return a string mnemonic.
CALLING SEQUENCE:
print, gt_adoor() ;to list the nemonics
x = gt_adoor(index)
x = gt_adoor(roadmap)
x = gt_adoor(index.sxt, /string)
x = gt_adoor(indgen(4)+1) ;used with menu selection
x = gt_adoor(index, /space) ;put single space before string
x = gt_adoor(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
exposure mode names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The aspect door position (0=closed, 1=open), a integer
value or a string value depending on the switches used.
It is a vector if the input is a vector.
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
mk_sfw, mk_sot
HISTORY:
Written 11-Nov-92 by M.Morrison
[Previous]
[Next]
NAME:
GT_BDA_BLOCK
PURPOSE:
extract indicies for requested BDA blockid
CALLING SEQUENCE:
ss=gt_bda_block(bda_index,blockid)
INPUTS:
bda_index = bda_index structure
modeid = block id to select
OUTPUTS:
ss = indicies of selected blocks
HISTORY:
1-April-95, Zarro (ARC)
[Previous]
[Next]
NAME:
GT_BDA_MODE
PURPOSE:
extract indicies for requested BDA mode or block id
CALLING SEQUENCE:
ss=gt_bda_mode(bda_index,modeid)
INPUTS:
bda_index = bda_index structure
modeid = mode id to select
KEYWORDS:
block = set to extract BLOCK ID instead of MODE ID
ignore = mode id to ignore
OUTPUTS:
ss = indicies of selected modes/blocks
CALLS: ***
COMDIM2, DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
MK_BSC [1], MK_BSC [2]
HISTORY:
1-April-95, Zarro (ARC)
29-June-95, Zarro (ARC) -- generalized to handle BLOCK ID's and
added IGNORE keyword.
[Previous]
[Next]
NAME:
GT_BDA_MODE
PURPOSE:
extract indicies for requested BDA mode or block id
CALLING SEQUENCE:
ss=gt_bda_mode(bda_index,modeid)
INPUTS:
bda_index = bda_index structure
modeid = mode id to select
KEYWORDS:
block = set to extract BLOCK ID instead of MODE ID
ignore = mode id to ignore
OUTPUTS:
ss = indicies of selected modes/blocks
CALLS: ***
COMDIM2, DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
MK_BSC [1], MK_BSC [2]
HISTORY:
1-April-95, Zarro (ARC)
29-June-95, Zarro (ARC) -- generalized to handle BLOCK ID's and
added IGNORE keyword.
[Previous]
[Next]
NAME:
gt_blockid
PURPOSE:
To extract the word corresponding to the BCS blockid.
CALLING SEQUENCE:
x = gt_blockid(roadmap)
x = gt_blockid(index)
INPUTS:
item - A structure or scaler. It can be an array
OUTPUTS:
returns - The blockid for each entry in the item
It is a vector if the input was a vector
CALLED BY:
LCBDA, LIST_BDA, lcobs
RESTRICTIONS:
PROCEDURE:
Examines the tag names to determine which structure has been
supplied and extracts the blockid accordingly.
MODIFICATION HISTORY:
RDB 18-Jul-92 Written
[Previous]
[Next]
NAME:
GT_BSC_BINCAL
PURPOSE:
to get BCS crystal bin calibration data from CALFILEs
(wavelength dispersion, sensitivity, etc)
CALLING SEQUENCE:
BINCAL=GT_BSC_BINCAL(CHAN_STRUCT,MODEID)
INPUTS:
CHAN_STRUCT - BCS channels (as vector or in index)
OPTIONAL INPUT
MODEID - Mode ID for channel grouping plan
OUTPUTS:
BINCAL - structure with fields:
.CHAN - channel #
.NBINS - number of bins per channel
.WAVE - wavelength array (start edges)
.PHYSPOS - physical positions of right hand edges
of grouped bins
.MODEID - modeid
.SENSIT - mean sensitivity of grouped bins
.W0 - start wavelength of detector
.DW - dispersion (A/bin)
.BINARC - angle to bin conversion (bin/arcmin)
.ROCKW - rocking width (A)
.GAUSSW - guassian detector width (A)
.EFAREA - effective area (cm^2)
.NSTART - first valid bin
.NEND - last valid bin
.VERSION - version number of CAL file used
OPTIONAL KEYWORDS:
NOVALID - do not extract valid channels
SMM - if set, extract SMM BCS calibration info
CALLS: ***
BCS_GRP_PLAN, BSC_CHECK [1], BSC_CHECK [2], GT_BSC_CHAN [1], GT_BSC_CHAN [2]
RD_BCSCAL [1], RD_BCSCAL [2]
CALLED BY:
BSC_ERRCAL [1], BSC_ERRCAL [2], BSC_FLUXCAL, BSC_VALID, BSC_WAVECAL, BSC_XCORR
CV_BSC2BSD, GET_BSC, GT_BSC_WAVE [1], GT_BSC_WAVE [2], WBDA [1], WBDA [2]
WBSC_SPC_EV [1], WBSC_SPC_EV [2], bcs_broad [1], bcs_broad [2], bsc_bin2w
bsc_bincor
PROCEDURE:
Reads crystal curvature sensitivity and wavelength info.
Applies grouping plan to ungrouped CALFIL measurements
Group sensitivities by weighting them wrt to physical separation
of bins, e.g. (for double binning):
Sgroup = (S1+S2)/(B1+B2) where S1, S2 are individual sensitivities
which are equivalent to the counts produced by a flatfield normalized
to an average unit bin, and B1,B2 are the physical bin widths.
HISTORY:
Written Nov. 1992 by D. Zarro (Applied Research Corp).
Modified Aug'93 (D. Zarro) -- speeded up using common block
Modified Sep'93 (D. Zarro) -- to extract valid wavelengths
Modified May'94 (DMZ) -- fixed potential bug in NSTART, NEND usage
-- added FORCE keyword to force re-read of CAL files
[Previous]
[Next]
NAME:
GT_BSC_CHAN
PURPOSE:
extract channel nos and/or channel IDs BSC index
CALLING SEQUENCE:
chans=gt_bsc_chan(bsc_index,string=string)
INPUTS:
bsc_index = bsc_index structure or array of indicies
OUTPUTS:
chans = array of channel nos (or ion names) in index
KEYWORDS
string = if set, then return channels as ion names
uniq = if set, only return unique channel values
smm = if set, return SMM BCS channel values
CALLS: ***
BSC_CHECK [1], BSC_CHECK [2], DATATYPE [1], DATATYPE [2], DATATYPE [3], UNIQ [1]
UNIQ [2], UNIQ [3]
CALLED BY:
BCS, BSC_CHAN, BSC_ERRCAL [1], BSC_ERRCAL [2], BSC_FLUXCAL, BSC_RASTER, BSC_VALID
BSC_WAVECAL, BSC_XCORR, GT_BSC_BINCAL [1], GT_BSC_BINCAL [2], GT_BSC_CRATE
GT_BSC_TIME, GT_BSC_WAVE [1], GT_BSC_WAVE [2], PLOT_BSC [1], PLOT_BSC [2], SEL_BSC
WBSC [1], WBSC [2], WBSC_LTC_EV [1], WBSC_LTC_EV [2], bcs_broad [1], bcs_broad [2]
bcs_line, bcs_spec, bcs_velres, bsc_vturb, cal_bsc, first_bcs, fit_bsc, fit_bsc_as
fit_bsc_plot, get_atomic [1], get_atomic [2], get_bcscal, get_bsc_anno
HISTORY:
11-Sep-93, D. Zarro (ARC), Written
3-Feb-94, Zarro, added SMM capability
15-Mar-94, Zarro, added /CONT to message for invalid channels
1-Sep-94, Zarro, fixed potential bug with UNIQ
[Previous]
[Next]
NAME:
GT_BSC_CRATE
PURPOSE:
extract count rate of particular channel from BSC arrays
CALLING SEQUENCE:
CRATE=GT_BSC_CRATE(BSC_INDEX,CHAN)
INPUTS:
BSC_INDEX - BSC index structures
CHAN - BCS channel (scalar only)
RETURNED OUTPUTS:
CRATE - counts per second for channel
OPTIONAL KEYWORD OUTPUTS:
INTERVAL - time interval of accumulation
SDGI - actual accumulation time
SS - indicies of returned data
CALLS: ***
BSC_CHECK [1], BSC_CHECK [2], GT_BSC_CHAN [1], GT_BSC_CHAN [2]
CALLED BY:
CV_BSC2BSD, GET_BSC, PLOT_BSC [1], PLOT_BSC [2], WBSC [1], WBSC [2], fit_bsc
fit_bsc_as, map_bsc
PROCEDURE:
Simple use of WHERE
HISTORY:
Written Sep'93 by D. Zarro (ARC)
[Previous]
[Next]
NAME:
GT_BSC_FLUX
PURPOSE:
return flux arrays for BSC spectra
CALLING SEQUENCE:
FLUX=GT_BSC_FLUX(BSC_INDEX,BSC_DATA,EFLUX)
INPUTS:
BSC_INDEX - BSC index structure (maybe also output)
BSC_DATA - BSC data structure (maybe also output)
RETURNED:
FLUX - flux array (photons cm-2 s-1 A-1)
OPTIONAL OUTPUT:
EFLUX - uncertainty in flux [output]
Warning: If the flux field is not present in BSC_DATA, it will
be added to BSC_DATA. (BSC_INDEX also updated).
Warning: If the error field is not present in BSC_DATA, it will
be added to BSC_DATA if EFLUX is requested.
CALLS: ***
BSC_CHECK [1], BSC_CHECK [2], BSC_ERRCAL [1], BSC_ERRCAL [2], BSC_FLUXCAL, chktag
CALLED BY:
GET_BSC, SEL_BSC
HISTORY:
Written Sep'93 by D. Zarro (ARC)
Modified Apr'94 -- added check for COUNTS field (DMZ)
[Previous]
[Next]
NAME:
GT_BSC_TIME
PURPOSE:
compute time (in secs) of BSC accumulation intervals
CALLING SEQUENCE:
times=gt_bsc_time(bsc_index,chan,tstart,tend,mean=mean)
INPUTS:
bsc_index = bsc_index structure
chan = BCS channel
OUTPUTS:
times = start times of spectra (secs since start of day)
tstart,tend = start and end times of spectra (string)
KEYWORDS
day = optionally return day
mean = return mean time (if set)
trange= start and end times (as structure with .TIME and .DAY fields)
interval=time interval of spectra
CALLS: ***
BSC_CHECK [1], BSC_CHECK [2], GT_BSC_CHAN [1], GT_BSC_CHAN [2], anytim2ints [1]
anytim2ints [2], fmt_tim [1], fmt_tim [2], gt_day [1], gt_day [2], gt_time [1]
gt_time [2]
CALLED BY:
GET_BSC, LC_BSC, fit_bsc, fit_bsc_as, map_bsc
PROCEDURE:
mean time = start time + .5 * interval
HISTORY:
Written Apr'93 by D. Zarro (ARC)
Modified Mar'94 by Zarro -- to return time interval of each spectrum
[Previous]
[Next]
NAME:
GT_BSC_WAVE
PURPOSE:
return nominal wavelength arrays for BSC spectra
CALLING SEQUENCE:
WAVE=GT_BSC_WAVE(BSC_INDEX,BSC_DATA)
INPUTS:
BSC_INDEX - BSC index structure or channel array
BSC_DATA - BSC data
KEYWORDS:
SMM - set for SMM-BCS wavelengths
NOZERO - extract nonzero wavelengths
OUTPUTS:
WAVE - wavelength array (A)
CALLS: ***
BSC_CHECK [1], BSC_CHECK [2], DATATYPE [1], DATATYPE [2], DATATYPE [3]
GT_BSC_BINCAL [1], GT_BSC_BINCAL [2], GT_BSC_CHAN [1], GT_BSC_CHAN [2]
bda_wave [1], bda_wave [2]
CALLED BY:
GET_BSC, SEL_BSC, bcs_spec
HISTORY:
Written Aug'93 by D. Zarro (ARC)
Modified Mar'94, D. Zarro, added SMM keyword
Modified Jan'95, D. Zarro, added NOZERO keyword
[Previous]
[Next]
NAME:
gt_center
PURPOSE:
Return the center of an SXT Field of View (Observing region,
not PFI strip) in either
(1) Absolute IDL FR IDL pixel coordinates (DEFAULT)
(2) heliocentric coordinates
(3) angle relative to sun center in units of arcsec
(4) HXT coordinates
For (2) and (3) above, SXT_CEN is called to determine the
absolute SXT coordinates of the sun center for the times
in question.
SAMPLE CALLING SEQUENCE:
pix = gt_center(index)
helio = gt_center(index, /helio)
helio = gt_center(index, /helio, /cmd)
ang = gt_center(roadmap)
ang = gt_center(roadmap, /pfi_strip)
INPUT:
item - The SXT index or roadmap
OUTPUT:
pix - absolute IDL FR pixel coordinates (CCD pixel coordinate)
(0,*) = E/W direction (larger pixel address to W)
(1,*) = N/S direction (larger pixel address to N)
This value is independent of the position on the sun or
the S/C pointing.
CALLS: ***
CONV_P2HXT [1], CONV_P2HXT [2], HIS_EXIST, conv_p2a [1], conv_p2a [2]
conv_p2h [1], conv_p2h [2], gt_corner, gt_or_expnum, gt_res, gt_shape, gt_sxt_cen
CALLED BY:
ALIGN1BIGGRAM, GET_POINT_STR, HXT_AUTOIMG, LAY1GKM, MK_SXT_MAP, PREFLARE_SEARCH
SHIFT_HXT2P, SXT_EXPOSURE_MAP, SXT_IMAGE_DECONVOLVE, SXT_OBSRPT, SXT_QLOOK
align_hxi, align_prep [1], align_prep [2], align_prep [3], fl_summary [1]
fl_summary [2], fl_summary [3], get_hxt_pos, get_info [3], gt_fov_center
hxt_images2ps, hxt_pattern_maker, in_fov, mk_coal_movie, obs_summary, pfi_loc
plot_ar_pfi, plot_ssw_fov, pr_sxt_term, rest_low8_cube [1], rest_low8_cube [2]
sxt_plot_fov, sxt_psd, sxt_psf, sxt_sharpen, sxt_uniq [1], sxtpnt_sum, xspr [1]
xspr [2]
OPTIONAL KEYWORD INPUT:
helio - If set, return heliocentric coordinates. Output:
(0,*) = longitude (degrees) W positive
(1,*) = latitude (degrees) N positive
The S/C pointing is needed since these coordinates are
relative to sun center (ATT or commanded pointing database).
angle - If set, return relative to sun center in units of arcsec
(0,*) = angle in E/W direction with W positive
(1,*) = angle in N/S direction with N positive
The S/C pointing is needed since these coordinates are
relative to sun center (ATT or commanded pointing database).
hxt - If set, return HXT coordiates
(0,*) = E/W direction with W negative!
NOTE: This is opposite of SXT and HELIO
(1,*) = N/S direction with S negative
The HXT and SXT are rigidly aligned to each other, so
the S/C pointing is not needed for this conversion.
There are orbital and seasonal variations between SXT and
HXA (which is located on the front panel), but those same
variations are seen between HXT and HXA.
pfi_strip - If set, return the center for the PFI strip (not the
assembled observing region)
roll - This is the S/C roll value in degrees. If not passed in,
the ATT database is used to determine the roll.
hxa - If set, use HXA_SUNCENTER to determine the location of the
sun center in pixels. Default is to use GET_SUNCENTER.
cmd - If set, use SXT_CMD_PNT to determine the location of the
sun center in pixels. Default is to use SXT_CEN.
string - If set, convert the output to string format (only relevent
with /HELIO option)
suncenter- The sun center coordinates (in Full Resolution Equivalent
pixels)
use_history - If set, then extract the sun center coordinates from
the history portion of the index if possible. This is not
recommended since the ATT database may have been updated
an improved since the history values were established.
METHOD:
When the S/C pointing information is needed (options /HELIO or
/ANGLE) then the ATT database is checked first. If it is not there,
the ATR or PNT is checked. If it is unavilable, then the commanded
pointing history is used. If lower pointing resolution is acceptable,
it is recommended to use the commanded pointing history by using
the /CMD option.
The CONV_ routines are used for all conversions between coordinate
systems.
HISTORY:
Written Jun-93 by M.Morrison
14-Jul-93 (MDM) - Added /PFI_STRIP option
- Made the default to return the observing region center
not the PFI strip center
27-Jul-93 (MDM) - Updated header
28-Jul-93 (MDM) - Correced to call GT_SHAPE with /OBS_REGION
17-Aug-93 (MDM) - Modified so that the OR offset for OR exposure number
is not performed if the input item is an index with
a history record
16-Oct-93 (MDM) - Removed the tilt keyword input
28-Jul-94 (MDM) - Updated header
14-Nov-94 (MDM) - Put 28-Jul-94 version on-line - it was not online before!?!?!
9-Feb-95 (MDM) - Updated header
10-Mar-95 (MDM) - Added SUNCENTER and USE_HISTORY keyword options
- Added SUNCENTER to CONV_P2H and CONV_P2A calls
[Previous]
[Next]
NAME:
gt_comp
PURPOSE:
To extract the bits corresponding to image compression and optionally
return the string nemonic for that compression
CALLING SEQUENCE:
print, gt_comp() ;print full listing of compressions
comp = gt_comp(index)
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
filter names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string nemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The compression selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
RD_AR, SDC_VERIFY, WL_CUBE_II, get_info [3], mk_mask, mk_sfs, mk_sft [1], mk_sft [2]
mk_sfw, mk_sl [1], mk_sl [2], mk_sot, rest_low8_cube [1], rest_low8_cube [2]
sswhere, sxt_fits_info, sxt_low8_match [1], sxt_low8_match [2], sxt_prep [1]
sxt_prep [2], sxt_prep [3], xsearch_obs
HISTORY:
Written 7-Nov-91 by M.Morrison
13-Nov-91 MDM - Added "header" and "spaces" option
15-Nov-91 MDM - Changed short notation from 1x1, 2x2, 4x4 to
FR, HR, QR
[Previous]
[Next]
NAME:
gt_corner
PURPOSE:
Return the coordinate of the center of the lower left output pixel in
full resolution equivalent (FRE) units. Optionally return in binned
pixels relative to sun center.
CALLING SEQUENCE:
xy = gt_corner(index)
x = gt_corner(index, /x)
xy = gt_corner(index, /from_sc)
METHOD:
The input is always an SXT index.
INPUT:
item - The SXT index. It can be an array.
OPTIONAL INPUT:
x - If set, just return the x (column) corner
y - If set, just return the y (lines) corner
lower_left - If set, return the center of the full resolution pixel which
is in the lower left corner of the output pixel. There is a
0 pixel shift for FR, -0.5 for HR, and -1.5 for QR
original - If set, return the original corner commanded (from index.sxt)
from_sc - If set, then return the pixel address in summed pixels
relative to sun center. This means that for a full frame
HR image with the sun in the center of the image, the value
would be (-256,-256). Sun center is the origin.
OUTPUT:
returns - The corner saved in FR IDL equivalent coordinates.
It is a vector if the input is a vector. The default is
a 2xN array where N is the size of the roadmap or index
array. If you use the /X or /Y options, it is 1xN.
METHOD:
The value saved in INDEX.SXT.CORNER_CMD is misleading. It is the raw
telemetry value * 4. Since there is an unsummed pixel first out of the
CCD, the coordinate system becomes complicated. This routine corrects
the CORNER_CMD value and returns the value in full resolution equivalent
units (FRE).
CALLS: ***
HIS_EXIST, gt_corner_cmd, gt_res, gt_shape, gt_sxt_cen
CALLED BY:
ALIGN1BIGGRAM, IMG_HELADD, LAY1GKM, NORH_NORH2SXT [1], NORH_NORH2SXT [2]
NORH_NORH2SXT [3], NORH_NORH2SXT [4], PLOT_CLON, POLAR_GRID, PP_MWLT2SXT
PP_SXT2ANY, PP_SXT2VLA, RD_XDA [1], RD_XDA [2], SXT_GRID [1], SXT_GRID [2]
SXT_GRID [3], align1img [1], align1img [2], azimuth_avg, change_res, coal_image
coal_rot, dark_sub [1], dark_sub [2], dark_sub [3], ext_subimg2, ext_subimg3
ext_subset [2], fit_limb, gbo_pfi, get_dc_image [2], get_dc_image [3], get_gbo_pfi
get_leak_image [1], get_leak_image [2], get_leak_image [3], get_sdm_val
get_sxt_dejit, gt_center, his_index, hxt_images2ps, leak_sub [1], leak_sub [2]
leak_sub [3], mk_coal_movie, mk_sdmi, mk_strip_file, mod_res, pfi_loc, radial_avg
rest_low8_cube [1], rest_low8_cube [2], sda2fits, sector_avg, sel_dc_image [1]
sel_dc_image [2], sel_dc_image [3], sxt_off_axis, sxt_postprep_cen, sxt_prep [1]
sxt_prep [2], sxt_prep [3], sxt_vignette
HISTORY:
Written 6-Jun-93 by M.Morrison
14-Jun-93 (MDM) - Make it scalar if one element
17-Jun-93 (MDM) - Added /ORIGINAL option
18-Nov-93 (MDM) - Added some comments
5-Jan-94 (MDM) - Added /FROM_SC
[Previous]
[Next]
NAME:
gt_corner_cmd
PURPOSE:
To extract the word corresponding to corner commanded and optionally
return a string variable for that item.
CALLING SEQUENCE:
x = gt_corner_cmd(index)
x = gt_corner_cmd(index.sxt, /space) ;put single space before string
x = gt_corner_cmd(index, space=3) ;put 3 spaces
x = gt_corner_cmd(index, /x) ;just return 1xN array of x corner
METHOD:
The input can be a structure or a scalar. The structure can
only be the index.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
x - If present, just return the x (column) shape
y - If present, just return the y (lines) shape
OUTPUT:
returns - The corner commanded in CCD pixel coordinates, a integer value
or a string value depending on the switches used. It is a
vector if the input is a vector. The default is a 2xN array
where N is the size of the roadmap or index array. If
you use the /X or /Y options, it is 1xN.
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
fovc2corn_cmd, gt_conv2str [1], gt_conv2str [2], gt_pfi_ffi
CALLED BY:
SXT_FOV_CENTER, gt_corner, plot_nar [1], plot_nar [2], sxt_uniq [2]
HISTORY:
Written 23-Nov-91 by M.Morrison
23-Nov-92 (MDM) - Added correction during the extraction of FFI values
23-Jun-93 (MDM) - Added call to FOVC2CORN_CMD so that it can work with
the roadmap
[Previous]
[Next]
NAME:
gt_dp_mode
PURPOSE:
To extract the bits corresponding to DP Mode and optionally
return a string mnemonic.
CALLING SEQUENCE:
print, gt_dp_mode() ;to list the nemonics
x = gt_dp_mode(index)
x = gt_dp_mode(roadmap)
x = gt_dp_mode(index.gen, /string)
x = gt_dp_mode(dp_mode, /short)
x = gt_dp_mode(indgen(6)+1) ;used with menu selection
x = gt_dp_mode(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
filter names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The filter selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2], tag_index [1], tag_index [2]
CALLED BY:
AVE_CTS2 [1], AVE_CTS2 [2], AVE_CTS2 [3], FIND_FAST_DATA, GET_FRAME_TIME
GET_POINTS, GOES_TEK [1], GOES_TEK [2], HXT_AUTOIMG, HXT_DUMP, HXT_FANS, HXT_HI_SUM
HXT_LOW_SUM, HXT_MED1_SUM, HXT_MED2_SUM, HXT_PRESTORE [1], HXT_PRESTORE [2]
HXT_PRESTORE [3], HXT_PRESTORE [4], HXT_PRESTORE [5], HXT_SUMMER, HXT_TIME2FRAME
PREFLARE_SEARCH, QUICK_DPE, READ_HXT_CAL, SXT_HYST, SXT_QLOOK, WBS_DB, WBS_DB2
WBS_TVEC, WL_CUBE_II, fl_goesplot [1], fl_goesplot [2], fl_goesplot [3]
get_info [1], get_info [2], get_info [3], get_info [4], get_utevent [1]
get_utevent [2], grs_plot, hxt_chsums, hxt_mcaccum, hxtimg_accum, mk_evn [1]
mk_evn [2], mk_mask, mk_pnt, mk_ptv_title, mk_ssl, mk_title [2], pfi_dominant
plot_evn, ploty [1], ploty [2], pr_evn [2], pr_sxt_term, rd_sda_flare
read_yohkoh_4_spex [1], read_yohkoh_4_spex [2], sda2fits, seq_2fl, show_obs2
show_obs3, show_obs4, sswhere, sxt_fits_info, sxt_tfl, sxt_tflx, xsearch_obs
HISTORY:
Written 13-Nov-91 by M.Morrison
1-May-92 (MDM) - Modified to handle the case of BCS data.
3-May-92 (MDM) - Modified to handle ADA data (error
introduced by BCS patch of 1-May)
6-Aug-92 (MDM) - Modification to handle BCS lookup conversion
properly
[Previous]
[Next]
NAME:
gt_dp_rate
PURPOSE:
To extract the bits corresponding to DP Mode and optionally
return a string mnemonic.
CALLING SEQUENCE:
print, gt_dp_rate() ;to list the nemonics
x = gt_dp_rate(index)
x = gt_dp_rate(roadmap)
x = gt_dp_rate(index.gen, /string)
x = gt_dp_rate(dp_rate, /short)
x = gt_dp_rate(indgen(6)+1) ;used with menu selection
x = gt_dp_rate(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
filter names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The filter selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
FIND_FAST_DATA, GET_FRAME_TIME, GOES_TEK [1], GOES_TEK [2], HXT_DUMP, HXT_FANS
HXT_HI_SUM, HXT_LOW_SUM, HXT_MED1_SUM, HXT_MED2_SUM, HXT_PRESTORE [1]
HXT_PRESTORE [2], HXT_PRESTORE [3], HXT_PRESTORE [4], HXT_PRESTORE [5]
HXT_SUMMER, MK_GRSPCH, MK_GRSPCL, MK_GRSPHH1, MK_GRSPHH2, MK_GRSPHL1, MK_GRSPHL2
MK_HXSPC, MK_HXSPH, MK_RBMPC, OUT_GRSPHL1, OUT_GRSPHL2, OUT_HXSPH, PLOT_GRSPCH
PLOT_GRSPCL, PLOT_GRSPHH, PLOT_GRSPHL, PLOT_HXSPC, PLOT_HXSPH, READ_HXT_CAL
SXT_EXPOSURE_MAP, WBS_DB, WBS_DB2, WBS_TVEC, cnvt [2], dprate2sec [1]
dprate2sec [2], get_info [1], get_info [2], get_info [3], get_info [4], grs_plot
mk_pnt, mk_ptv_title, mk_title [2], plott_hi_sum, plott_low_sum, plott_med1_sum
plott_med2_sum, pr_sxt_term, sda2fits, show_obs2, show_obs3, show_obs4
sxt_fits_info
HISTORY:
Written 13-Nov-91 by M.Morrison
[Previous]
[Next]
NAME:
gt_dpe
PURPOSE:
To extract the bits corresponding to MBE (Mailbox Exposure Level) and
filter-A to calculate the DPE. Optionally return a string mnemonic
CALLING SEQUENCE:
x = gt_dpe(index)
x = gt_dpe(roadmap)
x = gt_dpe(roadmap, /conv)
x = gt_dpe(index.sxt, /string)
x = gt_dpe(index.sxt, /space) ;put single space before string
x = gt_dpe(index.sxt, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array.
If it is a scalar, it is the DPEs for the exposure(s)
already taking into account if the 8% mask was used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
conv - If present, convert the DPE level to milliseconds.
shutdur - If this keyword is set, the SHUTTER duration is
returned, not the effective exposure duration
which takes into account the 8% mask.
OUTPUT:
returns - The MBE, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2], gt_filta, gt_mbe [1], gt_mbe [2]
CALLED BY:
CHECK_FOR_30S, FILT4_SIM, GLITCH_TRACKER, GOES2DPE, QUICKDARK [2], QUICK_DPE
SDC_VERIFY, SXT_CADENCES, SXT_COVERAGE, SXT_TVEC, dark_sub [1], dark_sub [2]
dark_sub [3], fl_summary [1], fl_summary [2], fl_summary [3], get_dc_image [2]
get_dc_image [3], get_dc_warm, get_expdur, get_info [3], get_info [4], get_sdl_avg
get_sdm_val, get_sfc_info, gt_expdur [1], gt_expdur [2], mk_desat, mk_mask
mk_ptv_title, mk_sd2, mk_sdc [2], mk_sdc [3], mk_sdc [4], mk_sdm, mk_sdmi, mk_sfc [1]
mk_sfc [2], mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1]
mk_sff_pair [2], mk_sft [1], mk_sft [2], mk_sl [1], mk_sl [2], mk_title [2]
pr_sxt_term, sda2fits, sel_dc_image [1], sel_dc_image [2], sel_dc_image [3]
sswhere, sxt_combine, sxt_dark_sample, sxt_fits_info, sxt_lcur, termlite, update_dpe
xsearch_obs, xso_butevents [1], xso_butevents [2], yolist
HISTORY:
Written 13-Nov-91 by M.Morrison
17-Apr-92 (MDM) - Changed string format for /CONV option
from f10.1 to f8.1 (saved two spaces)
25-Apr-92 (MDM) - Called GT_MBE for the exposure duration for
each MBE instead of having the table in the
code (only want the table in one place)
- Changed code so that if an integer is passed
as the input, it is assumed to be the DPE
value (not the MBE value). - REMOVED the
"filta" second parameter.
19-Aug-93 (MDM) - Corrected for special case since true adjustments
of the DPE because of mask use only happens for
MBE 0 thru 7. There are cases where the ND mask
is used in longer exposures typically in full frame.
6-Jun-95 (MDM) - Modified to work properly for MBE=3 and ND filter
manually specified. It will be assigned DPE =4
even though it is not really DPE=4 (it is the
closest valid value).
[Previous]
[Next]
NAME:
gt_entry
PURPOSE:
To extract the word corresponding to the SXT entry table and optionally
return a string variable for that item.
CALLING SEQUENCE:
x = gt_entry(roadmap)
x = gt_entry(index)
x = gt_entry(index.sxt, /space) ;put single space before string
x = gt_entry(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
pfi_ffi - If "item" is not a structure then the "pfi_ffi"
needs to be passed in to the routine.
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The observing region, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2], gt_pfi_ffi
CALLED BY:
gtab_file
HISTORY:
Written 13-Nov-91 by M.Morrison
[Previous]
[Next]
NAME:
gt_expdur
PURPOSE:
Calculate the actual exposure duration of an image. The
returned value is in millisec.
CALLING SEQUENCE:
x = gt_expdur(index)
x = gt_expdur(index, /string)
INPUT:
index - the SXT index structure
OPTIONAL INPUT:
shutdur - If this keyword is set, the SHUTTER duration is
returned, not the effective exposure duration
which takes into account the 8% mask.
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
nocorr - If present, do not perform the exposure level correction
original- If set, return the original exposure commanded (from
index.sxt rather than from history record)
OUTPUT:
returns - the measured exposure duration (in msec)
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
HISTORY
Written 13-Nov-91 by M.Morrison
21-Apr-92 (MDM) Made output a scalar if only one element
28-Apr-92 (MDM) Adjusted the SXTE-U measured exposure duration by
a correction factor based on ground calibration
with the Kyoritsu. Also added "nocorr" parameter
input.
25-Jun-92 (MDM) Added capability of extracting the exposure duration
from the GND portion of the index structure when
present (ground based pre-launch data)
7-Jan-93 (MDM) Added capability to use the commanded exposure
duration when the measured duration is zero (bad
telemetry)
12-May-93 (MDM) Added capability to use the commanded exposure
duration when the measured duration is 32767 (bad
telemetry)
17-Jun-93 (MDM) Added capability to read from history index record
Added /ORIGINAL option
1-Jul-93 (SLF) Kludge for 11-May SEU, return expected values
19-Aug-93 (MDM) Modification to not apply the shutter exposure
correction factor to the dark images
27-Aug-93 (MDM) Allow roadmap to be passed in, just return expected
exposure duration and flag the error
23-Apr-99 (LWA) Corrected header description of keyword /original
5-May-1999 - S.L.Freeland - return expected values if
actual reported value is > 100% nominal
[ only for narrow slit exposures, mbe ={0,1} ]
CALLS:
CALLED BY
BONEHEAD_MASS_ESTIMATE, COMPOSE, COMPOSITE, DPE_GUESS, FILT4_SIM, INF_STR, LWA_TE
MK_SXT_MAP, PFI_TOTALIZER, RECONCILE_SFD, SDC_VERIFY, STRAY_CORR, SXT_HYST, SXT_TE
SXT_TEEM1 [1], SXT_TEEM1 [2], SXT_TEEM1 [3], UDN, WL_CUBE_II, agl2cut, ars_exp
aver_img, azimuth_teem [1], azimuth_teem [2], box_sxthxt_fsp, dark_orbit
dark_sub [1], dark_sub [2], dark_sub [3], deka_norm [1], deka_norm [2]
exp_norm [1], exp_norm [2], exp_norm2, get_dc_image [2], get_dc_image [3]
get_expdur, go_teem [1], go_teem [2], go_teem_nn, go_teem_t, his_index
image_summary, interp_img, lcur_calc [1], lcur_calc [2], leak_sub [1]
leak_sub [2], leak_sub [3], lwa_te_intact, mk_desat, mk_sd2, mk_sdc [2], mk_sdc [3]
mk_sdc [4], mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sot, mk_ssc [1]
mk_ssc [2], mk_ssl, mk_ssl_sub1, mk_synsfc_coeff [1], mk_synsfc_coeff [2]
norm_sxt_nn, pr_his_index [1], pr_his_index [2], pr_his_index [3], sacpeak_image
sda2fits, seq_2fl, sfc_prep [1], sfc_prep [2], sfd_comp, sswstruct_fill [1]
sxt_av_teem, sxt_average, sxt_composite [1], sxt_composite [2]
sxt_composite [3], sxt_dn_unc, sxt_flux [1], sxt_flux [2], sxt_flux [3], sxt_fsp
sxt_get_grill [1], sxt_get_grill [2], sxt_interp [1], sxt_interp [2], sxt_mwave
sxt_sff_composite [1], sxt_sff_composite [2], sxt_sumtime, sxt_tfl, sxt_tflx
sxt_thfsp, sxtbox_fsp, sxthxt_fsp, uncdn, wl_process
[Previous]
[Next]
NAME:
gt_expdur
PURPOSE:
Calculate the actual exposure duration of an image. The
returned value is in millisec.
CALLING SEQUENCE:
x = gt_expdur(index)
x = gt_expdur(index, /string)
INPUT:
index - the SXT index structure
OPTIONAL INPUT:
shutdur - If this keyword is set, the SHUTTER duration is
returned, not the effective exposure duration
which takes into account the 8% mask.
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
nocorr - If present, do not perform the exposure level correction
original- If set, return the original corner commanded (from index.sxt)
OUTPUT:
returns - the measured exposure duration (in msec)
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
HISTORY
Written 13-Nov-91 by M.Morrison
21-Apr-92 (MDM) Made output a scalar if only one element
28-Apr-92 (MDM) Adjusted the SXTE-U measured exposure duration by
a correction factor based on ground calibration
with the Kyoritsu. Also added "nocorr" parameter
input.
25-Jun-92 (MDM) Added capability of extracting the exposure duration
from the GND portion of the index structure when
present (ground based pre-launch data)
7-Jan-93 (MDM) Added capability to use the commanded exposure
duration when the measured duration is zero (bad
telemetry)
12-May-93 (MDM) Added capability to use the commanded exposure
duration when the measured duration is 32767 (bad
telemetry)
17-Jun-93 (MDM) Added capability to read from history index record
Added /ORIGINAL option
1-Jul-93 (SLF) Kludge for 11-May SEU, return expected values
19-Aug-93 (MDM) Modification to not apply the shutter exposure
correction factor to the dark images
27-Aug-93 (MDM) Allow roadmap to be passed in, just return expected
exposure duration and flag the error
CALLS:
CALLED BY
BONEHEAD_MASS_ESTIMATE, COMPOSE, COMPOSITE, DPE_GUESS, FILT4_SIM, INF_STR, LWA_TE
MK_SXT_MAP, PFI_TOTALIZER, RECONCILE_SFD, SDC_VERIFY, STRAY_CORR, SXT_HYST, SXT_TE
SXT_TEEM1 [1], SXT_TEEM1 [2], SXT_TEEM1 [3], UDN, WL_CUBE_II, agl2cut, ars_exp
aver_img, azimuth_teem [1], azimuth_teem [2], box_sxthxt_fsp, dark_orbit
dark_sub [1], dark_sub [2], dark_sub [3], deka_norm [1], deka_norm [2]
exp_norm [1], exp_norm [2], exp_norm2, get_dc_image [2], get_dc_image [3]
get_expdur, go_teem [1], go_teem [2], go_teem_nn, go_teem_t, his_index
image_summary, interp_img, lcur_calc [1], lcur_calc [2], leak_sub [1]
leak_sub [2], leak_sub [3], lwa_te_intact, mk_desat, mk_sd2, mk_sdc [2], mk_sdc [3]
mk_sdc [4], mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sot, mk_ssc [1]
mk_ssc [2], mk_ssl, mk_ssl_sub1, mk_synsfc_coeff [1], mk_synsfc_coeff [2]
norm_sxt_nn, pr_his_index [1], pr_his_index [2], pr_his_index [3], sacpeak_image
sda2fits, seq_2fl, sfc_prep [1], sfc_prep [2], sfd_comp, sswstruct_fill [1]
sxt_av_teem, sxt_average, sxt_composite [1], sxt_composite [2]
sxt_composite [3], sxt_dn_unc, sxt_flux [1], sxt_flux [2], sxt_flux [3], sxt_fsp
sxt_get_grill [1], sxt_get_grill [2], sxt_interp [1], sxt_interp [2], sxt_mwave
sxt_sff_composite [1], sxt_sff_composite [2], sxt_sumtime, sxt_tfl, sxt_tflx
sxt_thfsp, sxtbox_fsp, sxthxt_fsp, uncdn, wl_process
[Previous]
[Next]
Name:
gt_explat
Purpose:
Calculate the actual exposure latency of an image. The
returned value is in millisec.
Input:
explat - the exposure latency measured (from the
SXTE-U mailbox)
OR
the SXT index structure (ie: index, not index.sxt)
Modification History
Written 1-Oct-91 by M.Morrison
9-Dec-93 (MDM) - Renamed from GET_EXPLAT to GT_EXPLAT
[Previous]
[Next]
NAME:
gt_expmode
PURPOSE:
To extract the bits corresponding to exposure mode and optionally
return a string mnemonic.
CALLING SEQUENCE:
print, gt_expmode() ;to list the nemonics
x = gt_expmode(index)
x = gt_expmode(roadmap)
x = gt_expmode(index.sxt, /string)
x = gt_expmode(indgen(4)+1) ;used with menu selection
x = gt_expmode(index, /space) ;put single space before string
x = gt_expmode(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
exposure mode names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The shutter mode, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
CHECK_FOR_30S
Check the ATT database vs the SXC limb fit database to look for bad
GOES2DPE, QUICKDARK [2], QUICKSTRAY [2], SDC_VERIFY, SXT_COVERAGE, SXT_OBSRPT
SXT_QLOOK, carr2btime [2], comp_sfr_arch, get_info [3], get_info [4], get_sdm_val
getmenu [1], getmenu [2], gt_expdur [1], gt_expdur [2], mk_desat, mk_desat_wl
mk_mask, mk_sdp, mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1]
mk_sff_pair [2], mk_sfs, mk_sft [1], mk_sft [2], mk_sfw, mk_sl [1], mk_sl [2], mk_sot
mk_ssl, rd_sda_flare, rd_sfd_carr, ret_day, sda2fits, sswhere, sxt_clean [1]
sxt_clean [2], sxt_deleak [1], sxt_deleak [2], sxt_fits_info, sxt_low8_match [1]
sxt_low8_match [2], xrayss, xsearch_obs, yolist
HISTORY:
Written 7-Nov-91 by M.Morrison
13-Nov-91 MDM - Added "header" and "spaces" option
[Previous]
[Next]
NAME:
gt_filta
PURPOSE:
To extract the bits corresponding to Filter-A and optionally
return a string mnemonic.
CALLING SEQUENCE:
print, gt_filta() ;to list the nemonics
filta = gt_filta(index)
filta = gt_filta(roadmap)
filta = gt_filta(index.sxt, /string)
filta = gt_filta(filta, /short)
filta = gt_filta(indgen(6)+1) ;used with menu selection
filta = gt_filta(index.sxt, /space) ;put single space before string
filta = gt_filta(index.sxt, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
filter names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The filter selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
Check the ATT database vs the SXC limb fit database to look for bad
GETCAL_ATT [1], GETCAL_ATT [2], GET_POINTS, GET_SUNCENTER [1], GET_SUNCENTER [2]
GO_FIND_LIM2, GT_SXT_AXIS, HXA_SUNCENTER, LWA_TE, MK_SSX, OBS_PLOT, QUICKDARK [2]
QUICKSTRAY [2], ReqPerVal [1], ReqPerVal [2], STEPPER [1], STEPPER [2]
STEPPER [5], STEPPER_LP, SXT_OBSRPT, SXT_QLOOK, SXT_TE, SXT_TEEM1 [1], SXT_TEEM1 [2]
SXT_TEEM1 [3], TERM_QUICK, TERM_REVIEW, TERM_REVIEW_GIF, THINAL_INDEX, WL_CUBE_II
get_epoch_sfcs [1], get_epoch_sfcs [2], get_info [3], get_info [4], get_sfc_info
getmenu [1], getmenu [2], gt_dpe, gt_expdur [1], gt_expdur [2], gtab_comm
gtab_pf_str, leak_sub [1], leak_sub [2], leak_sub [3], lwa_te_intact, mk_desat_wl
mk_mask, mk_ptv_title, mk_sdc [2], mk_sdc [3], mk_sdc [4], mk_sfc [1], mk_sfc [2]
mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1], mk_sff_pair [2]
mk_sfs, mk_sft [1], mk_sft [2], mk_sfw, mk_sl [1], mk_sl [2], mk_sot, mk_ssc [1]
mk_ssc [2], mk_ssl, mk_syn_sfc [1], mk_syn_sfc [2], mk_synsfc_coeff [1]
mk_synsfc_coeff [2], mk_title [2], nuden_2nd, op_term_score, ploty [1], ploty [2]
pr_sxt_term, ptv_sxt, rest_low8_cube [1], rest_low8_cube [2], rest_low8_ffi
sda2fits, sfc_prep [1], sfc_prep [2], sft2sfc, sswhere, sxl_analysis, sxt_deleak [1]
sxt_deleak [2], sxt_fits_info, sxt_get_grill [1], sxt_get_grill [2]
sxt_low8_match [1], sxt_low8_match [2], sxt_tfl, sxt_tflx, termlite, update_dpe
xrayss, xsearch_obs, yolist
HISTORY:
Written 7-Nov-91 by M.Morrison
13-Nov-91 MDM - Added "header" and "spaces" option
[Previous]
[Next]
NAME:
gt_filtb
PURPOSE:
To extract the bits corresponding to Filter-B and optionally
return the string nemonic for that filter
CALLING SEQUENCE:
print, gt_filtb()
filtb = gt_filtb(index)
filtb = gt_filtb(roadmap)
filtb = gt_filtb(index.sxt, /string)
filtb = gt_filtb(filtb, /short)
filtb = gt_filtb(indgen(6)+1) ;used with menu selection
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
filter names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic for (long notation)
short - If present, return the short string nemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The filter selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
BONEHEAD_MASS_ESTIMATE, BORN_AGAIN, CHECK_FOR_30S, DAG_INDEX, DO_TEEM, FAXABLE_SFD
FIRST_LIGHT [1], FIRST_LIGHT [2], GET_POINTS, GOES2DPE, INF_STR, LASTSFD_DIFF
LATEST_SFDS_GIF, LWA_TE, MK_SSX, MK_SXT_MAP, OBS_PLOT, QUICKDARK [2], QUICKSTRAY [2]
QUICK_DPE, ReqPerVal [1], ReqPerVal [2], SFD_PHOT, SFD_TEK, STEPPER [1], STEPPER [2]
STEPPER [5], STEPPER_LP, SXT_HYST, SXT_IMAGE_DECONVOLVE, SXT_OBSRPT, SXT_QLOOK
SXT_TE, SXT_TEEM1 [1], SXT_TEEM1 [2], SXT_TEEM1 [3], SXT_TEEM2 [1], SXT_TEEM2 [2]
SXT_TEEM2 [3], SXT_TE_CURVE, TERM_QUICK, TERM_REVIEW, TERM_REVIEW_GIF
THICKAL_INDEX, THICK_FFI, THINAL_INDEX, azimuth_avg, box_sxthxt_fsp
carr2btime [2], compare_resp, daily_forecast [2], ffi_prep, fit_limb
fl_summary [1], fl_summary [2], fl_summary [3], get_epoch_sfcs [1]
get_epoch_sfcs [2], get_info [3], get_info [4], get_sdm_val, get_sfc_info, get_sxa
getmenu [1], getmenu [2], go_teem_plots, gtab_comm, gtab_pf_str, image_summary
lastsfd [1], lastsfd [2], leak_sub [1], leak_sub [2], leak_sub [3], lwa_te_intact
mk_desat, mk_mask, mk_ptv_title, mk_sdc [2], mk_sdc [3], mk_sdc [4], mk_sfc [1]
mk_sfc [2], mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1]
mk_sff_pair [2], mk_sfs, mk_sl [1], mk_sl [2], mk_ssl, mk_sun_mosaic, mk_syn_sfc [1]
mk_syn_sfc [2], mk_synsfc_coeff [1], mk_synsfc_coeff [2], mk_title [2]
model_spec, newsfd, op_term_score, plot_ssw_fov, plot_sxg, plot_sxl [1]
plot_sxl [2], ploty [1], ploty [2], pr_sxt_term, radial_avg, rd_sda_flare
rd_sfd_carr, rd_sxg, rdtbl, ret_day, sacpeak_image, scat_avg, sda2fits, sector_avg
seq_2fl, sfc_prep [1], sfc_prep [2], sft2sfc, ssc_scan2, sswhere, strip_data
sxl2radiance, sxl_analysis, sxt_clean [1], sxt_clean [2], sxt_dark_sample
sxt_decon [1], sxt_decon [2], sxt_eff_area, sxt_fits_info, sxt_fl_analxpro
sxt_flux [1], sxt_flux [2], sxt_flux [3], sxt_fsp, sxt_get_grill [1]
sxt_get_grill [2], sxt_imgtypes, sxt_interp [1], sxt_interp [2], sxt_mwave
sxt_off_axis, sxt_psd, sxt_psf, sxt_sharpen, sxt_ssc2file, sxt_ssc_rationalize
sxt_ssn2fits [1], sxt_ssn2fits [2], sxt_sumtime, sxt_tfl, sxt_tflx, sxt_thfsp
sxt_uniq [2], sxt_vignette, sxtbox_fsp, sxtbox_teem, sxthxt_fsp, termlite, uncdn
wfilpck, xsearch_obs, yolist
HISTORY:
Written 7-Nov-91 by M.Morrison
13-Nov-91 MDM - Added "header" and "spaces" options
[Previous]
[Next]
NAME:
gt_fov_center
PURPOSE:
To extract the word corresponding to the FOV (Field of View) center
optionally return a string variable for that item. The units are
in arcminutes
CALLING SEQUENCE:
x = gt_fov_center(roadmap)
x = gt_fov_center(index)
x = gt_fov_center(roadmap, /helio)
x = gt_fov_center(roadmap, /helio, /string)
x = gt_fov_center(index.sxt, /space) ;put single space before string
x = gt_fov_center(index, space=3) ;put 3 spaces
x = gt_fov_center(index, /hxa)
x = gt_fov_center(index, hxa=pnt)
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
heliocentric - If set, return the results in heliocentric coordinates
taking the b angle into consideration (it calls
the routine PIX2HEL)
nopoint_corr - If set, do not apply the correction for changes in
commanded spacecraft pointing
noobs_corr - If set, do not apply the correction for multiple
PFI strip observing regions (FOV_CENTER value is
different for each strip. The routine adjusts and
returns the center of the FOV for the WHOLE
observing region, not just the PFI strip)
hxa - If simply set (/HXA) then call GET_PNT to read the
PNT database for the input times, and then call
HXA_SUNCENTER to get the sun center position.
The other option is to pass the PNT data in the
call (HXA=PNT)
OUTPUT:
returns - The FOV Center in arcmin, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector.
(0,*) = East/West (east is negative)
(1,*) = North/South (south is negative)
If heliocentric coordinate option is used, the results
are in degrees. The order for E/W and N/S is the same
as shown above.
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
dont_use_this [1], dont_use_this [2], gt_center
CALLED BY:
SEL_AR, yolist
HISTORY:
Written 15-Nov-91 by M.Morrison
28-Jan-93 (MDM) - Transferred code to do the Observing region
correction from PLOT_FOV to here.
- Added correction for S/C pointing commanded changes
29-Jan-93 (MDM) - Corrected error which was returning the results
in the order (0,*)=n/s when using /HELIOCENTRIC
10-Mar-93 (MDM) - Added HXA option
24-Mar-93 (MDM) - Added a correction to handle cases where PFI and FFI
images are mixed in the same input (taken from
Metcalf's modifications)
27-Jul-93 (MDM) - Gutted it and made it call GT_CENTER
[Previous]
[Next]
NAME:
GT_FRAME_TIME
PURPOSE:
Obtain start or end frame time for HXT data. The so-called 4 sec
pre-storage is taken into account.
CALLING SEQUENCE:
IDL > tim = gt_frame_time(index,1)
; Gets start time of the second FR (FR16) in a char. string.
IDL > tim = gt_frame_time(index,2,/endfr,/num)
; Gets end time of the third FR (FR47) in a num. array.
INPUT:
index - HXT index.
fr - Frame number ID (0,1,2,3) that specifies portion of a single
Major frame during the Flare Mode. Note that this variable
does not work for frames with Quiet mode.
CALLS: ***
GET_FRAME_TIME
OPTIONAL KEYWORD INPUT:
endfr - If set, then the accumulation end time will be returned.
num - If set, then the time is returned in a form of raw numbers
rather than a string (default).
NOTE:
This program is now only for lower-compatibility purpose. We recommend
to use GET_FRAME_TIME instead.
CATEGORY:
Yohkoh HXT data analysis.
HISTORY:
version 1.0 93.04.21 (Wed) T.Sakao written.
version 1.1 93.06.30 (Wed)
A bug was fixed. But some modification will be needed.
version 1.2 98.06.25 (Thu)
Now this program has become a simple interface for calling
GET_FRAME_TIME where correct treatment of the pre-storage is
performed for various DP modes and rates other than FL-H.
[Previous]
[Next]
NAME:
gt_grs1
PURPOSE:
To extract the word corresponding to the GRS1 counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_grs1(roadmap)
x = gt_grs1(index)
x = gt_grs1(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The GRS1 counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, last_lc, plott_wda
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
7-Jan-94 (MDM) - Updated title
[Previous]
[Next]
NAME:
gt_grs2
PURPOSE:
To extract the word corresponding to the GRS2 counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_grs2(roadmap)
x = gt_grs2(index)
x = gt_grs2(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The GRS2 counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, plott_wda
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
7-Jan-94 (MDM) - Updated title
[Previous]
[Next]
NAME:
gt_hxa
PURPOSE:
To extract the word corresponding to the HXA data value
Default output is in HXA pixels.
CALLING SEQUENCE:
hxa = gt_hxa(pnt_data)
x1 = gt_hxa(pnt_data, 0)
x2 = gt_hxa(pnt_data, 1)
y1 = gt_hxa(ada_data, 2)
sxtcen = gt_hxa(pnt_data, /sxtpix)
sxtcen = gt_hxa(pnt_data, /sxtpix, /x)
hxacen = gt_hxa(pnt_data, /hxacen)
hxacen = gt_hxa(pnt_data, /hxacen, /y)
METHOD:
The input can be a structure or a scalar. The structure can
be the ADA data or PNT record
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
ilimb - Limb address to extract
0 = low address value for X scan
1 = high address value for X scan
2 = low address value for Y scan
3 = high address value for Y scan
sxtpix - If set, convert the output to sun center location in full
resolution SXT pixels (array coordinates, not CCD
coordinates). This option cannot be used with ilimb.
(SEE NOTE BELOW)
hxacen - If set, convert the four limb locations to a single pair
of addresses by averaging the limbs (correction for 45
degress rotation of HXA)
x - Only can be used with /SXTPIX and /HXACEN options.
If set, only return the x (east/west) result
y - Only can be used with /SXTPIX and /HXACEN options.
If set, only return the y (north/south) result
OUTPUT:
returns - The HXA limb position in HXA pixels
If ilimb is not passed, then the output is 4xN where
there were "N" datasets passed in.
When using /SXTPIX or /HXACEN option, the output is
2xN with (0,*) being the center column and (1,*) is
the line. If /X or /Y is used, the output is a 1-d
vector "N" long.
KEYWORD OUTPUT:
fm - A vector same length as input with a flag if address
is on fudicial mark.
CALLS: ***
FORZONES [1], FORZONES [2], tag_index [1], tag_index [2]
CALLED BY:
GET_SSX_SLICE, HXA2HEL, PFI_CENT, rot_pix2
NOTE:
The conversion from HXA address to SXT pixel location was derived
by Hugh Hudson by fitting 4-5 months of data between Oct-91 and
Jan-92. There are uncorrected systematic errors in these fits so
the accuracy at this time is +/- 3 arcsec. This conversion technique
will be updated in the future (hopefully Jun/Jul-92).
HISTORY:
Written 21-Apr-92 by M.Morrison
5-May-92 (MDM) - Added /SXTPIX option using code from Hugh Hudson's
HXA_SUNC2
- Added /HXACEN and /X and /Y
7-May-92 (MDM) - Added "fm"
15-Jul-93 (MDM) - Changed /HXACEN option to return in coordinates which
have been rotated to the E/W system (not the 45 deg
rotated system of HXA)
[Previous]
[Next]
NAME:
gt_hxs
PURPOSE:
To extract the word corresponding to the HXS counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_hxs(roadmap)
x = gt_hxs(index)
x = gt_hxs(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The hxs counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, last_lc, plott_wda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
7-Jan-94 (MDM) - Updated title
[Previous]
[Next]
NAME:
gt_hxt_hk_temp
PURPOSE:
To extract and convert the HXT temperatures to degrees C.
CALLING SEQUENCE:
t = gt_hxt_hk_temp( index, 0 )
t = gt_hxt_hk_temp( index, 0, title=title )
t = gt_hxt_hk_temp( /help)
Input:
item - Index structure or the array of temperatures.
The roadmap is not acceptible as input
itemp - The index of the temperature to return (0-20)
CALLS: ***
AHK_CONV, gt_conv2str [1], gt_conv2str [2]
OPTIONAL KEYWORD INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
help - Prints the HXT temperature sensor locations (and
does not compute)
OUTPUT:
returns - The house keeping temperature, a floating point value or
a string value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL KEYWORD OUTPUT:
title - A description of the temperature selected.
WARNINGS
The downstream author here does not understand some of the
upstream stuff in this code.
History:
HSH, Written, 20-Feb-97, plated from gt_temp_hk (the SXT version)
help from Sawa on details
[Previous]
[Next]
NAME:
GT_IGRAY
PURPOSE:
To obtain initial gray (IGRAY) values (= number of incident HXR
photons/cm2, though the value may contain some errors) from the HXT
DATA structure variables.
The method is the same as that in GETVAR@MEM.F.
CALLING SEQUENCE:
igray = GT_IGRAY(hxt)
INPUT:
hxt - HXT DATA structure variable
OPTIONAL KEYWORD INPUT:
iway - Specifies how to treat modulation patterns in the H band
where HXT grids become somewhat transparent due to the
presence of W edge.
OUTPUT:
igray - Initial gray value.
HISTORY:
version 1.0 93.05.05 (Wed) T.Sakao written.
1.1 GT_IGRAY revisited. Hence this documentation was added.
[Previous]
[Next]
NAME:
gt_iru
PURPOSE:
To extract the word corresponding to the IRU data value
Default output is in arcseconds.
CALLING SEQUENCE:
x = gt_iru(pnt_data, 0)
y = gt_iru(pnt_data, 1, /residual)
y = gt_iru(ada_data, 1, ada_index, /residual)
METHOD:
The input can be a structure or a scalar. The structure can
be the data or PNT record
INPUT:
item - A structure or scalar. It can be an array.
iaxis - Axis to extract (0=x, 1=y, 2=z)
CURRENTLY REQUIRED INPUT - FUTURE OPTION IS IF IT IS NOT
PRESENT, RETURN A 3xN MATRIX
OPTIONAL INPUT:
index - If the /RESIDUAL option is being used and the input in
"item" is the ADA data record, then it is necessary to pass
the index structure so that the time/day can be accessed.
residual- If present, perform a linear fit to the data and
return the residuals to that fit (take out the drift
in the output)
OUTPUT:
returns - The IRU position in arcsec
CALLS: ***
POLY_FIT, int2secarr [1], int2secarr [2], tag_index [1], tag_index [2]
HISTORY:
Written 8-Mar-92 by M.Morrison
21-Apr-92 (MDM) - Expanded so that the /RESIDUAL option would work if
the ADA data is passed. Needed to add another input
parameter index.
[Previous]
[Next]
NAME:
gt_mbe
PURPOSE:
To extract the bits corresponding to MBE (Mailbox Exposure Level) and
optionally return a string mnemonic
CALLING SEQUENCE:
x = gt_mbe(index)
x = gt_mbe(roadmap)
x = gt_mbe(index.sxt, /string)
x = gt_mbe(index.sxt, /space) ;put single space before string
x = gt_mbe(index.sxt, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
gt_dpe, gt_expdur [1], gt_expdur [2], mk_ssl, plot_ssl, yolist
OPTIONAL KEYWORD INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
conv - If present, convert the MBE level to milliseconds.
OUTPUT:
returns - The MBE, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL KEYWORD OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
corr_fact- The correction factor to go from SXTE-U measured
duration to actual duration (as derived by Kyoritsu
calibration). Actual = measured * corr_fact
HISTORY:
Written 13-Nov-91 by M.Morrison
28-Apr-92 (MDM) - Added the correction factor lookup table
and the parameter "corr_fact"
- Changed expdur_arr values
MBE = 0 to 0.00096 (was 0.0008)
MBE = 1 to 0.00288 (was 0.0024)
MBE = 2 to 0.017 (was 0.018)
3-Feb-2000 S.L.Freeland - special case for
(Dark or Cal) + ( MBE={0,1} ) + /CONV + index input
Return CCD integration time not shutter time
[Previous]
[Next]
NAME:
gt_mbe
PURPOSE:
To extract the bits corresponding to MBE (Mailbox Exposure Level) and
optionally return a string mnemonic
CALLING SEQUENCE:
x = gt_mbe(index)
x = gt_mbe(roadmap)
x = gt_mbe(index.sxt, /string)
x = gt_mbe(index.sxt, /space) ;put single space before string
x = gt_mbe(index.sxt, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
gt_dpe, gt_expdur [1], gt_expdur [2], mk_ssl, plot_ssl, yolist
OPTIONAL KEYWORD INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
conv - If present, convert the MBE level to milliseconds.
OUTPUT:
returns - The MBE, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL KEYWORD OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
corr_fact- The correction factor to go from SXTE-U measured
duration to actual duration (as derived by Kyoritsu
calibration). Actual = measured * corr_fact
HISTORY:
Written 13-Nov-91 by M.Morrison
28-Apr-92 (MDM) - Added the correction factor lookup table
and the parameter "corr_fact"
- Changed expdur_arr values
MBE = 0 to 0.00096 (was 0.0008)
MBE = 1 to 0.00288 (was 0.0024)
MBE = 2 to 0.017 (was 0.018)
[Previous]
[Next]
NAME:
gt_obsregion
PURPOSE:
To extract the word corresponding to the observing region and optionally
return a string variable for that item.
CALLING SEQUENCE:
x = gt_obsregion(roadmap)
x = gt_obsregion(index)
x = gt_obsregion(index.sxt, /space) ;put single space before string
x = gt_obsregion(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The observing region, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2]
HISTORY:
Written 13-Nov-91 by M.Morrison
[Previous]
[Next]
NAME:
gt_or_expnum
PURPOSE:
To extract the word corresponding to the observing region (OR) exposure
number and optionally return a string variable for that item.
CALLING SEQUENCE:
x = gt_or_expnum(roadmap)
x = gt_or_expnum(index)
x = gt_or_expnum(index.sxt, /space) ;put single space before string
x = gt_or_expnum(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2], gt_pfi_ffi
CALLED BY:
gt_center, plot_nar [1], plot_nar [2], sxt_prep [1], sxt_prep [2], sxt_prep [3]
NOTE: For FFI this is the ROI number if the exposure was a multiple ROI
exposure.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The OR exposure number, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
HISTORY:
Written 13-Nov-91 by M.Morrison
14-Jul-93 (MDM) - Added code to handle cases where FFI images are
passed in.
[Previous]
[Next]
NAME:
gt_percentd
PURPOSE:
To extract and scale the word which tells how much of the image was received
CALLING SEQUENCE:
p = gt_percentd(index)
x = gt_percentd(roadmap, /str)
INPUT:
item - The input must be a structure. The structure can
be the index, or roadmap, or observing log.
OPTIONAL INPUT:
string - If present, return the string format
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The percent of the image which was received (0-100)
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
CHECK_FOR_30S, FIRST_LIGHT [1], FIRST_LIGHT [2], GLITCH_TRACKER, HOTPIX_FUDGE
QUICKDARK [2], QUICKSTRAY [2], SXT_HOTPIX_FUDGE, SXT_HYST, THICK_FFI, TIDY_DATA
comp_sfr_arch, fl_summary [1], fl_summary [2], fl_summary [3], get_info [3]
mk_sdmi, mk_sff_pair [1], mk_sff_pair [2], ref_term [2]
HISTORY:
Written 28-Oct-93 by M.Morrison
[Previous]
[Next]
NAME:
gt_percentover
PURPOSE:
To extract and scale the word which tells how many of the pixels were
over the saturation threshold.
CALLING SEQUENCE:
p = gt_percentover(index)
p = gt_percentover(roadmap, /str)
INPUT:
item - The input must be a structure. The structure can
be the index, or roadmap, or observing log.
OPTIONAL INPUT:
string - If present, return the string format
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The percent of the image which was saturated
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
get_info [3]
HISTORY:
Written 28-Oct-93 by M.Morrison
[Previous]
[Next]
NAME:
gt_pfi_ffi
PURPOSE:
To extract the word corresponding to the observing region and optionally
return a string variable for that item.
CALLING SEQUENCE:
x = gt_pfi_ffi(roadmap)
x = gt_pfi_ffi(index)
x = gt_pfi_ffi(index.sxt, /space) ;put single space before string
x = gt_pfi_ffi(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
ffi - If set, return a 1 if the image is an FFI and return
a 0 if it is a PFI (PFI strip or observing region).
true_ffi- If set, return a 1 if the image is an FFI and return
a 0 if it is a PFI (PFI strip or observing region).
This option will also check if it is an FFI strip
or if it is a PFI which was extracted from an FFI.
OUTPUT:
returns - The observing region, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
MASK, gt_conv2str [1], gt_conv2str [2], gt_res, gt_shape
CALLED BY:
RD_AR, STEPPER [3], STEPPER [4], ass_or, dark_sub [1], dark_sub [2], dark_sub [3]
ext_subimg [1], ext_subimg [2], get_dc_image [2], get_dc_image [3], get_info [3]
get_leak_image [1], get_leak_image [2], get_leak_image [3], gt_corner_cmd
gt_entry, gt_or_expnum, leak_sub [1], leak_sub [2], leak_sub [3], mk_sdc [2]
mk_sdc [3], mk_sdc [4], mk_ssl, mnr_frm_fix, mod_res, sda2fits, sel_dc_image [1]
sel_dc_image [2], sel_dc_image [3], sxt_clean [1], sxt_clean [2], sxt_prep [1]
sxt_prep [2], sxt_prep [3], xsxt_prep_event, xy_lwa, yolist
HISTORY:
Written 13-Nov-91 by M.Morrison
23-Nov-92 (MDM) - Added /FFI option
16-Aug-93 (MDM) - Added /TRUE_FFI option
[Previous]
[Next]
NAME:
gt_pix_size
PURPOSE:
To return the SXT pixel size in arcseconds
SAMPLE CALLING SEQUENCE:
pix = gt_pix_size()
pix = gt_pix_size(index)
area= gt_pix_size(index, /area)
OPTIONAL INPUT:
input - The roadmap or index structure. The output will be the
pixel size in arcseconds for each image depending on the
summation mode of the image. The default with no parameters
is full resolution
CALLS: ***
get_rb0p [1], get_rb0p [2], gt_res, is_member [1], is_member [2]
CALLED BY:
ALIGN1BIGGRAM, ALIGN_AR, BONEHEAD_MASS_ESTIMATE, EARTH, EARTH_CURSOR
GET_POINT_STR, HELIO_FOOT, HYDRO_ CORONA, LAY1GKM, MK_SXT_MAP, NORH_NORH2SXT [1]
NORH_NORH2SXT [2], NORH_NORH2SXT [3], NORH_NORH2SXT [4], PFI_CENTER, PLOT_HXT
PP_MWLT2SXT, PP_SXT2ANY, PP_SXT2VLA, PROM_ON_DISK, PROTRACTOR, RD_AR, Ruler, SEL_AR
SFD_CDS, SXT_EXPOSURE_MAP, SXT_GRID [1], SXT_GRID [2], SXT_RPAXY, TERM_QUICK
TERM_REVIEW, TERM_REVIEW_GIF, TV_SYNOP, WITH_INT, WITH_INT_DISK, agl2cut
align1img [1], align1img [2], align_prep [1], align_prep [2], align_prep [3]
azimuth_teem [1], azimuth_teem [2], conv_a2p [1], conv_a2p [2], conv_p2a [1]
conv_p2a [2], fit_limb, foreshort, gbo_obs_coord, gbo_pfi, get_gbo_pfi
help_vignette, image_summary, in_fov, lineofsight [1], lineofsight [2]
lwa_scatter, match_index [1], match_index [2], mk_strip_file, mk_sxh, mk_sxl
rd_lonlat, rest_low8_cube [1], rest_low8_cube [2], sda2fits, sleazy_rot
sol_rot [2], sswstruct_fill [1], sun_grid, sxt2eit, sxt_cmd_pnt, sxt_deleak [1]
sxt_deleak [2], sxt_prep [1], sxt_prep [2], sxt_prep [3], sxt_vignette, sxt_xsaa
OPTIONAL KEYWORD INPUT:
wl - If set, return the original value which was derived from
analyzing white light images.
area - If set, and index is passed, the function returns the pixel
area in cm^2. The computed area is based on the distance
to the Sun as given by the time in the INPUT structure.
ROUTINES CALLED
get_rb0p, gt_res, tag_names, is_member
HISTORY:
Written by Tom Metcalf 1992
12-Jun-93 (MDM) - Added documentation header
- Added INPUT parameter option
- Changed default value returned from 2.4602 to 2.4528
The new value is the value recorded in the red book
as derived from the focal length. The old value was
derived by Metcalf looking at the radius of white
light images.
7-Apr-93 (HSH) - Added /area keyword => area of (full resolution)
pixel in cm^2, userful for em conversion
5-oct-94 (SLF) - Updated x-ray pixel size based upon work by
Jean-Pierre Wuelser
22-dec-95 (JRL) - Enabled INPUT to be a vector.
[Previous]
[Next]
NAME:
gt_rbmsc
PURPOSE:
To extract the word corresponding to the RBMSC counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_rbmsc(roadmap)
x = gt_rbmsc(index)
x = gt_rbmsc(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The RBMSC counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, last_lc, plott_wda
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
[Previous]
[Next]
NAME:
gt_rbmsd
PURPOSE:
To extract the word corresponding to the RBMSD counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_rbmsd(roadmap)
x = gt_rbmsd(index)
x = gt_rbmsd(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The RBMSD counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, plott_wda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
7-Jan-94 (MDM) - Updated title
[Previous]
[Next]
NAME:
gt_res
PURPOSE:
To extract the bits corresponding to image resolution and optionally
return the string nemonic for that resolution
CALLING SEQUENCE:
print, gt_res() ;print full listing of resolutions
res = gt_filta(res)
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
filter names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string nemonic
spaces - If present, place that many spaces before the output
string.
original - If set, return the original corner commanded (from index.sxt)
OUTPUT:
returns - The resolution selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
HIS_EXIST, MASK, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
ALIGN1BIGGRAM, ALIGN_AR, BUILD_SSX
Check the ATT database vs the SXC limb fit database to look for bad
FIRST_LIGHT [1], FIRST_LIGHT [2], FOV_COORDS, GEN_LOC, GET_POINT_STR
GET_SSX_SLICE, GET_SUBARR2, GET_TRACUBE, GLITCH_TRACKER, GOES2DPE, GO_FIND_LIM2
HOTPIX_FUDGE, HXA2HEL, HXA_SXT, IMGSCL2, IMG_HELADD, LASTSFD_DIFF, LATEST_SFDS_GIF
LAY1GKM, MK_MOSAIC, MK_SSX, NAME [1], PICK_PIX, PLOT_CLON, POLAR_GRID, PP_MWLT2SXT
PP_SXT2ANY, PP_SXT2VLA, QUICKSTRAY [2], QUICK_DPE, RD_AR, RD_XDA [1], RD_XDA [2]
RECONCILE_SFD, Ruler, SDC_VERIFY, SEL_AR, SFD_CDS, SXTPIXON, SXT_DELINE
SXT_EXPOSURE_MAP, SXT_FOV_CENTER, SXT_GRID [1], SXT_GRID [2], SXT_GRID [3]
SXT_HOTPIX_FUDGE, SXT_IMAGE_DECONVOLVE, SXT_OBSRPT, SXT_QLOOK, SXT_RPAXY
SXT_TEEM1 [1], SXT_TEEM1 [2], SXT_TEEM1 [3], agl2cut, align1img [1], align1img [2]
ar_prep, azimuth_avg, carr2btime [2], change_res, coal_image, coal_rot
daily_forecast [2], dark_orbit, dark_sub [1], dark_sub [2], dark_sub [3], enhancer
exp_norm [1], exp_norm [2], exp_norm2, ext_subimg [1], ext_subimg [2], ext_subimg2
ext_subimg3, ext_subset [2], fit_limb, fovc2corn_cmd, gbo_obs_coord, gbo_pfi
get_dc_image [2], get_dc_image [3], get_dc_warm, get_info [3], get_info [4]
get_leak_image [1], get_leak_image [2], get_leak_image [3], get_pix_coor
get_res_offset, get_sdl_avg, get_sdm_val, get_sxa, getmenu [1], getmenu [2]
gt_center, gt_corner, gt_pfi_ffi, gt_pix_size, gt_shape, his_index, interp_img
lastsfd [1], lastsfd [2], leak_sub [1], leak_sub [2], leak_sub [3], lwa_plot_arc
mk_coal_movie, mk_desat, mk_desat_wl, mk_mask, mk_ptv_title, mk_sd2, mk_sdc [2]
mk_sdc [3], mk_sdc [4], mk_sdm, mk_sdmi, mk_sfc [1], mk_sfc [2], mk_sfd [1]
mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1], mk_sff_pair [2], mk_sft [1]
mk_sft [2], mk_sfw, mk_sl [1], mk_sl [2], mk_sot, mk_strip_file, mk_sun_mosaic, mk_sxc
mk_sxh, mk_sxl, mk_synsfc_coeff [1], mk_synsfc_coeff [2], mk_title [2], mod_res
newsfd, nuden_2nd, ofr2fre, op_term_score, pfi_loc, plot_ar_pfi, plot_arc [1]
plot_arc [2], plot_nar [1], plot_nar [2], plot_ssw_fov, plot_sxg, pr_his_index [1]
pr_his_index [2], pr_his_index [3], pr_sxt_term, radial_avg, rd_sda_flare
rd_sfd_carr, res_freq, rest_low8_cube [1], rest_low8_cube [2], rest_low8_ffi
ret_day, rot_pix2, sda2fits, sector_avg, sel_dc_image [1], sel_dc_image [2]
sel_dc_image [3], sfc_prep [1], sfc_prep [2], sfd_comp, sleazy_rot, sol_rot [2]
ssc_scan2, sswhere, strip_data, sxl_analysis, sxt_av_teem, sxt_bleedtest
sxt_clean [1], sxt_clean [2], sxt_combine, sxt_composite [1], sxt_composite [2]
sxt_composite [3], sxt_dark_sample, sxt_decon [1], sxt_decon [2], sxt_deleak [1]
sxt_deleak [2], sxt_dn_unc, sxt_fits_info, sxt_imgtypes, sxt_interp [1]
sxt_interp [2], sxt_lcur, sxt_low8_match [1], sxt_low8_match [2], sxt_mauna
sxt_obs_coord [1], sxt_obs_coord [2], sxt_off_axis, sxt_plot_fov, sxt_prep [1]
sxt_prep [2], sxt_prep [3], sxt_psf, sxt_satpix [1], sxt_satpix [2], sxt_scatwings
sxt_tfl, sxt_tflx, sxt_uniq [1], sxt_uniq [2], sxt_vignette, sxt_xsaa, termlite
unsharp_mask, wl_process, xsearch_obs, xy_lwa, yolist
HISTORY:
Written 7-Nov-91 by M.Morrison
13-Nov-91 MDM - Added "header" and "spaces" option
15-Nov-91 MDM - Changed short notation from 1x1, 2x2, 4x4 to
FR, HR, QR
10-Jun-93 (MDM) - Added option to extract from the history structure
17-Jun-93 (MDM) - Added /ORIGINAL option
[Previous]
[Next]
NAME:
gt_seq_num
PURPOSE:
To extract the bits corresponding to DP Mode and optionally
return a string mnemonic.
CALLING SEQUENCE:
print, gt_seq_num() ;to list the nemonics
x = gt_seq_num(index)
x = gt_seq_num(roadmap)
x = gt_seq_num(index.gen, /string)
x = gt_seq_num(seq_num, /short)
x = gt_seq_num(indgen(6)+1) ;used with menu selection
x = gt_seq_num(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array. If this
value is not present, a help summary is printed on the
names used.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sequence number selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
STEPPER [1], STEPPER [2], STEPPER [5], STEPPER_LP, show_obs2, show_obs3, show_obs4
HISTORY:
Written 13-Nov-91 by M.Morrison
[Previous]
[Next]
NAME:
gt_seq_tab
PURPOSE:
To extract the bits corresponding to DP Mode and optionally
return a string mnemonic.
CALLING SEQUENCE:
x = gt_seq_tab(index)
x = gt_seq_tab(roadmap)
x = gt_seq_tab(index.gen, /string)
x = gt_seq_tab(seq_tab, /short)
x = gt_seq_tab(indgen(6)+1) ;used with menu selection
x = gt_seq_tab(index, space=3) ;put 3 spaces
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log. If the input
is non-byte type, it assumes that the bit extraction had
already occurred and the "mask" is not performed on the input.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sequence table selected, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
gtab_file, show_obs2, show_obs3, show_obs4
HISTORY:
Written 13-Nov-91 by M.Morrison
[Previous]
[Next]
NAME:
gt_shape
PURPOSE:
To extract the word which stores the shape of the image (NX, NY) from the
index or roadmap
CALLING SEQUENCE:
x = gt_shape(roadmap)
x = gt_shape(index)
x = gt_shape(index.sxt, /space) ;put single space before string
x = gt_shape(index, space=3) ;put 3 spaces
x = gt_shape(roadmap, /x) ;just return 1xN array of x shape
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
x - If present, just return the x (column) shape
y - If present, just return the y (lines) shape
fr - If present, then return the size in Full Resolution pixel
equivalent. This can only be used if the input is a
index or roadmap structure.
obs_region - If set, return the shape of the observing region, not
the PFI strip
OUTPUT:
returns - The shape commanded, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector. The default is a 2xN array
where N is the size of the roadmap or index array. If
you use the /X or /Y options, it is 1xN.
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
HIS_EXIST, gt_conv2str [1], gt_conv2str [2], gt_res
CALLED BY:
ALIGN1BIGGRAM, LAY1GKM, MK_SXT_MAP, NORH_NORH2SXT [1], NORH_NORH2SXT [3]
PLOT_CLON, POLAR_GRID, RD_XDA [1], RD_XDA [2], SXT_GRID [1], SXT_GRID [2]
SXT_GRID [3], SXT_OBSRPT, align1img [1], align1img [2], ext_subimg3, gbo_pfi
get_dc_image [2], get_dc_image [3], get_gbo_pfi, get_leak_image [1]
get_leak_image [2], get_leak_image [3], gt_center, gt_corner, gt_pfi_ffi
hxt_images2ps, in_fov, leak_sub [1], leak_sub [2], leak_sub [3], mk_sun_mosaic
mnr_frm_fix, mod_res, pfi_loc, plot_ar_pfi, plot_ssw_fov, rest_low8_cube [1]
rest_low8_cube [2], sel_dc_image [1], sel_dc_image [2], sel_dc_image [3]
sxt_av_teem, sxt_decon [1], sxt_decon [2], sxt_off_axis, sxt_plot_fov
sxt_prep [1], sxt_prep [2], sxt_prep [3], sxt_vignette
HISTORY:
Written 6-Jun-93 by M.Morrison
23-Jun-93 (MDM) - Modified to use SHAPE_CMD for roadmaps
21-Jul-93 (MDM) - Added /OBS_REGION keyword
26-Aug-93 (MDM) - Added fix that /OBS_REGION is ignored if
there are history records
[Previous]
[Next]
NAME:
gt_shape_cmd
PURPOSE:
To extract the word corresponding to shape commanded and optionally
return a string variable for that item.
CALLING SEQUENCE:
x = gt_shape_cmd(roadmap)
x = gt_shape_cmd(index)
x = gt_shape_cmd(index.sxt, /space) ;put single space before string
x = gt_shape_cmd(index, space=3) ;put 3 spaces
x = gt_shape_cmd(roadmap, /x) ;just return 1xN array of x shape
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
x - If present, just return the x (column) shape
y - If present, just return the y (lines) shape
OUTPUT:
returns - The shape commanded, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector. The default is a 2xN array
where N is the size of the roadmap or index array. If
you use the /X or /Y options, it is 1xN.
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
GET_SSX_SLICE, GET_TRACUBE, GO_FIND_LIM2, GO_FIND_LIMB, MK_SSX, PATROL_ORDER, SEL_AR
SXT_RPAXY, change_res, chk_pointing, ext_subimg2, fovc2corn_cmd, get_info [3]
get_info [4], image_summary, mk_sdc [2], mk_sdc [3], mk_sdc [4], mk_sfd [1]
mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1], mk_sff_pair [2]
mk_strip_file, plot_nar [1], plot_nar [2], pr_sxt_term, sxt2file, sxt_fits_info
sxt_ssc2file, sxt_ssn2fits [1], sxt_ssn2fits [2], sxt_uniq [2], xspr [1], xspr [2]
yolist
HISTORY:
Written 13-Nov-91 by M.Morrison
22-Nov-91 (MDM) - Added "x" and "y" options
2-Jun-93 (MDM) - Made the output scalar if one element
[Previous]
[Next]
NAME:
gt_ssl_explab
PURPOSE:
Return the label for the SSL data structure fields
"num_expos" and "dur_expos"
OPTIONAL INPUT:
item - The indicy of the item wanted (0-12)
If not specified, return them all.
OUTPUT:
Returns a string array (or scalar) with the description
of what "num_expos" applies to
CALLED BY:
plot_ssl
HISTORY:
Written 24-Apr-92 by M.Morrison
[Previous]
[Next]
NAME:
gt_sum_h
PURPOSE:
To extract the word corresponding to the SUM_H. It is the HXT
low channel counts per second.
CALLING SEQUENCE:
x = gt_sum_h(roadmap)
x = gt_sum_h(index)
x = gt_sum_h(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sum_h counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
HXT_DUMP, OBS_PLOT, last_lc, lchda, plott_hda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
20-Jan-93 (MDM) - Updated energies listed in title
[Previous]
[Next]
NAME:
gt_sum_l
PURPOSE:
To extract the word corresponding to the SUM_L. It is the HXT
low channel counts per second.
CALLING SEQUENCE:
x = gt_sum_l(roadmap)
x = gt_sum_l(index)
x = gt_sum_l(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sum_l counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
HXT_DUMP, OBS_PLOT, last_lc, lchda, obs_summary, plott_hda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
20-Jan-93 (MDM) - Updated energies listed in title
[Previous]
[Next]
NAME:
gt_sum_m1
PURPOSE:
To extract the word corresponding to the SUM_M1. It is the HXT
low channel counts per second.
CALLING SEQUENCE:
x = gt_sum_m1(roadmap)
x = gt_sum_m1(index)
x = gt_sum_m1(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sum_m1 counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
HXT_DUMP, OBS_PLOT, last_lc, lchda, plott_hda
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
20-Jan-93 (MDM) - Updated energies listed in title
[Previous]
[Next]
NAME:
gt_sum_m2
PURPOSE:
To extract the word corresponding to the SUM_M2. It is the HXT
low channel counts per second.
CALLING SEQUENCE:
x = gt_sum_m2(roadmap)
x = gt_sum_m2(index)
x = gt_sum_m2(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sum_m2 counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
HXT_DUMP, OBS_PLOT, last_lc, lchda, plott_hda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
20-Jan-93 (MDM) - Updated energies listed in title
[Previous]
[Next]
NAME:
gt_sxs1
PURPOSE:
To extract the word corresponding to the SXS1 counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_sxs1(roadmap)
x = gt_sxs1(index)
x = gt_sxs1(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The SXS1 counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, last_lc, plott_wda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
7-Jan-94 (MDM) - Updated title
[Previous]
[Next]
NAME:
gt_sxs2
PURPOSE:
To extract the word corresponding to the SXS2 counts. The units
are cnts/sec
CALLING SEQUENCE:
x = gt_sxs2(roadmap)
x = gt_sxs2(index)
x = gt_sxs2(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The sxs2 counts per sec, a integer value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
OBS_PLOT, obs_summary, plott_wda
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
6-Jun-92 (MDM) - Corrected observing log extraction (data type prob)
12-Oct-92 (MDM) - Modified to correct for integer*2 overflow
7-Jan-94 (MDM) - Updated title
[Previous]
[Next]
NAME :
GT_SXT_AXIS.PRO
PURPOSE :
This function returns a one or two dimensional array that contains
the axis (or axes) of the maximum effective area of SXT.
CALLING SEQUENCE :
axis_coord = gt_sxt_axis()
axis_coord = gt_sxt_axis(index)
axis_coord = gt_sxt_axis(MODE)
OPTIONAL INPUT :
INDEX - Allows the calling program to deliver the SXT "index"
variable which will be used to determine the filter
configuration: X-Ray, Narrow Band or Wide Band.
MODE - Allows the calling program to specify the SXT X-Ray/Optical
that is used in the image. The modes are as follows :
SXT MODE MODE Value
X-Ray 0
Narrow Band (NaBan) 1
Wide Band (WdBan) 2
The mode may either be a scalar or a vector. If mode is a
vector then the same number of elements of mode will be
returned.
CALLS: ***
gt_filta
CALLED BY:
SHIFT_O2P, align_prep [1], align_prep [2], align_prep [3], help_vignette
sxt_vignette
OPTIONAL KEYWORD INPUT:
REL_XRAY - If set, then return the offset relative to the x-ray
boresight. This option is used to figure the correction
needed for wide band and narrow band images.
(0,*) - negative number means move the image west
to align it with x-rays (the image is the
the east of x-ray boresight)
(1,*) - negative numbers means move the image north
to align it with x-rays (the image is south
of the x-ray boresight)
NB = (-0.36, 1.47) NB image is NE of X-ray image.
WB = (+0.24, 1.26) WB image is NW of X-ray image.
OUTPUT :
If there are no arguements to this routine a 2 element
array is returned with the X and Y location in Full Resolution
IDL pixels of the maximum effective area axis for x-rays.
If either MODE or INDEX is specified then the routine will
return a two-dimensional array which has an X,Y pair for each
element in MODE or INDEX.
HISTORY :
Written; RAF, Stanford, Sep 22, 1993
The relative offset between the X-ray optical axis and the
optical axis in the Wide band or Narrow band filters was
determined by Jean-Pierre Wuelser (22-Oct-92).
21-Dec-93 (MDM) - Modified the header some
- Added /REL_XRAY keyword option
5-Jan-94 (MDM) - Updated header
[Previous]
[Next]
NAME:
gt_sxt_cen
PURPOSE:
To extract the Sun Center pixel coordinate from the INDEX.HIS.SUN_CENTER
field if it exists, otherwise call SXT_CEN.
SAMPLE CALLING SEQUENCE:
cen = gt_sxt_cen(index)
INPUT:
item - The SXT index
CALLS: ***
HIS_EXIST, sxt_cen [1], sxt_cen [2]
CALLED BY:
gt_center, gt_corner
OPTIONAL KEYWORD INPUT:
x - If set, just return the x (column) corner
y - If set, just return the y (lines) corner
HISTORY:
Written 5-Jan-94 by M.Morrison
31-Mar-94 (MDM) - Modified print statement
[Previous]
[Next]
NAME:
gt_sxt_roll
PURPOSE:
To return the roll angle of the SXT image relative to solar
north in degrees counter clockwise. Optionally return the
original S/C roll value, or the amount the image was rotated.
METHOD:
It reads the index history file to see what roll correction
has been made and checks the S/C roll database and returns
the difference. If SXT_PREP with /ROLL has been run, then
it should return the value 0.
SAMPLE CALLING SEQUENCE:
solar_north = gt_sxt_roll(index)
sc_roll = gt_sxt_roll(index, /sc)
INPUT:
index - The SXT index
CALLS: ***
HIS_EXIST, get_roll
OPTIONAL KEYWORD INPUT:
sc - If set, just return the S/C roll value (including
the fixed offset between SXT and S/C roll axes)
corr - If set, return the size of the roll that has
already been applied.
In the case of SXT_PREP being used with /ROLL, this
will be the same as the S/C roll value (the value
returned when "/SC" is used)
HISTORY:
Written 5-Jan-94 by M.Morrison
23-Mar-94 (MDM) - Modified the header
- Modification so that /CORR option returned the
proper value when the index does not have a
history record
[Previous]
[Next]
NAME:
gt_temp_ccd
Purpose:
To convert the SXT CCD temperature to
degrees C.
Input:
item - Index structure or just the mail box byte value
The roadmap is not acceptible as input
OPTIONAL INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The CCD temperature, a floating point value or a string
value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
CALLS: ***
POLY, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
GO_FIND_LIM2, get_dc_warm, mk_sd2, mk_sdc [2], mk_sdc [3], mk_sdc [4], mk_sdmi
mk_sfd [1], mk_sfd [2], mk_sfd [3], mk_sfd [4], mk_sff_pair [1], mk_sff_pair [2]
plot_ssl, pr_dates_warm [1], pr_dates_warm [2], sel_dc_image [1]
sel_dc_image [2], sel_dc_image [3], sxl_select, termlite
Example:
t = gt_temp_ccd( index )
t = gt_temp_ccd( index.sxt.temp_ccd )
t = gt_temp_ccd( 200 )
History:
Written 10-Oct-91 by M.Morrison
12-Nov-91 MDM - Modified for more flexible input
[Previous]
[Next]
NAME:
gt_temp_hk
PURPOSE:
To extract and convert the SXT PRT temperatures to degrees C.
CALLING SEQUENCE:
t = gt_temp_hk( index, 0 )
t = gt_temp_hk( ssl_data.avg_temp_hk, 0 )
t = gt_temp_hk( index, 0, title=title )
Input:
item - Index structure or the array of temperatures.
The roadmap is not acceptible as input
itemp - The indicy of the temperature to return (0-15)
CALLS: ***
AHK_CONV, gt_conv2str [1], gt_conv2str [2]
CALLED BY:
plot_ssl
OPTIONAL KEYWORD INPUT:
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The house keeping temperature, a floating point value or
a string value depending on the switches used. It is a vector
if the input is a vector
OPTIONAL KEYWORD OUTPUT:
title - A description of the temperature selected.
History:
Written 24-Apr-92 by M.Morrison
12-Nov-92 (MDM) - Fixed bug - was grabbing TEMP_CCD
[Previous]
[Next]
NAME:
gt_tfss
PURPOSE:
To extract the word corresponding to the TFSS data value
Default output is in arcseconds.
CALLING SEQUENCE:
x = gt_tfss(pnt_data, 0)
y = gt_tfss(pnt_data, 1)
tfss = gt_tfss(ada_data)
METHOD:
The input can be a structure or a scalar. The structure can
be the ADA data record or the PNT record. If the input is the ADA file,
then only the first TFSS value recorded in the major frame is
returned.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
iaxis - Axis to extract (0=x, 1=y)
If not passed, the output is 2xN where N is the number
of datasets passed in.
mask - If set, force the bit mask to be performed (older PNT data
sets were saved incorrectly)
OUTPUT:
returns - The TFSS position in arcsec
CALLS: ***
UNSIGN, tag_index [1], tag_index [2]
HISTORY:
Written 21-Apr-92 by M.Morrison
6-May-92 (MDM) - Added "mask" keyword option
[Previous]
[Next]
NAME:
gt_total_cnts
PURPOSE:
To extract the word corresponding to the BCS total counts (as
derived from the spectra). Default output is cnts/sec.
CALLING SEQUENCE:
x = gt_total_cnts(roadmap)
x = gt_total_cnts(roadmap,1)
x = gt_total_cnts(index,2)
x = gt_total_cnts(index.sxt, /string) ;return variable as string type
METHOD:
The input can be a structure or a scalar. The structure can
be the index, or roadmap, or observing log.
INPUT:
item - A structure or scalar. It can be an array.
OPTIONAL INPUT:
ichan - Channel number to extract (1,2,3,4) - if not present,
the output is an 4xN data array
string - If present, return the string mnemonic (long notation)
short - If present, return the short string mnemonic
spaces - If present, place that many spaces before the output
string.
OUTPUT:
returns - The total counts per sec, a floating point value or a string
value depending on the switches used. It is a vector
if the input is a vector. If no channel was selected,
then the output is a 2-D array (4xN)
OPTIONAL OUTPUT:
header - A string that describes the item that was selected
to be used in listing headers.
title - A string that can be used with a plotting title. If
no channel is specified, then title is an array of 4
elements.
CALLS: ***
gt_conv2str [1], gt_conv2str [2]
CALLED BY:
BCS_24HR_PLOT [1], BCS_24HR_PLOT [3], LCBDA, WBDA [1], WBDA [2], bcs_survey, get_bcs
lcobs, mk_evn [1], mk_evn [2], plott_bda, ploty [1], ploty [2]
HISTORY:
Written 7-Mar-92 by M.Morrison
20-Mar-92 (MDM) - Added "title" option
4-Jun-92 (MDM) - The value being returned was NOT the counts/sec.
The normalization was not being done right.
Previously the value returned was cnts/DGI.
1-Jul-92 (MDM) - Adjusted so that the counts returned were
true counts/sec (perviously the *10 factor
was missing)
24-Nov-92 RDB - Made factor 10 a real to stop overflow...
[Previous]
[Next]
Name: gt_yo_station
Purpose: extract/convert Yohkoh station information from index
Input Parameters:
index - Yohkoh index structure
Calling Sequnce:
station=gt_yo_station(index [,/string] )
CALLS: ***
STR2ARR [1], STR2ARR [2], data_chk [1], data_chk [2], gt_tagval [1], gt_tagval [2]
History:
24-apr-1997 - S.L.Freeland
[Previous]
[Next]
NAME:
gtab_comm
PURPOSE:
Extract the sequence table information for the common table.
CALLING SEQUENCE:
print, gtab_comm(150)
print, gtab_comm(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index and roadmap
entries can be used.
OPTONAL INPUT:
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - A string array with the information on what parameters were
used in the SXT sequence table.
OPTONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
EXTRACT, MASK, gt_filta, gt_filtb, gtab_file
CALLED BY:
FAKE_PATROL, PR_TABLES, gtab_whole, pfi_dominant, rdtbl, sxt_mornint, uvf_interval
HISTORY:
Written Sep-91 by M.Morrison
21-Nov-91 (MDM) - Added "fid" and "itab" options
- Added "ARS Search Wid : '
7-Jul-92 (MDM) - Added printing out comment lines of table load
[Previous]
[Next]
NAME:
gtab_entry
PURPOSE:
Extract the sequence table information for the entry table.
CALLING SEQUENCE:
print, gtab_entry(150)
print, gtab_entry(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index and roadmap
can be used.
OPTONAL INPUT:
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - A string array with the information on what parameters were
used in the SXT sequence table.
OPTONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
gtab_file
CALLED BY:
FIRST_LIGHT [1], FIRST_LIGHT [2], PR_TABLES, gtab_whole, rdtbl
HISTORY:
Written Nov-91 by M.Morrison
21-Nov-91 (MDM) - Added "fid" and "itab" options
7-Jul-92 (MDM) - Added printing out comment lines of table load
[Previous]
[Next]
NAME:
gtab_exp
PURPOSE:
Extract the sequence table information for the default exposure table.
CALLING SEQUENCE:
print, gtab_exp(150)
print, gtab_exp(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index and roadmap
can be used.
OPTONAL INPUT:
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - A string array with the information on what parameters were
used in the SXT sequence table.
OPTONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
EXTRACT, gtab_file
CALLED BY:
gtab_whole
HISTORY:
Written Nov-91 by M.Morrison
21-Nov-91 (MDM) - Added "fid" and "itab" options
7-Jul-92 (MDM) - Added printing out comment lines of table load
[Previous]
[Next]
NAME:
gtab_ffi
PURPOSE:
Extract the sequence table information for an SXT table.
CALLING SEQUENCE:
print, gtab_ffi(150,0)
print, gtab_ffi(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index and roadmap
entries can be used.
ientry0 - Entry table to display. If a structure is passed, this
value is ignored.
OPTONAL INPUT:
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - A string array with the information on what parameters were
used in the SXT sequence table.
OPTONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
EXTRACT, gtab_file, gtab_pf_str
CALLED BY:
PR_TABLES, TERM_IMAGE_ID, gtab_whole, rdtbl
HISTORY:
Written Sep-91 by M.Morrison
21-Nov-91 (MDM) - Fixed extraction of # of loop information
- Added "fid" and "itab" options
7-Jul-92 (MDM) - Added printing out comment lines of table load
7-Dec-93 (MDM) - Changed format of "# Loops" line
[Previous]
[Next]
NAME:
gtab_file
PURPOSE:
Determine what file is needed and read the SXT seqeuence table. It
also returns the entry table that is used.
CALLING SEQUENCE:
print, gtab_pfi(150)
print, gtab_pfi(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index, roadmap
or observing log entries can be used.
If an array is passed in, it only looks at the first structure.
(or)
A string time representation
ientry0 - Entry table to display. If a structure is passed, this
value is ignored.
OPTIONAL INPUT:
dir - The directory where the SXT tables are stored. If
not specified, $DIR_SXT_TABLES is used
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - The file name of the table needed
table - The matrix containing the complete SXT table dump
itab - The table number selected, since the information
might be inside the structure passed.
ientry - The entry table used, since it might be inside the
structure passed.
headline- A 3 element string array with the header line for the table
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], Int2Ex [1], Int2Ex [2]
anytim2ex [1], anytim2ex [2], concat_dir [4], ex2fid [1], ex2fid [2], get_seq_tab
gt_day [1], gt_day [2], gt_entry, gt_seq_tab, gt_time [1], gt_time [2]
CALLED BY:
GTAB_GREP, gtab_comm, gtab_entry, gtab_exp, gtab_ffi, gtab_pfi, gtab_roi, gtab_summary
gtab_whole, rdtbl
HISTORY:
Written Sep-91 by M.Morrison
21-Nov-91 (MDM) - Added "fid" option
6-Dec-91 (MDM) - Changed so that when the structure is passed,
the "fid" option is used (generate a time string
and do not rely on the sequence table number -
it was not reliable)
25-Mar-92 (MDM) - Added option of passing time as a string
7-Jul-92 (MDM) - Added "headline"
28-Aug-92 (MDM) - Added /SEC switch to ex2fid - it was grabbing the
incorrect table (rounding down to 0 sec)
6-May-93 (MDM) - Modified to work with VMS (used CONCAT_DIR)
4-Jan-94 (MDM) - Modified so that when converting the header
information to string type, to check that the
ASCII value is less than 126. Some garbage characters
were hanging up the terminal when displaying them.
[Previous]
[Next]
NAME:
GTAB_GREP
PURPOSE:
make a Unix file with the table headers and grep a string
CATEGORY:
Yohkoh
CALLING SEQUENCE:
gtab_grep, search
INPUTS:
string to search for
(optional) i1, i2 table numbers between which to search. If
you don't set these, you'll have to wait for ten minutes
while it grinds through all of them
OPTIONAL (KEYWORD) INPUT PARAMETERS:
OUTPUTS:
CALLS: ***
gtab_file
COMMON BLOCKS:
SIDE EFFECTS:
makes a file 'table.tmp' in the current directory
RESTRICTIONS:
not compatible with VMS, sorry (could guess that from the name!)
MODIFICATION HISTORY:
HSH, written 20 Apr 1994
HSH, added a print message giving an easier way to do this
[Previous]
[Next]
NAME:
gtab_patrols
PURPOSE:
CATEGORY:
CALLING SEQUENCE:
gtab_patrols, infil_in, qt_filt, fl_filt, qt_dpe, fl_dpe
INPUTS:
OPTIONAL (KEYWORD) INPUT PARAMETERS:
verbose, prints the results
OUTPUTS:
CALLS: ***
rd_tfile [1], rd_tfile [2]
CALLED BY:
PR_PATROLS
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
MODIFICATION HISTORY:
19-Sep-01, written by HSH
[Previous]
[Next]
NAME:
gtab_pf_str
PURPOSE:
Convert the SXT PFI/FFI sequence table to string mnmonics
INPUT:
which_str - 'F' or 'P' for FFI or PFI
seqno - Sequence number 0-12
barr - Binary array holding the sequence table (only
the 24 bytes for the particular sequence)
OUTPUT:
str - Output string
CALLS: ***
MASK, gt_filta, gt_filtb
CALLED BY:
gtab_ffi, gtab_pfi
HISTORY:
Written 1989 by M.Morrison
21-Nov-91 (MDM) - Updated to use filter mnemonics
Also changed notation that flush uses
Also added exposure cadence
21-Apr-92 (MDM) - Fixed bug where PFI AEC and filter
alternation was always showing OFF
[Previous]
[Next]
NAME:
gtab_pfi
PURPOSE:
Extract the sequence table information for an SXT table.
CALLING SEQUENCE:
print, gtab_pfi(150,0)
print, gtab_pfi(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index and roadmap
entries can be used.
ientry0 - Entry table to display. If a structure is passed, this
value is ignored.
OPTONAL INPUT:
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - A string array with the information on what parameters were
used in the SXT sequence table.
OPTONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
EXTRACT, gtab_file, gtab_pf_str
CALLED BY:
PR_TABLES, gtab_whole, rdtbl
HISTORY:
Written Sep-91 by M.Morrison
21-Nov-91 (MDM) - Fixed extraction of # of loop information
- Added "fid" and "itab" options
7-Jul-92 (MDM) - Added printing out comment lines of table load
7-Dec-93 (MDM) - Changed format of "# Loops" line
[Previous]
[Next]
NAME:
gtab_roi
PURPOSE:
Extract the sequence table information for the ROI table.
CALLING SEQUENCE:
print, gtab_roi(150)
print, gtab_roi(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
A structure which has the sequence table and entry table
that is used for a particular image. The index and roadmap
can be used.
OPTONAL INPUT:
fid - The user can specify a specific table by passing the fileid
OUTPUT:
returns - A string array with the information on what parameters were
used in the SXT sequence table.
OPTONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
EXTRACT, gtab_file
CALLED BY:
PR_TABLES, SXT2POS, gtab_whole, rdtbl
HISTORY:
Written Nov-91 by M.Morrison
21-Nov-91 (MDM) - Added "fid" and "itab" options
7-Jul-92 (MDM) - Added printing out comment lines of table load
[Previous]
[Next]
NAME:
gtab_summary
PURPOSE:
To list the headers of the SXT sequence tables
SAMPLE CALLING SEQUENCE:
gtab_summary
gtab_summary, outfil = outfil [,/short]
OPTIONAL INPUT:
sttim - The starting time to search/list tables. If not
passed in then '30-Aug-91' is used
entim - The ending time to search/list tables. If not passed,
then the current date/time is used.
CALLS: ***
anytim [1], anytim [2], anytim [3], anytim [4], anytim [5], anytim2ints [1]
anytim2ints [2], fid2ex [1], fid2ex [2], file_list [1], file_list [2], fmt_tim [1]
fmt_tim [2], gtab_file, sel_timrange [1], sel_timrange [2]
OPTIONAL KEYWORD INPUT:
outfil - The name of the output file. If not passed, then
the file name will be gtab_summary.txt in the default
directory
short - if set, truncate upload and author (fits on small screen)
HISTORY:
Ver 1.0 8-Jul-92 (MDM)
Ver 1.1 29-Apr-93 (MDM) - Modified into a procedure
- Added STTIM and ENTIM options
7-Feb-94 (SLF) - prepended fileid to line per lwa request
14-Feb-94 (SLF) - truncate leading date from headline(1)
add /short (truncate planned upload)
Ver 1.2 7-Mar-95 (MDM) - Changed the way SLF did trimming of the header
information.
[Previous]
[Next]
NAME:
gtab_whole
PURPOSE:
Extract an entire SXT sequence table.
CALLING SEQUENCE:
print, gtab_whole(150)
print, gtab_whole(roadmap(0))
INPUT:
itab0 - Table number to display
(or)
Index or Roadmap entries or time in any format
OPTIONAL INPUT KEYWORD:
fid - Specify specific table fileid
OUTPUT:
Return a string array which contains the whole SXT sequence table.
OPTIONAL OUTPUT:
itab - The table serial number selected
CALLS: ***
gtab_comm, gtab_entry, gtab_exp, gtab_ffi, gtab_file, gtab_pfi, gtab_roi
MODIFICATION HISTORY:
2-Feb-93, J. R. Lemen, Written