[Previous]
[Next]
NAME:
ECI2GEO
PURPOSE:
Convert Earth-centered inertial coordinates to geographic spherical coords
EXPLANATION:
Converts from ECI (Earth-Centered Inertial) (X,Y,Z) rectangular
coordinates to geographic spherical coordinates (latitude, longitude,
altitude). JD time is also needed as input.
ECI coordinates are in km from Earth center.
Geographic coordinates are in degrees/degrees/km
Geographic coordinates assume the Earth is a perfect sphere, with radius
equal to its equatorial radius.
CALLING SEQUENCE:
gcoord=eci2geo(ECI_XYZ,JDtime)
INPUT:
ECI_XYZ : the ECI [X,Y,Z] coordinates (in km), can be an array [3,n]
of n such coordinates.
JDtime: the Julian Day time, double precision. Can be a 1-D array of n
such times.
KEYWORD INPUTS:
None
OUTPUT:
a 3-element array of geographic [latitude,longitude,altitude], or an
array [3,n] of n such coordinates, double precision
CALLS: ***
CT2LST
CALLED BY:
ECI2GEOGRAPHIC
COMMON BLOCKS:
None
PROCEDURES USED:
CT2LST - Convert Local Civil Time to Local Mean Sidereal Time
EXAMPLE:
IDL> gcoord=eci2geo([6378.137+600,0,0], 2452343.38982663D)
IDL> print,gcoord
0.0000000 232.27096 600.00000
(The above is the geographic direction of the vernal point on
2002/03/09 21:21:21.021, in geographic coordinates. The chosen
altitude was 600 km.)
gcoord can be further transformed into geodetic coordinates (using
geo2geodetic.pro) or into geomagnetic coordinates (using geo2mag.pro)
MODIFICATION HISTORY:
Written by Pascal Saint-Hilaire (Saint-Hilaire@astro.phys.ethz.ch) on
2001/05/13
Modified on 2002/05/13, PSH : vectorization + use of JD times
[Previous]
[Next]
NAME:
ECI2GEOGRAPHIC
PURPOSE:
Wrapper for the eci2geo.pro routine, for SSW users of the ANYTIM time format.
Converts from ECI (Earth-Centered Inertial) (X,Y,Z) rectangular coordinates to
geographic spherical coordinates (latitude, longitude, altitude).
A time is also needed.
ECI coordinates are in km from Earth center.
Geographic coordinates are in degrees/degrees/km
Geographic coordinates assume the Earth is a perfect sphere, with radius equal to its equatorial radius.
CALLING SEQUENCE:
gcoord=eci2geographic(ECI_XYZ,time)
INPUT:
ECI_XYZ : the ECI [X,Y,Z] coordinates (in km), can be an array [3,n] of n such coordinates.
time: in any ANYTIM format, can be a 1-D array of n such times.
KEYWORD INPUTS:
None
OUTPUT:
a 3-element array of geographic [latitude,longitude,altitude], or an array [3,n] of n such coordinates
CALLS: ***
ECI2GEO, anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
COMMON BLOCKS:
None
RESTRICTIONS:
None
EXAMPLE:
IDL> gcoord=eci2geographic([6378.137+600,0,0],'2002/03/09 21:21:21.021')
IDL> print,gcoord
0.0000000 232.27096 600.00000
(The above is also the geographic direction of the vernal point on
2002/03/09 21:21:21.021, in geographic coordinates.)
gcoord can be further transformed into geodetic coordinates (using geo2geodetic.pro)
or into geomagnetic coordinates (using geo2mag.pro)
HESSI trajectory:
IDL> oso=hsi_obs_summary()
IDL> oso->set,obs_time_interval='2002/04/21 '+['00:30:00','01:30:00']
IDL> eph_times=oso->getdata(class_name='ephemeris',/time)
IDL> eph=oso->getdata(class_name='ephemeris')
IDL> gcoord=eci2geographic(eph(0:2,*),eph_times)
IDL> map_set,/cont,/mercator,/iso
IDL> oplot,gcoord(1,*),gcoord(0,*)
MODIFICATION HISTORY:
Written by Pascal Saint-Hilaire (Saint-Hilaire@astro.phys.ethz.ch) on 2001/05/14
[Previous]
[Next]
Name: edge_products
Purpose: From a vector of contiguous channel boundaries return the
commonly used quantities for plotting and scaling.
Category:
GEN, SPECTRA
Input: Edges -if 1d, contiguous channel boundaries, n+1 values for n channels
if 2d, 2xn, [lo(i),hi(i)], etc., assumed contiguous for
calculating edges_1
Output:
Mean - arithmetic mean of boundaries
Gmean - geometric mean
width - absolute difference between upper and lower edges
edges_2 - 2xn array of edges [lo(i), hi(i)], etc.
edges_1 - array of n+1 edges of n contiguous channels
Keyword Input
EPSILON - If the absolute relative difference is less than epsilon
then two numbers are considered to be equal and a new bin is not required under
the contiguous requirement. If epsilon isn't passed but CONTIGOUS is set it
attempts to construct an epsilon based on the average relative difference between
adjacent bins, it takes that value and multiplies it by 1e-5 and limits that to
1e-6
CONTIGUOUS - force all edges to be contiguous, including edges_1
Mod. History:
ras, 21-oct-93
8-dec-2001, richard.schwartz@gsfc.nasa.gov, added CONTIGUOUS
added protection against degenerate entry of single value for edges,
clearly edges_2 and width have no meaning, but are set to edges and 0.0 respectively
25-aug-2006, ras, added epsilon and default epsilon as test
to differentiate real numbers. If the absolute relative difference is less than epsilon
then two numbers are considered to be equal and a new bin is not required under
the contiguous requirement
CALLS:
CALLED BY
AXIS__DEFINE [2], BATSE_LAD_DRM, BATSE_MATCH_SEQUENCE, BATSE_SPEC_DRM
BATSE_SPEC_MODEL, BPOW, CALIBRATE [2], CAL_SHER, CONT_EDGES, DECOMPOSE_BATSE_DRM
DISCLA_EDGES, DISCP_RESP, DISCSC_PL, DISCSP_BANDS, Energy_res [1], Energy_res [2]
FLARE_XRAY_MODEL, F_3POW, F_BPOW_THICK, F_COMPOSITE, F_CON_LIN, F_ION, F_MULTI_SPEC
F_NUCLEAR, F_POSITRONIUM, F_POW, F_TH_NT, F_VTH_ION, Fits_spectra [1]
Fits_spectra [2]
Flux model of a thermal bremsstrahlung plus broken powerlaw
Flux model of thermal bremsstrahlung plus thintarget broken, GAUSS_INTG
GET_EDGES, GET_HXRBS_FITS, GE_WINDOW [1], GRS_ENERGY, GRS_RESP
HESSI BINNED EVENTLIST CLASS DEFINITION
HESSI FRAMEWORK TEMPLATE CLASS [2], HESSI FRAMEWORK TEMPLATE CLASS [3]
HESSI_FLARE_SPECTRUM, HESSI_MODEL_COUNTS, HESSI_PHA, HESSI_READ_SPEC
HSI_COUNTS_PER_MODEL, HSI_CSPECTRUM_DIST, HSI_DRM_MOD CLASS
HSI_DRM_MOD_CONTROL__DEFINE, HSI_EVENTLIST_TO_SPECTROGRAM [2]
HSI_FLARE_LIST_ATTENXC, HSI_HIST_GROUP, HSI_LIVETIME_SIM, HSI_SPEC2CDIST
HSI_SPECTROGRAMACCBIN [5], HSI_SPECTROGRAMCHAN_OVERLAP_FIX
HSI_SPECTROGRAM_DECIM_CORRECT, HSI_SPECTROGRAM_DECIM_TABLE, HXT_CAL_DRM [1]
HXT_CAL_DRM [2], HXT_CAL_FIX [1], HXT_CAL_FIX [2], INTERP2INTEG, Intervals [1]
Intervals [2], LAD_PHA_EDGES, LAD_RESP, LINE_COMPLEX, LIVETIME [1], Load_sher
MAKE_GOES_RESP, MAP_DISCLA2CONT, MAP_MATRIX, MK_MER_CONT, Modify_sled [2]
NEAR_PC_RESP [1], NEAR_PC_RESP [2], NEAR_PIN_RESP [1], NEAR_PIN_RESP [2]
NEW_FIG4_INPUTS, PHOTON_MODEL, PULSE_SPREAD, Pileup_countrate_Build_Piler
Pileup_countrate_PULSE_CONVOLVE, RD_NEAR_PIN [1], RD_NEAR_PIN [2]
READ_HXRS_4_SPEX [1], READ_HXRS_4_SPEX [2], READ_HXRS_4_SPEX [3]
RESOLVE_NEW_OBS, RESP_CALC response calculation, ROUTINE_NAME [1]
SPECTROGRAM CLASS DEFINITION, SPEX_COMMONS [2], SPEX_COMMONS [4]
SPEX_DATA_GENX [1], SPEX_DATA_GENX [2], SPEX_DRM_GENX [1], SPEX_DRM_GENX [2]
SPEX_FLUX_TIME [1], SPEX_FLUX_TIME [2], SPEX_PROC [1], SPEX_PROC [2]
SPEX_THISTORY [1], SPEX_THISTORY [2], SSW_REBIN, Shers_load [1], Vlth
countsmod_plot [1], countsmod_plot [2], drm_4_spex [1], drm_4_spex [2], edge2bin
energy_res class, f_drm_mod, f_pileup_mod, f_vth_thick, fcount_rate [1]
fcount_rate [2], get_conversion [1], get_conversion [2], get_edge_products
get_slider, help_merge [1], help_merge [2], hessi_build_srm
hessi_correct_pileup [1], hessi_correct_pileup [2], hessi_display_diag
hessi_display_srm, hessi_pileup_sim, hsi_find_pli, hsi_get_e_edges [1]
hsi_livecorr_event, hsi_rebinner, hsi_rm_atten, hsi_rm_blanket, hsi_rm_detmod
hsi_rm_detresol, hsi_rm_earth, hsi_rm_elecresol, hsi_rm_grid2scat, hsi_rm_lld
hsi_rm_spacecraft, hsi_spectrogramACCBIN [2], hsi_spectrogram__define [1]
hsi_spectrogram__define [2], hsi_spectrogram__define [3]
hsi_spectrogram__get_obs [1], hsi_spectrogram__livetime [1]
hsi_spectrum__filewrite, hsi_subdivide_bins, hxrbs_response, hxrs_response [1]
hxrs_response [2], hxrs_response [3], merge_batse_photons, modify_sled [1]
out_spectra_4_designer, rd_hxt_drm [1], rd_hxt_drm [2], read_4_spex [1]
read_4_spex [2], read_batse_4_spex [1], read_batse_4_spex [2]
read_hirex_4_spex [1], read_hirex_4_spex [2], read_smm_4_spex [1]
read_smm_4_spex [2], read_yohkoh_4_spex [1], read_yohkoh_4_spex [2], set_field
spec_plot [1], spec_plot [2], spec_plot [3], spec_plot [4], spectral_ratio [1]
spectral_ratio [2], spex_delete [1], spex_delete [2], spex_hold [1]
spex_hold [2], spex_intervals [1], spex_intervals [2], spex_merge [1]
spex_merge [2], spex_source [1], spex_source [2], spex_spec_plot [1]
spex_spec_plot [2], spex_spec_plot [3], spex_spec_plot [4], ssw_rebin_assign
ssw_rebinner, wbs_response [1], wbs_response [2], where_are [1], where_are [2]
[Previous]
[Next]
Project : HESSI
Name : EIT__DEFINE
Purpose : Define an EIT data object
Category : Ancillary GBO Synoptic Objects
Syntax : IDL> c=obj_new('eit')
CALLS: ***
ADD_PATH [1], ADD_PATH [2], ADD_TAG [1], ADD_TAG [2], ANYTIM2TAI, ANYTIM2UTC [1]
ANYTIM2UTC [2], COMDIM, CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3]
EIT::CLEANUP, EIT::COLORS, EIT::DOWNLOAD, EIT::FLUSH, EIT::GET_NAME
EIT::HAVE_EIT_CAL, EIT::HAVE_EIT_PATH, EIT::HELP, EIT::INIT, EIT::IS_LEVEL0
EIT::LATEST, EIT::LIST, EIT::MREADFITS, EIT::PREP, EIT::READ, EIT::SEARCH
EIT::TEMP_DIR, EIT::TIMES, EIT_PARTIAL, EXIST, FILE_SINCE, FIND_COMPRESSED
GET_TEMP_DIR, HAVE_PROC, HAVE_TAG, IS_BLANK, IS_DIR, IS_STRING, LOCAL_NAME, MK_DIR
MRD_HEAD, NEAR_TIME, SINCE_VERSION [1], SINCE_VERSION [2], STC_KEY, TEST_DIR
TIME2FID, TRIM, VALID_TIME, VSO_SEARCH, WRITE_DIR, concat_dir [4], curdir [1]
curdir [2], eit_files, eit_server, fitshead2struct, get_def_times, get_uniq
is_number [1], is_number [2], is_struct, rem_blanks, str_replace [1]
str_replace [2]
History : Written 17 Feb 2001, D. Zarro, EIT/GSFC
Modified 17 Mar 2004, Zarro (L-3Com/GSFC) - call EIT_COLORS
Modified 9 Jun 2004, Gallagher (L-3Com/GSFC) - added ::LATEST
Modified 28 Nov 2005, Zarro (L-3Com/GSFC)
- added VSO search capability
Modified 2 Sep 2006, Zarro (ADNET/GSFC) - added color protection
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : HESSI
Name : EIT_COPY
Purpose : process & copy latest EIT FITS files to HESSI archive.
Category : synoptic gbo
Syntax : IDL> eit_copy,tstart,tend,back=back,_extra=extra
Inputs : TSTART, TEND = start and end times to consider
[def = current day]
Outputs : EIT FITS files.
Keywords : BACK = days to look back
COUNT = # of files processed
CLOBBER = set to clobber existing files
PREFLARE = minutes of preflare data to include [def=5]
POSTFLARE = minutes of postflare data to include [def=10]
BY_TIME = process all times between TSTART/TEND
[def is process overlapping flare times]
GOES = key off GOES events instead of RHESSI
THRESHOLD = peak count rate threshold for RHESSI-based
selection
GRID = same as /BY_TIME, but select files relative to
a time grid [def = hourly]
CALLS: ***
ANYTIM2TAI, ANYTIM2UTC [1], ANYTIM2UTC [2], APPEND_ARR, ARR2STR [1], Arr2Str [2]
CHKLOG [1], CHKLOG [2], CHMOD, CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3]
DPRINT, ESPAWN, EXIST, IS_BLANK, IS_STRING, LOC_FILE [1], LOC_FILE [2], LOC_FILE [3]
MK_SUB_DIR, OS_FAMILY, RD_GEV, TEST_DIR, TRIM, TRIM2, WHERE_NEAR, WHERE_TIMES
anytim [1], anytim [2], anytim [3], anytim [4], anytim [5], concat_dir [4]
decode_gev, eit_files, get_def_times, get_uniq, hsi_read_flarelist, is_number [1]
is_number [2], is_struct, timegrid
Restrictions: Unix only
History : Written 14 Aug 2001, D. Zarro (EITI/GSFC)
Modified 3 Sep 2006, Zarro (ADNET/GSFC)
- added /GRID
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : RHESSI
Name : EIT_GBO
Purpose : update Max Millennium catalog with EIT flare observations
Category : synoptic gbo
Syntax : IDL> eit_gbo,gev
Inputs : GEV = GOES events structure from RD_GEV
Keywords : REPROCESS = reprocess existing entries
VERBOSE = set verbose output
WITHIN = record if nearest EIT observation occurs within
this amount of hours relative to GOES peak.
CALLS: ***
ANYTIM2TAI, ANYTIM2UTC [1], ANYTIM2UTC [2], ARR2STR [1], Arr2Str [2], CHKLOG [1]
CHKLOG [2], CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], DEF_GBO, EXIST
FILE_BREAK, IS_BLANK, LIST_NAR, LOC_FILE [1], LOC_FILE [2], LOC_FILE [3], MK_DIR
PARSE_TIME, PURGE_GBO, RESTORE_GBO, SYNOP_SERVER, TRIM, TRIM2, UPDATE_GBO, WRITE_DIR
concat_dir [4], decode_gev, eit_files, gt_day [1], gt_day [2], gt_time [1]
gt_time [2], is_number [1], is_number [2], is_struct
CALLED BY:
UPDATE_MM
History : Written 10 March 2003, D. Zarro (EER/GSFC)
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : HESSI
Name : EIT_PARTIAL
Purpose : Update EIT INDEX for partial
fov images with instrument pointing
Category : Ancillary GBO Synoptic
Syntax : IDL> index=eit_partial(index,header=header)
Inputs : INDEX = index structure
Outputs : INDEX with updated CRPIX/CRVAL/XCEN/YCEN values
Keywords : HEADER with updated CRPIX/CRVAL/XCEN/YCEN values
CALLS: ***
COMDIM2, COMP_FITS_CRPIX, EXIST, HAVE_PROC, HAVE_TAG, REP_TAG_VALUE, STC_KEY
is_struct, struct2fitshead
CALLED BY:
EIT__DEFINE
History : Written 20 March 2002, D. Zarro, L-3Com/GSFC
Modified 13 June 2005, Zarro (L-3Com/GSFC)
- added check for header
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : SOHO
Name : EIT_QUALITY
Purpose : flag problematic EIT file
Category : synoptic gbo
Syntax : IDL> flag=eit_quality(file)
Inputs : FILE = EIT FITS file
Outputs : 1 if good quality science data, 0 if problem with EIT files (camera err, engineering, etc)
CALLS: ***
ARR2STR [1], Arr2Str [2], IS_STRING, LOC_FILE [1], LOC_FILE [2], LOC_FILE [3]
read_eit
History : Written 20 Dec 2005, D. Zarro (EITI/GSFC)
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : eit
Name : eit_server
Purpose : return first available eit data server
Category : synoptic sockets
Inputs : None
Outputs : SERVER = eit data server name
Keywords : NETWORK = 1 if network is up
PATH = top data path
NO_CHECK= skip network check
FULL = include HTTP in server name
CALLS: ***
HAVE_NETWORK
CALLED BY:
EIT__DEFINE
History : 15-Jan-2003, D.M. Zarro (EER/GSFC) Written
09-Jun-2004, P.T. Gallagher (L-3 Com/GSFC)
Converted sxi_server to eit_server
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Project : SOHO - CDS
Name : EIT_SYS
Purpose : setup special color system variables for EIT wavelengths
Category : utility
Syntax : IDL> eit_sys
Inputs : None
Outputs : None
CALLS: ***
GET_USER_ID
CALLED BY:
IMAGE_TOOL
Side Effects: !304,!195,!284 & !171 are defined
History : 11-Jan-2002, D. Zarro (EITI/GSFC). Written
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
ELLIPSE
PURPOSE:
Return function value and its derivatives of an ellipse
EXPLANATION:
CALLING SEQUENCE:
ELLIPSE, x, a, y, dyda
INPUTS:
X -- A two element vector for position of the point on the ellipse
A -- A four-element vector representing central position (x0, y0) and
semi-major and -minor axes (a0, b0) of the ellipse
OPTIONAL INPUTS:
None.
OUTPUTS:
Y -- Function value of the ellipse equation.
DYDA -- Derivatives of the function
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
None.
CALLS:
None.
CALLED BY:
XFLOW_DIAG [1], xflow_diag [2]
COMMON BLOCKS:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
CATEGORY:
Misc, user-supplied function
PREVIOUS HISTORY:
Written November 22, 1994, Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
VERSION:
Version 1, November 22, 1994
[Previous]
[Next]
NAME:
EMENU
PURPOSE:
same as WMENU but can handle almost infinite size lists
CALLING SEQUENCE:
e=emenu(list,mtitle=mtitle,init=init,imax=imax)
INPUTS:
list=string array of menu items
OUTPUTS:
index of selected menu item with 0 denoting first item
KEYWORDS:
Same as WMENU, but with IMAX and MTITLE extra
IMAX = size of submenu blocks into which LIST is subdivided [def=50]
MTITLE = optional string title for menu, may be an array
(NB: MTITLE is kept separate from LIST elements, unlike in WMENU)
CALLS: ***
CHECKVAR [1], checkvar [2]
CALLED BY:
CAL_SHER, FILE_SEARCHER [1], FILE_SEARCHER [2], SPEX_SAVE_DATA [1]
SPEX_SAVE_DATA [2], plotfda, rdimg, spec_plot [1], spec_plot [2], spec_plot [3]
spec_plot [4], spex_intervals [1], spex_intervals [2], spex_spec_plot [1]
spex_spec_plot [2], spex_spec_plot [3], spex_spec_plot [4]
PROCEDURE:
if !D.NAME eq 'X' then uses WMENU on subdivisions of LIST to
avoid hitting internal hard limit of WMENU.
If X-windows not available, then items are listed in blocks of 20.
MODIFICATION HISTORY:
Written by DMZ (ARC, Mar'91)
mod, ras, 20-aug-94, allow mtitle to be a string array
[Previous]
[Next]
Project : SOHO - CDS
Name :
ENABLEFLAG
Purpose :
Reenable a previously set but disabled image display flag.
Explanation :
Reenables one of the previously set flag fields in the !IMAGE
structure. Only use this routine if the value has already been set by
SETFLAG, but the value was disabled with UNSETFLAG.
Keywords that take only true/false values, such as "NOBOX", are
controlled solely by the SETFLAG and UNSETFLAG routines.
Use :
ENABLEFLAG, /Keyword, ...
Use only the /KEYWORD form for the keywords. Do not use KEYWORD=VALUE.
Inputs :
None. Only keyword parameters are used by this routine.
Opt. Inputs :
Noen.
Outputs :
None.
Opt. Outputs:
None.
Keywords :
MISSING = Value flagging missing pixels. These points are scaled to
zero. Ignored if NOSCALE is set.
SIZE = If passed and positive, then used to determine the scale of
the image.
XALIGN = Alignment within the image display area. Ranges between 0
(left) to 1 (right). Default is 0.5 (centered).
YALIGN = Alignment within the image display area. Ranges between 0
(bottom) to 1 (top). Default is 0.5 (centered).
RELATIVE = Size of area to be used for displaying the image, relative
to the total size available. Must be between 0 and 1.
Default is 1. Passing SIZE explicitly will override this
keyword.
MAX = The maximum value to be considered in scaling images, as
used by BYTSCL.
MIN = The minimum value to be considered in scaling images, as
used by BYTSCL.
VELOCITY = If set then the MIN and MAX values pertain to velocity
images rather than intensity images. (An alternate way to
do the same thing is to use the keywords VMIN and VMAX.)
TOP = The maximum value of the scaled image array, as used by
BYTSCL.
BOTTOM = The minimum value of the scaled image array, as used by
BYTSCL.
Calls : ***
TAG_EXIST [1], TAG_EXIST [2]
Common :
None.
Restrictions:
In general, the SERTS image display routines use several non-standard
system variables. These system variables are defined in the procedure
IMAGELIB. It is suggested that the command IMAGELIB be placed in the
user's IDL_STARTUP file.
Some routines also require the SERTS graphics devices software,
generally found in a parallel directory at the site where this software
was obtained. Those routines have their own special system variables.
Side effects:
None.
Category :
Utilities, Image_display.
Prev. Hist. :
William Thompson, June 1991.
W.T.T., Nov. 1991, added keywords MIN, MAX, VMIN, VMAX, and TOP.
W.T.T., May 1992, added VELOCITY keyword, and made VMIN, VMAX alternate
format.
William Thompson, August 1992, renamed BADPIXEL to MISSING.
Written :
William Thompson, GSFC, June 1991.
Modified :
Version 1, William Thompson, GSFC, 13 May 1993.
Incorporated into CDS library.
Version 2, William Thompson, GSFC, 3-Jan-2006
Added keyword BOTTOM
Version :
Version 2, 3-Jan-2006
[Previous]
[Next]
PROJECT:
NAME:
energy_res class
PURPOSE:
Compute pulse spread response matrix
CATEGORY:
ssw/gen/idl/util
CONTRUCTION:
o = Obj_New( 'energy_res' )
or
o = energy_res( )
INPUT (CONTROL) PARAMETERS:
Defined in {energy_res_control}
ein: ptr_new(), $ ;Energy input edges
eout: ptr_new(),$ ;Energy output edges
e_vs_fwhm: ptr_new(), $ ;energy for fwhm array
fwhm_vs_e: ptr_new(), $ ;fwhm as a function of E_VS_FWHM.
sig_lim: 0.0 } ;Integration limit in sigma
DISCUSSION
While designed to provide a module for detector resolution broadening it can
be used more generally. This creates a matrix with a Gaussian response
for each output channel. The FWHM can obey any functional form desired as
it can be given explicitly by the E_VS_FWHM and FWHM_VS_E control parameters
CALLS: ***
ENERGY_RES::INIT, ENERGY_RES::PROCESS, ENERGY_RES_CONTROL
ENERGY_RES_CONTROL__DEFINE, ENERGY_RES_INFO__DEFINE, ENERGY_RES_TEST
ENERGY_RES__DEFINE, F_DIV, GET_EDGES, INTERPOL, edge_products
SEE ALSO:
Requires FRAMEWORK, energy_res_control, energy_res_control__define
energy_res_info__define
HISTORY:
6-jul-2006, richard.schwartz@gsfc.nasa.gov ; Based on pulse_spread
[Previous]
[Next]
Project:
XRAY
NAME:
Energy_res
PURPOSE:
This procedure generates a matrix of gaussian pulse-shapes which can
then multiply a matrix of energy-losses to form a full pulse-height
matrix.
CATEGORY:
MATH, CALIBRATION, INSTRUMENT, DETECTORS, RESPONSE, SPECTROSCOPY
CALLING SEQUENCE:
PULSE_SPREAD, INPUT, PSM, INMATRIX, OUTMATRIX
CALLED BY:
HESSI FRAMEWORK TEMPLATE CLASS [2], HESSI FRAMEWORK TEMPLATE CLASS [3]
HSI_DRM_MOD CLASS, HSI_DRM_MOD_CONTROL__DEFINE, SOXS_CZT_DRM, SOXS_DRM
EXAMPLES:
pulse_spread, input_psm, pulse_shape, eloss_mat.eloss_mat, drm
CALLS:
CHKARG, F_DIV, edge_products
INPUTS:
OPTIONAL INPUTS:
OUTPUTS:
PSM - pulse-shape matrix, square or SPARSE
OPTIONAL OUTPUTS:
KEYWORDS:
SPARSE - if set, then psm is a sparse matrix
COMMON BLOCKS:
none
SIDE EFFECTS:
none
RESTRICTIONS:
none
PROCEDURE:
The GAUSSINT function is used to construct the point-spread function. GAUSSINT is
the integral over the normally used GAUSSIAN function and is the correct function
where the Gaussian is a valid approximation only when the output channels are
narrow wrt the resolution. Also, if INMATRIX is given, an efficient matrix
multiplication is performed on large matrices, multiplying only over the
non-zero elements of INMATRIX, useful when INMATRIX is mainly the photoefficiency
without a Compton tail.
MODIFICATION HISTORY:
16-jun-2006, ras
[Previous]
[Next]
Project : SDAC
Name : EPLOT
Purpose : Overplot x and y error bars on a previously drawn plot.
Use : EPLOT,X,Y, EX=EX,EY=EY
Inputs : X,Y = vectors values
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords :
EX = error in x
EY = error in y
[2-d array where 1st column is + error, 2nd column is - error]
/UPPER = plot positive errors only
/LOWER = plot negative errors only
COLOR = color for error bars
NOCLIP = set to not clip off at plot boundaries
Explanation :
Error bars are drawn for each element.
If input errors are 1-d, then they are concatanated to 2-d
Calls : ***
CHKARG, DATATYPE [1], DATATYPE [2], DATATYPE [3], OUTPLOT [1], OUTPLOT [2]
OUTPLOT [3]
CALLED BY:
ACRIM, ACRIM_EV, ACRIM_OUT, PLOTSPEC, PLOT_SPEC [1], SPEX_THISTORY [1]
SPEX_THISTORY [2], bsc_spec_plot [1], bsc_spec_plot [2], plotltc [1]
plotltc [2], spec_plot [1], spec_plot [2], spec_plot [3], spec_plot [4]
Common : None.
Restrictions:
Initial call to plot must be made to establish scaling
Side effects: None.
Category : Graphics
Prev. Hist. :
Jan'91, DMZ, (ARC) -- written
Sep'93, DMZ -- added Yohkoh index option for x input
Oct'93, DMZ -- added option for entering single vectors
Mar'98, DMZ -- added UTPLOT keyword
Version: 1
[Previous]
[Next]
NAME:
EQ2HOR
PURPOSE:
Convert celestial (ra-dec) coords to local horizon coords (alt-az).
CALLING SEQUENCE:
eq2hor, ra, dec, jd, alt, az, [ha, LAT= , LON= , /WS, OBSNAME= , $
/B1950 , PRECESS_= 0, NUTATE_= 0, REFRACT_= 0, $
ABERRATION_= 0, ALTITUDE= , /VERBOSE, _EXTRA= ]
DESCRIPTION:
This is a nice code to calculate horizon (alt,az) coordinates from equatorial
(ra,dec) coords. It is typically accurate to about 1 arcsecond or better (I
have checked the output against the publicly available XEPHEM software). It
performs precession, nutation, aberration, and refraction corrections. The
perhaps best thing about it is that it can take arrays as inputs, in all
variables and keywords EXCEPT Lat, lon, and Altitude (the code assumes these
aren't changing), and uses vector arithmetic in every calculation except
when calculating the precession matrices.
INPUT VARIABLES:
RA : Right Ascension of object (J2000) in degrees (FK5); scalar or
vector.
Dec : Declination of object (J2000) in degrees (FK5), scalar or vector.
JD : Julian Date [scalar or vector]
CALLS: ***
ADSTRING, CO_ABERRATION, CO_NUTATE, CO_REFRACT, CT2LST, HADEC2ALTAZ, OBSERVATORY
PRECESS
CALLED BY:
atmospheric_refraction
Note: if RA and DEC are arrays, then alt and az will also be arrays.
If RA and DEC are arrays, JD may be a scalar OR an array of the
same dimensionality.
OPTIONAL INPUT KEYWORDS:
lat : north geodetic latitude of location in degrees
lon : EAST longitude of location in degrees (Specify west longitude
with a negative sign.)
/WS : Set this to get the azimuth measured westward from south (not
East of North).
obsname: Set this to a valid observatory name to be used by the
astrolib OBSERVATORY procedure, which will return the latitude
and longitude to be used by this program.
/B1950 : Set this if your ra and dec are specified in B1950, FK4
coordinates (instead of J2000, FK5)
precess_ : Set this to 1 to force precession [default], 0 for no
precession correction
nutate_ : Set this to 1 to force nutation [default], 0 for no nutation.
aberration_ : Set this to 1 to force aberration correction [default],
0 for no correction.
refract_ : Set to 1 to force refraction correction [default], 0 for no
correction.
altitude: The altitude of the observing location, in meters. [default=0].
verbose: Set this for verbose output. The default is verbose=0.
_extra: This is for setting TEMPERATURE or PRESSURE explicity, which are
used by CO_REFRACT to calculate the refraction effect of the
atmosphere. If you don't set these, the program will make an
intelligent guess as to what they are (taking into account your
altitude). See CO_REFRACT for more details.
OUTPUT VARIABLES: (all double precision)
alt : altitude (in degrees)
az : azimuth angle (in degrees, measured EAST from NORTH, but see
keyword WS above.)
ha : hour angle (in degrees) (optional)
DEPENDENCIES:
NUTATE, PRECESS, OBSERVATORY, SUNPOS, ADSTRING() (from the astrolib)
CO_NUTATE, CO_ABERRATION, CO_REFRACT, ALTAZ2HADEC
BASIC STEPS
Apply refraction correction to find apparent Alt.
Calculate Local Mean Sidereal Time
Calculate Local Apparent Sidereal Time
Do Spherical Trig to find apparent hour angle, declination.
Calculate Right Ascension from hour angle and local sidereal time.
Nutation Correction to Ra-Dec
Aberration correction to Ra-Dec
Precess Ra-Dec to current equinox.
CORRECTIONS I DO NOT MAKE:
* Deflection of Light by the sun due to GR. (typically milliarcseconds,
can be arseconds within one degree of the sun)
* The Effect of Annual Parallax (typically < 1 arcsecond)
* and more (see below)
TO DO
* Better Refraction Correction. Need to put in wavelength dependence,
and integrate through the atmosphere.
* Topocentric Parallax Correction (will take into account elevation of
the observatory)
* Proper Motion (but this will require crazy lookup tables or something).
* Difference between UTC and UT1 in determining LAST -- is this
important?
* Effect of Annual Parallax (is this the same as topocentric Parallax?)
* Polar Motion
* Better connection to Julian Date Calculator.
EXAMPLE
Find the position of the open cluster NGC 2264 at the Effelsburg Radio
Telescope in Germany, on June 11, 2023, at local time 22:00 (METDST).
The inputs will then be:
Julian Date = 2460107.250
Latitude = 50d 31m 36s
Longitude = 06h 51m 18s
Altitude = 369 meters
RA (J2000) = 06h 40m 58.2s
Dec(J2000) = 09d 53m 44.0s
IDL> eq2hor, ten(6,40,58.2)*15., ten(9,53,44), 2460107.250d, alt, az, $
lat=ten(50,31,36), lon=ten(6,51,18), altitude=369.0, /verb, $
pres=980.0, temp=283.0
The program produces this output (because the VERBOSE keyword was set)
Latitude = +50 31 36.0 Longitude = +06 51 18.0
Julian Date = 2460107.250000
Ra, Dec: 06 40 58.2 +09 53 44.0 (J2000)
Ra, Dec: 06 42 15.7 +09 52 19.2 (J2023.4422)
Ra, Dec: 06 42 13.8 +09 52 26.9 (fully corrected)
LMST = +11 46 42.0
LAST = +11 46 41.4
Hour Angle = +05 04 27.6 (hh:mm:ss)
Az, El = 17 42 25.6 +16 25 10.3 (Apparent Coords)
Az, El = 17 42 25.6 +16 28 22.8 (Observer Coords)
Compare this with the result from XEPHEM:
Az, El = 17h 42m 25.6s +16d 28m 21s
This 1.8 arcsecond discrepancy in elevation arises primarily from slight
differences in the way I calculate the refraction correction from XEPHEM, and
is pretty typical.
AUTHOR:
Chris O'Dell
Univ. of Wisconsin-Madison
Observational Cosmology Laboratory
Email: odell@cmb.physics.wisc.edu
[Previous]
[Next]
NAME:
EQPOLE
PURPOSE:
Convert RA and Dec to X,Y using an equal-area polar projection.
EXPLANATION:
The output X and Y coordinates are scaled to be between
-90 and +90 to go from equator to pole to equator. Output map points
can be centered on the north pole or south pole.
CALLING SEQUENCE:
EQPOLE, L, B, X, Y, [ /SOUTHPOLE ]
INPUTS:
L - longitude - scalar or vector, in degrees
B - latitude - same number of elements as RA, in degrees
OUTPUTS:
X - X coordinate, same number of elements as RA. X is normalized to
be between -90 and 90.
Y - Y coordinate, same number of elements as DEC. Y is normalized to
be between -90 and 90.
KEYWORDS:
/SOUTHPOLE - Keyword to indicate that the plot is to be centered
on the south pole instead of the north pole.
REVISION HISTORY:
J. Bloch LANL, SST-9 1.1 5/16/91
Converted to IDL V5.0 W. Landsman September 1997
CALLED BY
EQPOLE_GRID
[Previous]
[Next]
NAME:
EQPOLE_GRID
PURPOSE:
Produce an equal area polar projection grid overlay
EXPLANATION:
Grid is written on the current graphics device using the equal area
polar projection. EQPOLE_GRID assumes that the output plot
coordinates span the x and y ranges of -90 to 90 for a region that
covers the equator to the chosen pole. The grid is assumed to go from
the equator to the chosen pole.
CALLING SEQUENCE:
EQPOLE_GRID[,DLONG,DLAT,[/SOUTHPOLE, LABEL = , /NEW, _EXTRA=]
INPUTS:
DLONG = Optional input longitude line spacing in degrees. If left
out, defaults to 30.
DLAT = Optional input lattitude line spacing in degrees. If left
out, defaults to 30.
INPUT KEYWORDS:
/SOUTHPOLE = Optional flag indicating that the output plot is
to be centered on the south rather than the north
pole.
LABEL = Optional flag for creating labels on the output
grid on the prime meridian and the equator for
lattitude and longitude lines. If set =2, then
the longitude lines are labeled in hours and minutes.
CHARSIZE = If /LABEL is set, then CHARSIZE specifies the size
of the label characters (passed to XYOUTS)
CHARTHICK = If /LABEL is set, then CHARTHICK specifies the
thickness of the label characters (passed to XYOUTS)
/NEW = If this keyword is set, then EQPOLE_GRID will create
a new plot, rather than overlay an existing plot.
Any valid keyword to OPLOT such as COLOR, LINESTYLE, THICK can be
passed to AITOFF_GRID (though the _EXTRA facility) to to specify the
color, style, or thickness of the grid lines.
OUTPUTS:
Draws grid lines on current graphics device.
CALLS: ***
EQPOLE, SIXTY
EXAMPLE:
Create a labeled equal area projection grid of the Galaxy, centered on
the South pole, and overlay stars at specified Galactic longitudes,
glong and latitudes, glat
IDL> eqpole_grid,/label,/new,/south ;Create labeled grid
IDL> eqpole, glong, glat, x,y ;Convert to X,Y coordinates
IDL> plots,x,y,psym=2 ;Overplot "star" positions.
COPYRIGHT NOTICE:
Copyright 1992, The Regents of the University of California. This
software was produced under U.S. Government contract (W-7405-ENG-36)
by Los Alamos National Laboratory, which is operated by the
University of California for the U.S. Department of Energy.
The U.S. Government is licensed to use, reproduce, and distribute
this software. Neither the Government nor the University makes
any warranty, express or implied, or assumes any liability or
responsibility for the use of this software.
AUTHOR AND MODIFICATIONS:
J. Bloch 1.4 10/28/92
Converted to IDL V5.0 W. Landsman September 1997
Create default plotting coords, if needed W. Landsman August 2000
Added _EXTRA, CHARTHICK, CHARSIZE keywords W. Landsman March 2001
[Previous]
[Next]
Project : HESSI
Name : ERR_STATE
Purpose : return !error_state.msg or !err_string
Category : utility help
Syntax : IDL> print,err_state()
Inputs : None
Outputs : !error_state.msg (if supported), else !err_string
Keywords : None
CALLED BY:
ADD_TAG [1], APPEND_ARR, CHMOD, GET_MONTH, JOIN_STRUCT [1], MDI_COPY, MK_DIR
OBJ_STRUCT, PLOT_BOX, RDWRT_BUFF, RD_GOES_SDAC, REM_TAG [1], SYNOP_DEFINE
TRACE_COPY, TRACE_GBO, TRACE_JSMOVIE, XYPLOT__DEFINE, db_gbo, ihy_db
History : Written 6 Jan 2003, D. Zarro (EER/GSFC)
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
NAME:
ERRPLOT
PURPOSE:
Overplot error bars over a previously drawn plot.
CATEGORY:
J6 - plotting, graphics, one dimensional.
CALLING SEQUENCE:
ERRPLOT, Low, High ;X axis = point number
ERRPLOT, X, Low, High ;to specify abscissae
INPUTS:
Low = vector of lower estimates, = to data - error.
High = upper estimate, = to data + error.
OPTIONAL INPUT PARAMETERS:
X = vector containing abscissae.
KEYWORD Parameters:
Width = width of bars, default = 1% of plot width.
OUTPUTS:
None.
CALLED BY:
APCAL_ADD_27MANT [1], APCAL_ADD_2MANT, APCAL_ADD_2M_RL, CHIANTI_DEM
DATAGET3_GRS, DATAGET3_HXS, EUTPLOT, FLUX_3C84, GRS_SPEFF, PLOT_GRSPCH, PLOT_GRSPCL
PLOT_GRSPHH, PLOT_GRSPHL, PLOT_HXSPC, PLOT_HXSPH, PNTFIT, SPFDPLOT_GRS, SPFDPLOT_HXS
SPPLOT_GRS, SPPLOT_HXS, azimuth_teem [2], dataget_grs, errbar, go_teem_plots
hsi_visibility_fit, lcur_plot [1], lcur_plot [2], make_avg_daily_roll
ph_eff_grs1, ph_eff_grs2, ph_pow_grs1, ph_pow_grs2, plot_eit_entrance, plotbft [1]
plotbft [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
Overplot is produced.
RESTRICTIONS:
Logarithmic restriction removed.
PROCEDURE:
Error bars are drawn for each element.
For example: Y = data values, ERR = symmetrical error estimates:
PLOT,Y ;Plot data
ERRPLOT, Y-ERR, Y+ERR ;Overplot error bars.
If error estimates are non-symetrical:
PLOT,Y
ERRPLOT, Upper, Lower ;Where upper & lower are bounds.
To plot versus a vector of abscissae:
PLOT,X,Y ;Plot data.
ERRPLOT,X,Y-ERR,Y+ERR ;Overplot error estimates.
MODIFICATION HISTORY:
DMS, RSI, June, 1983.
Joe Zawodney, LASP, Univ of Colo., March, 1986. Removed logarithmic
restriction.
DMS, March, 1989. Modified for Unix IDL.
RDB, October 1992. Added NOCLIP=!P.NOCLIP to plot statement
1-Oct-1998, Zarro (SMA/GSFC), added keyword inheritance
[Previous]
[Next]
Name: esegment
PURPOSE: to transform image <x> into a form in which loop-like
(one-dimensional) structures can be detected more easily,
regardless of the loop contrast amplitude or large-scale
background variation. The *bright loop detection image* is
defined as ESEGMENT(x) GE 2.
Input Parameters:
x - a 2D image array
Output:
function returns map (same dimen as input) containing count
of nearest neighbors which exceed assocciated pixel
ALGORITHM: count the number of directions (0 - 4) in which the
current pixel's value exceeds the values of both immediate
neighbors in that direction (N-S, E-W, NE-SW, NW-SE).
Calling Sequence:
segimg=esegment(image)
AUTHOR: Louis H. Strous, Lockheed Martin Solar & Astrophysics Lab,
Palo Alto, CA.
JOURNAL PUBLICATION: by L.H. Strous, in "Solar Physics", forthcoming
special volume dedicated to the "Physics of the Solar Corona and
Transition Region" workshop, held in Monterey, California, on 24 -
27 August 1999.
OTHER PLATFORMS: dynamic run-time loading module for IDL, written in
C. http://ana.lmsal.com/anaidl .
Category:
image processing, 2D, solarx
CALLS: ***
BOX_MESSAGE, data_chk [1], data_chk [2]
HISTORY: IDL script version 1.0, 2 September 1999.
2-September-1999 - L.H.Strous - C->IDL port
14-September-1999 - S.L.Freeland - minor doc, -> SSW
[Previous]
[Next]
Project : SOHO - CDS
Name : ESPAWN
Purpose : spawn a shell command and return STDIO and STDERR
Category : System
Explanation : regular IDL spawn command doesn't return an error message
Syntax : IDL> espawn,cmd,out
Inputs : CMD = command(s) to spawn
Keywords : NOERROR = inhibit error output
COUNT = n_elements(out)
BACKGROUND = background the commands (UNIX only)
UNIQUE = make commands unique
CACHE = use cached results
CLEAR = clear cached results
Outputs : OUT = output of CMD
CALLS: ***
DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], IS_BLANK, MERGE_STRUCT
OS_FAMILY, PTR_EXIST, TRIM2, delvarx [5], get_uniq, is_struct
CALLED BY:
APPLY_LOCK, CHECK_FTP, CHECK_KAP, DATA_PATHS, EIT_COPY, EXIST_JOB, FILE2FID
FILE_COPY2, FIND_CAT, FIND_PROC, FTP_BBSO, FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE
FTP_SYNOP, FTP__DEFINE, GET_GZIP, GET_LATEST_IAP, GET_MOD, GET_NOAA, GET_PID, GET_PROC
GET_USER_ID, HAVE_EXE, IS_LINK, KILL_JOB, LIST_DIR, LIST_FILE, LIST_PATH, LOC_FILE [2]
MAP__DEFINE, MDI_COPY, MDI_LATEST, MK_AGIF, MK_DIR, MK_FILE, MK_LINK, MK_PLAN_FORM
MK_SOHO_TARGET, PLOT_CDS_POINT [1], PLOT_CDS_POINT [2], PRINT_GEV, PRINT_NAR
PURGE_KAPS, REBIN_FID, SEND_MAIL, SEND_PRINT, SMART_FTP, TRACE_COPY, TRACE_GBO
UPDATE_KAP, URL_GET, db_gbo, gzip, ihy_db, is_winnt, mdi_link, netscape_control
synop_link, uncompress
History : Version 1, 24-Jan-1996, Zarro (ARC/GSFC) - written
Modified, 12-Nov-1999, Zarro (SM&A/GSFC) - made
Windows compliant
Modified, 12-March-2000, Zarro (SM&A/GSFC) - sped
up with /NOSHELL (Unix only)
Modified, 22-May-2000, Zarro (EIT/GSFC) - added
/UNIQUE
Modified, 26-Mar-2002, Zarro (EER/GSFC) - sped up with caching
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Project : HESSI
Name : ETHZ__DEFINE
Purpose : Define a site object for Observatory of Solar specreadastronomy
of the Astrophysical Institute, Potsdam
Category : Ancillary GBO Synoptic Objects
Syntax : IDL> c=obj_new('ethz')
CALLS: ***
ANYTIM2UTC [1], ANYTIM2UTC [2], ETHZ::CLEANUP, ETHZ::INIT, ETHZ::SET_FITS
is_struct
History : Written 18 Nov 2002, D. Zarro (EER/GSFC)
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
NAME:
EULER
PURPOSE:
Transform between Galactic, celestial, and ecliptic coordinates.
EXPLANATION:
Use the procedure ASTRO to use this routine interactively
CALLING SEQUENCE:
EULER, AI, BI, AO, BO, [ SELECT, /FK4, SELECT = ]
INPUTS:
AI - Input Longitude in DEGREES, scalar or vector. If only two
parameters are supplied, then AI and BI will be modified to
contain the output longitude and latitude.
BI - Input Latitude in DEGREES
OPTIONAL INPUT:
SELECT - Integer (1-6) specifying type of coordinate transformation.
SELECT From To | SELECT From To
1 RA-Dec (2000) Galactic | 4 Ecliptic RA-Dec
2 Galactic RA-DEC | 5 Ecliptic Galactic
3 RA-Dec Ecliptic | 6 Galactic Ecliptic
If not supplied as a parameter or keyword, then EULER will prompt for
the value of SELECT
Celestial coordinates (RA, Dec) should be given in equinox J2000
unless the /FK4 keyword is set.
OUTPUTS:
AO - Output Longitude in DEGREES
BO - Output Latitude in DEGREES
INPUT KEYWORD:
/FK4 - If this keyword is set and non-zero, then input and output
celestial and ecliptic coordinates should be given in equinox
B1950.
/SELECT - The coordinate conversion integer (1-6) may alternatively be
specified as a keyword
NOTES:
EULER was changed in December 1998 to use J2000 coordinates as the
default, ** and may be incompatible with earlier versions***.
REVISION HISTORY:
Written W. Landsman, February 1987
Adapted from Fortran by Daryl Yentis NRL
Converted to IDL V5.0 W. Landsman September 1997
Made J2000 the default, added /FK4 keyword W. Landsman December 1998
Add option to specify SELECT as a keyword W. Landsman March 2003
CALLED BY
ASTRO, ATV, HEULER, PLANET_COORDS
[Previous]
[Next]
NAME:
EUTPLOT
PURPOSE:
Plot error bars on previously (using UTPLOT) drawn plot with
universal time labelled X axis. If start and end times have been
set, only data between those times is displayed.
CATEGORY:
CALLING SEQUENCE:
EUTPLOT,X,Y,Z
EUTPLOT,X,Low,High
EUTPLOT,X,Y,UNC,/unc
EUTPLOT,X,Low,High,XST
INPUTS:
X - X array to plot in seconds relative to base time.
Structures allowed
LOW,HIGH - Vectors of Low and High Values
or
Y,UNC,/UNC - Will convert to LOW=Y-UNC, HIGH=Y+UNC
UNC must be a vector of the same length as Y or a scalar.
xst - Optional. The reference time to use for converting a structure
into a seconds array. IMPORTANT - this should not be
used since it will use the start time that was defined in the
plot command. It is necessary if the X input is an in seconds
already and the reference time is not the same as that used by
the UTPLOT base time.
OPTIONAL INPUT PARAMETERS:
UNC = If set, will assume that the Y and UNC were passed in.
WIDTH = Width of the error bars horizontal flags in units of
the fractional plot width (def=0.01). Set width=0. to
draw simple vertical bars.
OUTPUTS:
None.
OPTIONAL OUTPUT PARAMETERS:
None.
KEYWORDS:
XERR,YERR = arrays of X and Y errors
CALLS: ***
ERRPLOT [1], ERRPLOT [2], EXIST, Ex2Int [1], Ex2Int [2], anytim [1], anytim [2]
anytim [3], anytim [4], anytim [5], anytim2ex [1], anytim2ex [2], int2secarr [1]
int2secarr [2]
CALLED BY:
fit_bsc_plot
COMMON BLOCKS:
UTCOMMON
SIDE EFFECTS:
Over plots uncertainties.
RESTRICTIONS:
Can only be used after issuing UTPLOT command.
PROCEDURE:
Calls errplot.
MODIFICATION HISTORY:
18-dec-93, J. R. Lemen, Written (based on outplot by Tolbert/Schwartz/Morrison)
13-feb-95, JMM, JRL Uncertainty may be passed in as a scalar or a vector if
the /unc keyword is set.
29-mar-95, JMM, Enable input time to be a 7-element external format
5-jun-1998, richard.schwartz@gsfc, use anytim() to prep time inputs. This should allow
this routine to be run anywhere in SSW.
1-jul-1998, Zarro (SAC/GSFC), enhanced with OPLOTERR
1-Oct-1998, Zarro (SMA/GSFC), added keyword inheritance
[Previous]
[Next]
Project : SOHO - CDS
Name : EVAL_CFIT
Purpose : Evaluates a component fit at given points.
Explanation : EVAL_CFIT evaluates the component fit described by the CFIT
structure, taking the current values for the fit
parameters. If the keyword /INITIAL is set, the initial values
for the parameters are used instead.
Use : EVAL_CFIT,X,Y,CFIT
Inputs : X : Array of points where the fit is to be evaluated.
CFIT : The component fit structure.
Opt. Inputs : None
Outputs : Y : The values of the fit at the given points
Opt. Outputs: None.
Keywords : DOUBLE : Set to use double precision arithmetic
INITIAL : Set to use parameter initial values instead of
current values.
SFIT (output) : Set to a named variable to return the SFIT
generated in the process of evaluating the
CFIT.
Calls : ***
EVAL_SFIT, MAKE_SFIT_STC
CALLED BY:
CFIT_ERRDEMO, XCFIT, XCFIT_BLOCK
Common : None.
Restrictions: None.
Side effects: None.
Category : Analysis
Prev. Hist. : None.
Written : S.V.H.Haugan, UiO, 21 January 1997
Modified : Not yet.
Version : 1, 21 January 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : EVAL_SFIT
Purpose : Evaluate "short" fit structure at given points.
Explanation : This routine is used as the evaluation routine during fit
calculations in the component based fit system.
Use : EVAL_SFIT,X,A,F [,PDER], PRIVATE=SFIT
Inputs : X : The points where the fit function should be evaluated.
A : The parameters of the fit to be evaluated
PRIVATE : Set this keyword to the SFIT ("short" fit) structure
describing the fit.
Opt. Inputs : None
Outputs : F : Returns the evaluated function
Opt. Outputs: PDER : If this parameter is present, it will contain the
partial derivatives of the function wrt each parameter.
Keywords : PRIVATE : See Inputs
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
CFIT_BLOCK, CFIT_ERROR, EVAL_CFIT
Common : None.
Restrictions: The PRIVATE keyword is not optional!
Side effects: None.
Category : Analysis
Prev. Hist. : None.
Written : S.V.H.Haugan, UiO, 21 January 1997
Modified : Not yet.
Version : 1, 21 January 1997
[Previous]
[Next]
Name: event_movie
Purpose: form a 3D plot movie from UT events (via evt_grid)
Input Parameters:
times - event times (any SSW format, index structures, etc.)
Output Parameters:
outimg - movie cube of plots with events overlayed
Keyword Parameters:
data - if set and 3D, concatentate data to plot
goes - if set, use plot goes (time window around events)
charsize - if set, character size
color - color for event lines
gcolor - (goes only - goes grid color)
ncolor - (fem only - color for night/day )
scolor - (fem only - color for SAA)
ascii - if set, use SEC GOES ascii files , not "yokoh" fmt
Calling Sequence:
Two Primary Uses:
1. IDL> utplot [any user utplot...] ; overlay on user plot
IDL> event_movie,times [,data=d3D]
2. IDL>event_movie,times, outmovie, [data=d3D] , /goes ; GOES overlay
IDL>event_movie,times, outmovie, /default ; same w/ std colors and yohoh fem
Calling Examples:
IDL> event_movie, index, gmovie, /goes ; goes plot using index times
IDL> event_movie, index, gmovie, data=data, ,/goes ; same but
; concatentate data
CALLED BY:
sxt2file, sxt_ssn2fits [1], trace_special_movie [2], trace_special_movie [3]
History:
25-oct-1995 (SLF) - movie production
6-Nov-1995 (SLF) - cleaned up, defaults, ...
17-nov-1995 (SLF) - auto scale goes
12-Apr-1999 (S.L.Freeland) - more generic->SSW, $
defaults->event_movie_defaults.pro
24-Apr-1999 (S.L.Freeland) - fix a color problem
Warnings:
Temporarily sets graphics device to 6
CALLS: ***
PLOT_GOES, WDEF [1], WDEF [2], anytim2ex [1], anytim2ex [2], anytim2ints [1]
anytim2ints [2], data_chk [1], data_chk [2], event_movie_defaults, evt_grid
ex2fid [1], ex2fid [2], get_logenv [1], get_logenv [2], int2secarr [1]
int2secarr [2], linecolors [1], linecolors [2], restsys [1], restsys [2]
savesys [1], savesys [2], str_replace [1], str_replace [2], timegrid
Restrictions:
For now, 'plot_goes' requires at least one Yohkoh instrument in path
[Previous]
[Next]
Name: event_movie
Purpose: form a 3D plot movie from UT events (via evt_grid)
Input Parameters:
times - event times (any SSW format, index structures, etc.)
Output Parameters:
outimg - movie cube of plots with events overlayed
Keyword Parameters:
data - if set and 3D, concatentate data to plot
goes - if set, use plot goes (time window around events)
charsize - if set, character size
color - color for event lines
gcolor - (goes only - goes grid color)
ncolor - (fem only - color for night/day )
scolor - (fem only - color for SAA)
Calling Sequence:
Two Primary Uses:
1. IDL> utplot [any user utplot...] ; overlay on user plot
IDL> event_movie,times [,data=d3D]
2. IDL>event_movie,times, outmovie, [data=d3D] , /goes ; GOES overlay
IDL>event_movie,times, outmovie, /default ; same w/ std colors and yohoh fem
Calling Examples:
IDL> event_movie, index, gmovie, /goes ; goes plot using index times
IDL> event_movie, index, gmovie, data=data, ,/goes ; same but
; concatentate data
CALLED BY:
sxt2file, sxt_ssn2fits [1], trace_special_movie [2], trace_special_movie [3]
History:
25-oct-1995 (SLF) - movie production
6-Nov-1995 (SLF) - cleaned up, defaults, ...
17-nov-1995 (SLF) - auto scale goes
12-Apr-1999 (S.L.Freeland) - more generic->SSW, $
defaults->event_movie_defaults.pro
24-Apr-1999 (S.L.Freeland) - fix a color problem
18-Dec-2002, William Thompson, GSFC, Changed !COLOR to !P.COLOR
Warnings:
Temporarily sets graphics device to 6
CALLS: ***
DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], EVENT_MOVIE2, PLOT_GOES
WDEF [1], WDEF [2], anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2]
data_chk [1], data_chk [2], delvarx [5], event_movie_defaults, evt_grid
ex2fid [1], ex2fid [2], int2secarr [1], int2secarr [2], linecolors [1]
linecolors [2], restsys [1], restsys [2], savesys [1], savesys [2]
str_replace [1], str_replace [2], timegrid
Restrictions:
For now, 'plot_goes' requires at least one Yohkoh instrument in path
[Previous]
[Next]
Name: event_movie_defaults
Purpose: set some color "defaults" for event_movie.pro
Input Parameters:
event_type: - type of desired event/defaults (defaults=goes w/yohkoh fem)
Output Parameters:
NONE:
Keyword Parameters:
(all output)
goes - if set, turn 'plot_goes' on
color - color for event lines
gcolor - (goes only - goes grid color)
ncolor - (fem only - color for night/day )
scolor - (fem only - color for SAA)
Calling Sequence:
CALLS: ***
BOX_MESSAGE
CALLED BY:
event_movie [1], event_movie [2]
History:
12-Apr-1999 (S.L.Freeland) - broke some code out of event_movie_defaults
[Previous]
[Next]
Project : SDAC
Name : EVENTS_BY_TIME
Purpose : This procedure finds events for different instruments over input time
intervals.
Category : GEN, HXRBS, BATSE, GRS, SPEX
Explanation : This procedure assembles the various software written for the
different instruments and returns sufficient information to
find the event numbers or filenames spanning the time interval
Use :
Inputs : Instrument
Time
Opt. Inputs : None
Outputs : Events
Select_list
Type
Opt. Outputs: None
Keywords :
Calls :
Common : None
Restrictions: To date, only HXRBS, BATSE, and SMM GRS are covered
Side effects: None.
Prev. Hist :
Modified : Version 1, RAS, 28-mar-1997
[Previous]
[Next]
NAME:
evt_grid
PURPOSE:
To annotate previously drawn utplot output with event times
CALLING SEQUENCE:
evt_grid,evt_times
evt_grid,evt_times [labels=labels, linestyle=linestyle, color=color, $
labsize=labsize, labcolor=labcolor, labpos=labpos,$
align=align, vertical=vertical, noarrow=noarrow, $
/ticks, tickpos=tickpos, ticklen=ticklen]
CALLING EXAMPLES:
(following any utplot)
evt_grid,index([0,20]),/labels ; label with times
evt_grid,index([0,20]),labels=['Image A', 'Image B']
evt_grid,'2-dec-92 12:45', linestyle=3, thick=2, label='EVENT X'
evt_grid,rmap,/ticks ;ticks instead of full lines
evt_grid,index,/arrow ; downward pointing arrows
evt_grid,index,/arrow,/head ; upward pointing arrows
evt_grid,index,labdata=thumbdata ; annotate with images
; (ssw 'index,data' 2d or 3d)
DUMMY DEMO:
plot_goes,'2-dec-93',24
evt_grid,timegrid('06:00 2-dec-93',nsamp=5,hours=2), $
/label,labpos=indgen(5)*.04+.7,linestyle=indgen(5) [,/align]
OPTIONAL KEYWORD PARAMTERS:
linestyle - for vertical lines
thich - ditto
color - ditto
ticks - use ticks, not vertical line (a tick IS a short vert line)
tickpos - position of center of tick in normalized coords (def=.85)
ticklen - length of tick in normalized coords (def=.03)
arrow - ticks have arrow head (use arrow.pro) - downward pointing
head - upward point arrows (via arrow2.pro)
labdata - if data array (2D/3D) supplied, use these for
the "labels" - for example, annotate a utplot
with images
labels - labels for annotation
labpos - y position in normalized coords for optional label position
(/data or labpos lt 0 or gt 1 implies data coordinates)
labcolor - color for optional labels
labsize - size for optional labels
vertical - rotate labels (vertical)
align - alingment for labels (default=center, see xyouts align desc)
(1=leftjustify, 0=right justify with respect to grid line)
noarrow - if set, dont draw arrows for right/left justified labels
data - if set, label positions are in DATA coordinates
imap - if set, calculate imagemap coords (return via IMAGEMAP_COORD
(works only with LABELS input)
imagemap_coord - if set, calculate imagemap coordinates of LABELS
imcircle=imcircle - if set, IMAGEMAP_COORD are "xc,yc,diam"
(default is rectangle "minx,miny,maxx,maxy"
CALLED BY:
GOES_TEK [1], GOES_TEK [2], QUICKDARK [2], SXT_COVERAGE, eit_proton_summary
event_movie [1], event_movie [2], evt_demo, fem_grid [1], fem_grid [2]
fl_goesplot [1], fl_goesplot [2], fl_goesplot [3], goes_log, goes_summary
goes_widget, hsi_obs_times, show_contacts, soon_cadence, soon_catstat
sooncat_cadence, ssw_apkpbar, ssw_fov_context, tim2tfss, trace_movie_context
ut_label, utcursor [1], utcursor [2]
Note: (imagemap) - this routine returns a string array 1:1 with
number of input times (annotations) for generation
of imagemaps (clickable utplots for example)
no_blank - (switch) - if set, do not do the historical "cleaning"
of area around the annotation
background - if supplied -and- area around label is "cleaned" using
this value (default is !p.background) - ignored if
NO_BLANK is set
HISTORY:
Written S.L.Freeland, 3-Dec-1993 (derived from fem_grid.pro)
5-Dec-1993 (SLF) - add ticks, tickpos, ticklen, arrow
12-Jul-1994 (SLF) - invert color if PS
22-Sep-1994 (SLF) - added stoptimes positional parameter (for ranges)
added FILLRANGE switch
8-oct-1994 (SLF) - added QUIET switch
1-nov-1994 (SLF) - allow ytype=1 (log)
7-apr-1995 (SLF) - corrected problem for invalid data
(mis align between labels and events)
25-apr-1995 (SLF) - add DATA keyword, allow labpos in data coords
6-aug-1995 (SLF) - hide IDL inconsistance on !y.type/!y.crange...
4-mar-1998 (SLF) - use n_elements in instead of keyword_set
add LABONLY, NOLINE, NOTICK (synonyms)
29-Feb-2000 (SLF) - changed 'endif' to 'endcase'
( 5.3 compiler enforces this end-matching )
24-Jul-2000 (SLF) - merge 'label_only' change (annotation)
28-Feb-2002 (SLF) - add IMAP,IMAGEMAP_COORD and IMCIRCLE functions
(calls get_imagemap_coord for each label)
6-Mar-2002 (SLF) - add LABDATA keyword and funtion
8-May-2002 (SLF) - add a couple of 'anytim' wrappers to extend
function to any SSW input times
18-Dec-2002, William Thompson, GSFC, Changed !COLOR to !P.COLOR
16-jun-2004 (SLF) - use !p.background for annotate background
(for PostScript) - add /HEAD keyword
(passed to arrow.pro to invert arrow sense)
9-mar-2005 (SLF) - add /NO_BLANK keyword an function
add BACGROUND keyword and function
CALLS: ***
ARR2STR [1], Arr2Str [2], DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4]
GETUT [1], GETUT [2], GET_IMAGEMAP_COORD, REVERSE, anytim [1], anytim [2]
anytim [3], anytim [4], anytim [5], anytim2ints [1], anytim2ints [2], arrow2
data_chk [1], data_chk [2], delvarx [5], int2secarr [1], int2secarr [2], tbeep [1]
tbeep [2], tbeep [3]
RESTRICTIONS:
Current plot must be UTPLOT/OUTPLOT output
[Previous]
[Next]
Name:
ex2dow
Purpose:
To convert from the standard 7 element time array
(HH,MM,SS,MSEC,DD,MM,YY) to a day of week number
for that date. (0=sunday, 1=monday,6=saturday).
Input:
timarr - Standard "ex" time array
(HH,MM,SS,MSEC,DD,MM,YY)
year is assumed to be of the form 91,
not 1991.
Output:
day of week
0 = sunday
1 = monday
str_dow = optional output, the day of week in
a string.
CALLS: ***
Ex2Int [1], Ex2Int [2]
CALLED BY:
anytim2weeks [1], anytim2weeks [2], do_reg_backup, ex2week [1], ex2week [2]
fits_disp_month [1], fits_disp_month [2], mk_fem [1], mk_fem [2]
mk_fem_file [1], mk_fem_file [2], week_loop [1], week_loop [2], week_loop [3]
History:
Written 12-Oct-91 by M.Morrison
0103-00 (PGS/GS) added y2k fix
[Previous]
[Next]
NAME:
ex2fid
PURPOSE:
Given a 7-element time array, generate the fileID (YYMMDD.HHMM)
for that time.
CALLING SEQUENCE:
fid = ex2fid(tarr)
fid = ex2fid(tarr, /sec)
INPUT:
tarr
OPTIONAL INPUT:
sec - If present, return (YYMMDD.HHMMSS)
CALLED BY:
BCS_BROWSE24, DISPLOI_MON5K, FIND_CAL [1], FIND_CAL [2], HXTPIXON, HXT_QLOOK
OBS_PLOT, bbso_name_fix, cfl_summary [1], cfl_summary [2], check_compile [1]
check_compile [2], check_dumps [1], check_process [1], check_process [2]
check_sci5k_trunc, daily_forecast [2], disp_sci5k, disp_therm_rs232
do_reg_backup, event_movie [1], event_movie [2], fits2time [1], fits2time [2]
fits2time [3], get1hk_info [1], get1hk_info [2], get_hk_info [1]
get_hk_info [2], get_mk3 [1], get_mk3 [2], get_sfm, go_batch [1], go_batch [2]
goes3sec_copy, gtab_file, hxtimg_accum, ip_que_dmpver, jitter_gif_xyimg
kp_name_fix, laststat [1], laststat [2], mk_gbl, mk_gev [1], mk_gev [2], mk_gsn_obs
mk_gsn_obs_s1, mk_gx, mk_hst_summary, mk_lasteit_movie, mk_mdi_fits, mk_mdi_iap
mk_pnt, mk_sfc [1], mk_sfc [2], mk_trace_i1, mk_week_file [1], mk_week_file [2]
mk_ydbtape [1], mk_ydbtape [2], new_disp_sci5k [1], new_disp_sci5k [2]
nob_img_copy, nob_name_fix, norik_name_fix, pref_super, rd_gbl_raw [1]
rd_gbl_raw [2], rd_hirsaiso, rd_sci5k, rd_so_at_ftr, rd_therm_rs232
rd_week_file [1], rd_week_file [2], rd_week_file [3], rd_week_file [4]
redo_disploi, redo_mon_sci5k, reslot, sda2fits, selsis_copy [1], selsis_copy [2]
sft2sfc, soon2fits, ssw_check_contrib, sxt2file, sxt2mpeg, timeline, topsdb [1]
topsdb [2], web_seq, weekid [2], wfile, xdisp_fits, xdisp_trace [1], xdisp_trace2
xdisp_trace3, xhkplot, xset_chain [1], xset_chain [2], xwrite_hist, ydb_exist [2]
HISTORY:
Written 11-Dec-91 by M.Morrison
14-Oct-92 (MDM) - Modified to accept an array of times
04-Jan-2000 (GLS) - Call time2file for y2k compliance
[Previous]
[Next]
Name:
Ex2Int
Purpose:
Convert conventional date and time into days since 1979
and milliseconds of day.
Calling Sequence:
Ex2Int, time, msod, ds79
Inputs:
time= 7 element integer array containing, in order,
hr min sec msec day mon yr
Output:
msod= 4-byte integer: milliseconds of the day
ds79= 4-byte integer: number of days since 1-Jan-1979
Keywords:
NOMOD - Do NOT take
the year mod 100 from the external format time year column..
Same meaning under INT2EX.
CALLS: ***
JDCNV [1], JDCNV [2], JDCNV [3]
CALLED BY:
ADDTIME [1], ADDTIME [2], ALIGN_AR, AdjUsrTim, BCS_24HR_PLOT [1]
BCS_24HR_PLOT [3], BCS_ADDGOES, BCS_BROWSE24, BCS_CREATE_CAT, BCS_LOAD_CAT
EUTPLOT, LIST_BDA, MANY_DAYS, OP_ADD_SPECIAL, OUTPLOT [1], OUTPLOT [2], OUTPLOT [3]
OUT_GRSPHL1, OUT_GRSPHL2, OUT_HXSPH, RD_AR, READ_SPFDGRS, READ_SPFDHXS, SEL_AR
UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4], UTPLOT [5], XMOVIE_SFM, anytim2dd79
anytim2ints [1], anytim2ints [2], bcs_bpcfs, contact_sum, dp_clock_ref, ex2dow [1]
ex2dow [2], ex2week [1], ex2week [2], get_dn_rate [1], get_dn_rate [2], gettime
go_get_sirius, hxi_interp, input_time [1], input_time [2], int2sec [1]
int2sec [2], interp_img, make_32 [1], make_32 [2], mk_fem [1], mk_fem [2]
mk_fem_aoslos [1], mk_fem_aoslos [2], mk_fem_file [1], mk_fem_file [2]
mk_orbit [1], mk_orbit [2], op_edit [1], op_edit [2], op_same_time [1]
op_same_time [2], op_terminator [1], op_terminator [2], op_time_sort, pr_evn [2]
pr_fem, pr_gbe, pr_gev, pr_nel, pr_trav_summ, rd_week_file [1], rd_week_file [2]
rd_week_file [3], rd_week_file [4], rdbda_smm, sxt_interp [1], sxt_interp [2]
tim2intstr [1], tim2intstr [2], valid_pass4 [1], valid_pass4 [2], weekid [2]
ydb_exist [2]
Side Effects:
Restrictions:
None
History:
version 1.0, was adopted from Ex2Int.FOR (SMM software),
written by GAL, 15-Feb-1991
8-oct-91, Updated, JRL: Make output vectors 1-d if the input
time is 2-d, or a scalar if the input
time is 1-d.
17-mar-92, Modified, JRL: Made for loop index long type.
Modified to use all vector operations, ras, 93/6/7
Modified to correctly deal with years GE 2000, jmm, 7/28/94
13-sep-97, richard.schwartz@gsfc.nasa.gov, added NOMOD
Version 8, richard.schwartz@gsfc.nasa.gov, 9-sep-1998.
Revised documentation.
[Previous]
[Next]
Name:
ex2week
Purpose:
To convert from any standard times to a week number.
Method:
The definition of week starts on a Sunday, and the
first week of the year is = 1. For the first
week, there can be less than 7 days in the week
The number of weeks in a year is 53 because
of the way the first and last weeks are counted.
Input:
timarr - Standard "ex" time array
(HH,MM,SS,MSEC,DD,MM,YY)
year is assumed to be of the form 91,
not 1991.
CALLS: ***
Ex2Int [1], Ex2Int [2], Int2Ex [1], Int2Ex [2], UNIQ [1], UNIQ [2], UNIQ [3]
anytim2ints [1], anytim2ints [2], ex2dow [1], ex2dow [2]
CALLED BY:
GetObsID, anytim2weekid [1], anytim2weekid [2], anytim2weekinfo
anytim2weeks [1], anytim2weeks [2], fmt_rasm, goes3sec_copy, mk_fem [1]
mk_fem [2], mk_fem_file [1], mk_fem_file [2], mk_pnt, mk_sd2, mk_sdc [2], mk_sdc [3]
mk_sdc [4], mk_sdl, mk_sl [1], mk_sl [2], mk_sot, mk_ssl, mk_week_file [1]
mk_week_file [2], nts_copy [1], nts_copy [2], week2ex [1], week2ex [2]
week_loop [1], week_loop [2], week_loop [3], wfile
OPTIONAL KEYWORD INPUT:
wid - If set, then return the string variable for
the week ID for each input time.
get_uniq- If set, then return all of the uniq week
numbers.
Output:
returns week number
year - the year number
HISTORY:
Written Oct-91 by M.Morrison
17-May-93 (MDM) - Modified to allow any time formats in
- Added /WID and /GET_UNIQ option
- Corrected the handling of vector inputs
2-jan-99 (PGS) - y2k, added: before ex2dow add 2000 if year lt 50
[Previous]
[Next]
Project : SOHO - CDS
Name : EXEC_STRUCT
Category : structures, utility
Purpose : Execute CREATE_STRUCT to dynamically create new structure
Explanation :
Syntax : IDL> new_struct=exec_struct(pairs,struct=struct)
Inputs : PAIRS = string pair array form PAIR_STRUCT
Opt. Inputs : None
Outputs : NEW_STRUCT = created structure
Opt. Outputs: None
Keywords : ERR= error string
STRUCT = structure variable name
NAME = new created structure name
CALLS: ***
ARR2STR [1], Arr2Str [2], DATATYPE [1], DATATYPE [2], DATATYPE [3], PR_SYNTAX
CALLED BY:
JOIN_STRUCT [2], REM_DUP_TAG, REM_TAG [2]
Common : None
Restrictions: None
Side effects: None
History : Version 1, 1-Dec-1997, D.M. Zarro - written
Version 2, 12-Dec-1998, Zarro (SM&A) - improved memory management
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Project : SDAC
Name : EXIST
Purpose : To See if variable Exists
Explanation : So obvious, that explaining it will take more
lines than the code.
Use : A=EXIST(VAR)
Inputs : VAR = variable name
Opt. Inputs : None.
Outputs : 1/0 if variable exists or not
Opt. Outputs: None.
Keywords : None.
Calls : None.
CALLED BY:
ADD_METHOD, ADD_TAG [1], ADD_TAG [2], ALLOW_FONT, ALLOW_GIF, APPEND_ARR
APPLY_CDS_ADEF, APPLY_LOCK, ARR2GIF, BATSE_SPEC_DRM, BGAUSS, BOOST_TAG, BREAK_MAP
CACHE_DATA, CACHE_LIST, CACHE__DATA, CALIBRATE [2], CDS_ASRUN_POINT, CDS_CLEAN_EXP
CDS_COMPRESS, CDS_PLAN_BRIEF, CDS_SNAPSHOT, CDS_STACK, CDS_TILT_COR, CFIT_APIXLIST
CFIT_BLOCK, CFIT_BLOCK_ERROR, CHECK_CDS_MODES, CHECK_KAP, CHKARG, CLEAN_PATH
CLONE_VAR, COMP_FITS_CEN, COMP_FITS_CRPIX, COMP_FITS_CRVAL, COPY_VAR, CRONTAB
CSCALE, CWF_STATUS, CWQ_DSPWAV [1], CW_CHECKBOX, Create_update_tar, DAT2GIF
DB_CHECK, DEF_CDS_STUDY, DEF_INST_PLAN, DELETE_ANALYSIS, DEL_ANOMALY, DIFF_MAP
DISCP_RESP, DISCSC_PL, DO_EIT_MAP, DO_EIT_SCALING, DRAWBOX, DROT_MAP, DROT_MAP_FAST
DROT_NAR, DROT_XY, DSCALE, DSP_AUX, DSP_WAV, Data reader with caching
EIS_CHECK_POINT [1], EIS_CHECK_POINT [2], EIS_IMAGE_TOOL [1]
EIS_IMAGE_TOOL [2], EIS_ITOOL_PTOOL [1], EIS_ITOOL_PTOOL [2]
EIS_ITOOL_STC [1], EIS_ITOOL_STC [2], EIS_PLAN_STC [1], EIS_PLAN_STC [2]
EIT_COPY, EIT_GBO, EIT_PARTIAL, EIT__DEFINE, EUTPLOT, EXP_DBASE, Energy_res [2]
FAST_LAD_DRM, FAST_SPEC_DRM, FCRYSTAL1, FIFO__DEFINE, FIG_OPEN, FILE_CONTENT
FILE_SINCE, FILT_DATA, FILT_EVENTS, FIND_CAT, FIND_CDS_STUDY, FIND_COMPRESSED
FIND_PROC, FITS WRITER CLASS, FITS WRITER CLASS FOR RHESSI IMAGES
FITS2MAP [1], FITS2MAP [2], FITS__DEFINE, FIT_BACKGRND, FIT_CDS_QL, FLIP_MAP
FRAMEWORK ABSTRACT CLASS DEFINITION, FREE_POINTER, FSOC, FSPLOT, FTOTAL, FTP_BBSO
FTP_KISF, FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE, FTP_SYNOP, FTP__DEFINE, FUNCT_FIT
FWD_DECOMPOSE, FWD_DEC_GAUSS, FWD_MINIMUM, F_CONVERSION [1], F_CONVERSION [2]
F_DIV, F_VTH, GAUSS_FIT, GEN__DEFINE, GET_ARR_CENTER, GET_CDS_DELAY, GET_CDS_HOME
GET_CDS_OH, GET_CDS_PLAN, GET_CDS_RASTER, GET_CDS_STATE, GET_CDS_STUDY, GET_CDS_XY
GET_DROT_DUR, GET_FITS_CEN, GET_GIS_DELAY, GET_GIS_DET, GET_HANDLER_ID
GET_LATEST_IAP, GET_LEAP_SEC, GET_LEAP_SEC2, GET_MAP_PROP, GET_MAP_REGION
GET_MAP_SUB, GET_METHODS, GET_MONTH, GET_NOAA, GET_PLAN_FUNCT, GET_PLAN_ITIME
GET_PLAN_PROG, GET_PLAN_SCI, GET_PLAN_TT, GET_PLAN_TYPE, GET_POINTER, GET_PROC
GET_RASTER_PAR, GET_RECENT_EIT, GET_SID, GET_SOHO_ROLL, GET_SOHO_SUBMODE
GET_STUDY_PAR, GET_SUMER_FILES, GET_TAG_INDEX, GET_TEMP_DIR, GET_USER_ID
GET_XWIN [1], GET_ZDBASE, GE_WINDOW_SIM, GOES__DEFINE, GRID_MAP, GRID_XY, GT_CDS_QL
GT_CDS_WINDOW, GT_VMAP, HAVE_METHOD, HAVE_TAG, HESSI
HESSI BINNED EVENTLIST CLASS DEFINITION
HESSI CALIBRATED EVENTLIST CLASS DEFINITION [1]
HESSI CALIBRATED EVENTLIST CLASS DEFINITION [2]
HESSI CALIBRATED EVENTLIST CLASS DEFINITION [5]
HESSI CLEAN ALGORITHM CLASS DEFINITION, HESSI EVENTLIST CLASS DEFINITION
HESSI FRAMEWORK TEMPLATE CLASS [2], HESSI FRAMEWORK TEMPLATE CLASS [3]
HESSI HSI_PILEUP CLASS, HESSI IMAGE FILE CLASS DEFINITION [1]
HESSI IMAGE STRATEGY CLASS DEFINITION
HESSI MONITOR RATE CLASS DEFINITION
HESSI MULTI IMAGE CLASS DEFINITION [1]
HESSI MULTI IMAGE CLASS DEFINITION [2], HESSI PACKET FILE ABSTRACT CLASS
HESSI_DATA, HESSI_FILTERS, HFITS__DEFINE, HSI_ANNSEC2XY [1], HSI_ANNSEC2XY [2]
HSI_ANNSEC_BPROJ [1], HSI_ANNSEC_BPROJ [3], HSI_ANNSEC_BPROJ_WEIGHT [1]
HSI_ANNSEC_BPROJ_WEIGHT [2], HSI_ANNSEC_PROFILE [1], HSI_ANNSEC_PROFILE [2]
HSI_ANNSEC_PROFILE_BAVER_SETUP [1], HSI_ANNSEC_PROFILE_BAVER_SETUP [2]
HSI_CSPECTRUM_DIST, HSI_DEBUG, HSI_DRM_MOD CLASS, HSI_DRM_MOD_CONTROL__DEFINE
HSI_EVENTLIST_SELECT_BY_ENERGY, HSI_LIVETIME_PACKET_RECOVER
HSI_MEM_SATO [1], HSI_SPECTROGRAMACCBIN [5], HSI_SPECTROGRAMCHAN_OVERLAP_FIX
HSI_SPECTROGRAM_DECIM_CORRECT, HSI_SPECTROGRAM_DECIM_TABLE
HSI_SPECTRUM__DEFINE, HSI_SRM__DEFINE, HSI_XY2ANNSEC [1], HSI_XY2ANNSEC [2]
HSI_chan2energy, HTML_SPLAN, HTTP__DEFINE, HXT_CAL_FIX [1], HXT_CAL_FIX [2]
IAP2STC, IDL_RELEASE, IMAGE_TOOL, INDEX2MAP, IN_RANGE, IPRINT, IS_DIR2, IS_LINK
ITOOL_BUTTON_REFRESH, ITOOL_LOAD_IMAGE, ITOOL_PICKFILE, ITOOL_PKFILE_BS
JOIN_STRUCT [1], JSMOVIE, JSMOVIE2, LAD_RESP, LIST_CACHE__DEFINE, LIST_GEV, LIST_NAR
LIST_PATH, LIST_PRINTER_UNIX, LIST_TO_DETAIL, LOC_FILE [2], LOC_FILE_NEW, LTC_MAP
LVIEW_XY, MAKE_MAP, MAKE_POINTER, MAKE_XY, MAP2GIF, MAP2JPEG, MAP2L1, MAP2MPEG
MAP__DEFINE, MARK_POINT, MATCH_STRUCT, MCURVEFIT, MEAN_MAP, MKLOG, MK_AGIF
MK_ANALYSIS, MK_CDS_FITS, MK_CDS_GIF, MK_CDS_IMAP, MK_CDS_MAP, MK_CDS_PLAN
MK_CDS_SMAP, MK_DFONT, MK_EIT_MAP, MK_FID, MK_FILE, MK_GIF, MK_HXI_MAP, MK_IVM_MAP
MK_LINK, MK_MAP_XP, MK_MAP_YP, MK_MPEG, MK_PLAN_ADD, MK_PLAN_CAMP, MK_PLAN_CHANGE
MK_PLAN_CLONE, MK_PLAN_CONV, MK_PLAN_CUSTOM, MK_PLAN_EXIST, MK_PLAN_FIND [1]
MK_PLAN_FIND [2], MK_PLAN_LOAD, MK_PLAN_ORDER, MK_PLAN_PLOT, MK_PLAN_READ
MK_PLAN_RECAL, MK_PLAN_RECOVER, MK_PLAN_REM, MK_PLAN_SORT, MK_PLAN_TAIL
MK_PLAN_UNLOAD, MK_PLAN_WHERE, MK_PLAN_WRITE, MK_PLAN_XY, MK_SOHO, MK_SOHO_EDP
MK_SOHO_SETUP, MK_SOHO_TARGET, MK_STUDY, MK_SXT_MAP, MOVIE_MAP
Modify_Merge_list [1], Modify_Merge_list [2], Modify_sled [2], NANCAY__DEFINE
NEAR_TIME, OBJ_CLONE, OLIST__DEFINE, OPLOTERR, OPLOT_NAR [1], OPLOT_SPLAN
OVSA_LTC_DEFINE, PAIR_STRUCT, PATCH_MAP, PB0R, PHOTON_MODEL, PICK_TIMES
PLOT_CDS_POINT [1], PLOT_CDS_POINT [2], PLOT_FRAME, PLOT_HELIO [1]
PLOT_HELIO [2], PLOT_MAP
PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support, PLOT_SPLAN
PLOT_SUPPORT, PLOT_UTFRAME, POINT SPREAD FUNCTION CLASS DEFINITION, PRINT_GEV
PRINT_HTML, PRINT_NAR, PROFILES2, PS_FORM [1], PS_FORM [2], PTR_CLONE, RDWRT_BUFF
RD_ASCII_BUFF, RD_ASCII_BYTE, RD_ASCII_C, RD_CDS_POINT, RD_GOES, RD_PLAN
RD_RESOURCE, RD_RSTN, READ_KAP, READ_RESULTS, READ_STTE, REBIN_FID, REBIN_GIF
REBIN_MAP, REDUCE_MAP, REM_ANON_TAG, REM_DUP_TAG, REM_MAP_LIMB, REM_SEQ, REM_TAG [1]
REM_TAG [2], REPACK_MAP, REPLICATE2, REPRODUCE, REP_FITS_HEAD, REP_STRUCT_NAME
REP_TAG_NAME, REP_TAG_VALUE, RESPACE_MAP, RESTORE_ANALYSIS, RESTORE_CDS_ADEF
RHESSI IMAGE SINGLE CLASS DEFINITION, RM_FILE, RM_LOCK, ROT_CDS_XY
ROT_FITS_HEAD, ROT_MAP, ROUND_TIME, RPC_GET_NOAA, RSTRMID, SCANPATH, SCOPE
SCOPE_CURSOR, SET_CDS_FITS, SET_POINTER, SHIFT_MAP, SHOW3, SHOW_SYNOP__DEFINE
SID__DEFINE, SITE__DEFINE, SMART_FTP, SMART_WINDOW, SOCK_FILES, SOCK_FIND, SOCK_SSW
SOHO_XY, SPECPLOT__DEFINE, SPECTROGRAM CLASS DEFINITION
SPECTRUM CLASS DEFINITION, SPECTRUM_AXIS__DEFINE, SPEX_DRM__DEFINE
SPEX_FIT__DEFINE, SPEX_GEN__DEFINE, SPEX_PLOT_SAVED [1], SPEX_PLOT_SAVED [2]
SPEX_SAVE_DATA [1], SPEX_SAVE_DATA [2], SPEX_SUMMARY [1], SPEX_SUMMARY [2]
SPEX__DEFINE, STC_CLONE, STRIP_ARG, STRIP_STRUCT, STRPAD, STRUCTURE TO VOTABLE
STR_CHUNK, STR_DEBLANK, STR_EXPAND, STR_FORMAT, STR_SPACE, SUB_MAP, SWISS_CHEESE
SXI_GBO, SXT__DEFINE, SYSTIM, Shers_load [1], TEK_PRINT [1], TEK_PRINT [2]
TEST_OPEN2, TIFF2GIF, TIME2FID, TIME_AXIS__DEFINE, TIME_CHECK, TRACE_GBO, TRIM_TAGS
UNPACK_MAP, UPDATE_CAMPAIGN, UPDATE_CFIT, UPDATE_IAP, UPDATE_KAP
UPDATE_SOHO_TARGETS, UPDATE_STUDY_DUR, UPD_SCI_PLAN, UTPLOT__DEFINE, VAL2STRING
VALID_POINTER, VSO_SEARCH, WDEL, WHERE_OFF_LIMB, WHERE_VAL, WHERE_VECTOR
WIDGET_MBASE, WIDGET_SELECTED, WINCOPY, WR_MOVIE, WTITLE, XACK, XALIVE, XANSWER
XCALENDAR, XCAMP, XCAT, XCDS_ANALYSIS, XCDS_BOOK, XCFIT, XCFIT_BLOCK, XCHOICE, XCPT, XCRON
XDIFF, XGET_SYNOPTIC, XIAP, XINPUT, XLIST, XMANAGER_COM_OLD, XMATRIX, XPOPUP, XPORT
XPROGRAM, XPROGRAM_ADD, XREALIZE, XREPORT, XREPORT_EDIT, XR_RD_ABUNDANCE, XSHOW
XSTRUCT, XSTUDY, XTEXT, XTEXT_RESET_ID, XVALIDATE, XYPLOT__DEFINE, XZOOM_PLAN
avsig_1 [6], binning__define, cw_ut_range, cwq_dspwav [2], datetime, db_gbo
dsp_menu, ethz_XCHOICE, expand_dirs, fit_comp__define, fit_comp_kw
fit_model_components, fits2rm, fitsgen, get_abun_table, get_conversion [1]
get_conversion [2], get_uniq, get_uniq_range, get_xwin [2], goes_plot [1]
goes_plot [2], goes_plot [3], goes_plot [4], goes_plot [5], gzip, hsi_all_a2d_edge
hsi_clean_options, hsi_forwardfit_options, hsi_full_name
hsi_image__getaxis [2], hsi_image__plot [2], hsi_image_fitsread
hsi_image_plot, hsi_image_raw__define, hsi_lc_dims, hsi_obs_summ_fill [1]
hsi_obs_summ_fill [2], hsi_params2script, hsi_params_2_top_struct
hsi_plot_flux, hsi_read_flarelist, hsi_show_flags [2], hsi_show_flare_on_image
hsi_spectrogramACCBIN [2], hsi_spectrogram__define [1]
hsi_spectrogram__define [2], hsi_spectrogram__define [3]
hsi_spectrogram__get_obs [1], hsi_spectrogram__livetime [1]
hsi_spectrum__filewrite, hsi_ui_img, hsi_ui_spec, ihy_db, kluge_att, list_sp_files
low_res, low_res_1d, low_res_2d, mark_intervals, modify_sled [1], moment2d
norh_plot, norh_plot_alpha, phoenix_spg_autoimprove, phoenix_spg_get, plot_ace
plot_goes_ospex, plot_goesp, plotman, plotman_conf_panels, plotman_draw_event
plotman_widget, plotman_window_control_event, plotman_zoom, printx [1]
printx [2], ptim, rapp_get_spectrogram, read_ftp, read_hessi_4_ospex
read_hessi_4_ospex_params, read_yohkoh_4_spex [1], read_yohkoh_4_spex [2]
rem_blanks, rhessi_get_spin_axis_position, spectral_ratio [1]
spectral_ratio [2], spectro_plot, spectro_plot2, spectrogram__define
spex_bk__define, spex_bkint__define, spex_data__define
spex_gen_strategy_holder, spex_image__define, spex_spec_plot [1]
spex_spec_plot [2], spex_spec_plot [3], spex_spec_plot [4], stc_sum, str_cut
stretch_circle, sxi_files
to return information about a function which can consist of multiple
tr_rd_index, uncompress, which_hessi_version, widget_kill, widget_valid, xdroplist
xedit_table, xpickfile2, xsel_list_multi
Common : None.
Restrictions: None.
Side effects: None.
Category : Useful stuff
Prev. Hist. : None.
Written : Dominic Zarro (ARC)
Version : Version 1.0, 18 September 1993
[Previous]
[Next]
Project : SOHO - CDS
Name : EXIST_JOB
Purpose : determine if a job exists
Category : Utility
;
Syntax : IDL> exists=exist_job(job_name)
Inputs : JOB_NAME = name of job to search for
Outputs : EXISTS = 1/0
Keywords : /CASE: job searching is case sensitive
/EXACT: job name must be exact
/VERBOSE: output results
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], ESPAWN, GREP, OS_FAMILY, TRIM
CALLED BY:
GET_NOAA, KILL_JOB
Restrictions: UNIX only
History : Version 1, 5-Feb-2000, D.M. Zarro (SM&A/GSFC) Written
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Project : SOLAR-B/EIS
Name : EXP_DBASE
Purpose : Expand DBASE into component directories
Category : Catalog
Syntax : IDL> out=exp_dbase(input)
Input : Delimited database directories
CALLS: ***
ARR2STR [1], Arr2Str [2], EXIST, GET_PATH_DELIM, IS_BLANK, IS_STRING, LOCAL_NAME
STR2ARR [1], STR2ARR [2]
CALLED BY:
EXP_ZDBASE
History : Written 7-May-2004, Zarro (L-3Com/GSFC)
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Project : SOLAR-B/EIS
Name : EXP_ZDBASE
Purpose : Expand ZDBASE into component directories
Category : Catalog
Syntax : IDL> exp_zdbase
Keywords : VERBOSE = obvious
CALLS: ***
ARR2STR [1], Arr2Str [2], CHKLOG [1], CHKLOG [2], EXP_DBASE, IS_BLANK, MKLOG
CALLED BY:
APPEND_SDB, FIND_ZDBASE
Side effects: Environment/logical ZDBASE set to expanded directories
History : Written, 1-August-1997, D M Zarro
Modified 10-Feb-2004, Zarro (L-3Com/GSFC) - optimized
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Project : Solar-B/EIS
Name : expand_dirs
Purpose : Expand directory names below input directory
CALLS: ***
ARR2STR [1], Arr2Str [2], CHKLOG [1], CHKLOG [2], EXIST, GET_PATH_DELIM, IS_BLANK
IS_DIR, IS_STRING, STR2ARR [1], STR2ARR [2], TRIM, get_uniq
Example : IDL> dir=expand_dirs('+$SSW/gen')
Can have multiple directories separated by ':'
This function essentially replaces 'find_all_dir'
Category : utility string
Syntax : IDL> out=expand_dirs(dirs)
Inputs : DIRS = top directory to expand
Outputs : ODIRS = array of top directory with subdirectories
Keywords : PLUS_REQUIRED - if set, a '+' is required to force
expansion.
PATH_FORMAT - if set, expanded directories is returned
as a delimited string
History : 30-May-2006, Zarro (L-3Com/GSFC) - written
22-Aug-2006, Zarro (ADNET/GSFC) - added FIFO common
22-Jan-2007, Zarro (ADNET/GSFC)
- check that input dir is an environment variable
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
NAME:
EXPAND_TILDE()
PURPOSE:
Expand tilde in UNIX directory names
CALLING SEQUENCE:
IDL> output=expand_tilde(input)
INPUTS:
INPUT = input file or directory name, scalar string
OUTPUT:
Returns expanded filename, scalar string
CALLED BY:
ARR2GIF, IRAFDIR, LOC_FILE [2], NUMLINES [1], NUMLINES [2], xpickfile2
EXAMPLES:
output=expand_tilde('~zarro/test.doc')
---> output='/usr/users/zarro'
NOTES:
This version of EXPAND_TILDE differs from the version in the Solar
Library in that it does not call the functions EXIST and IDL_RELEASE.
However, it should work identically.
PROCEDURE CALLS:
None.
REVISION HISTORY:
Version 1, 17-Feb-1997, D M Zarro. Written
Transfered from Solar Library W. Landsman Sep. 1997
Made more robust D. Zarro/W. Landsman Sep. 2000
Made even more robust (since things like ~zarro weren't being expanded)
Zarro (EITI/GSFC, Mar 2001)
[Previous]
[Next]
NAME:
EXPAND_TILDE()
PURPOSE:
Expand tilde in UNIX directory names
CALLING SEQUENCE:
IDL> output=expand_tilde(input)
INPUTS:
INPUT = input file or directory name, scalar string
OUTPUT:
Returns expanded filename, scalar string
CALLED BY:
ARR2GIF, IRAFDIR, LOC_FILE [2], NUMLINES [1], NUMLINES [2], xpickfile2
EXAMPLES:
output=expand_tilde('~zarro/test.doc')
---> output='/usr/users/zarro'
NOTES:
This version of EXPAND_TILDE differs from the version in the Solar
Library in that it does not call the functions EXIST and IDL_RELEASE.
However, it should work identically.
PROCEDURE CALLS:
None.
REVISION HISTORY:
Version 1, 17-Feb-1997, D M Zarro. Written
Transfered from Solar Library W. Landsman Sep. 1997
Made more robust D. Zarro/W. Landsman Sep. 2000
Made even more robust (since things like ~zarro weren't being expanded)
Zarro (EITI/GSFC, Mar 2001)
[Previous]
[Next]
Project : SOHO - CDS
Name :
EXPAND_TV
Purpose :
Expands and displays an image.
Explanation :
This procedure expands an image to the dimensions MX, MY and displays
it at position IX, IY on the image display screen. Called from EXPTV
and other routines.
The scaling parameters MX,MY and IX,IY are stored using STORE_TV_SCALE
for later retrieval using GET_TV_SCALE.
Use :
EXPAND_TV, ARRAY, MX, MY, IX, IY
Inputs :
ARRAY = Image to be displayed.
MX, MY = Dimensions to expand image to.
IX, IY = Position of lower left-hand corner of image.
Opt. Inputs :
None.
Outputs :
None.
Opt. Outputs:
None.
Keywords :
SMOOTH = If set, then the image is expanded with bilinear
interpolation. For most devices, the smoothing is done to
the resolution of the device, but PostScript is handled
differently. The default smoothing factor for PostScript
output is 10, but other factors can be selected by setting
SMOOTH to the amount of smoothing desired. Setting SMOOTH=1
is the same as using /SMOOTH, and selects the default value
of 10. Note that the size of the PostScript file will go as
the square of the amount of smoothing.
NOBOX = If set, then the box is not drawn around the image.
NOSCALE = If set, then the command TV is used instead of TVSCL to
display the image.
MISSING = Value flagging missing pixels. These points are scaled to
zero. Ignored if NOSCALE is set.
DISABLE = If set, then TVSELECT not used.
COLOR = Color used for drawing the box around the image.
MAX = The maximum value of ARRAY to be considered in scaling the
image, as used by BYTSCL. The default is the maximum value
of ARRAY.
MIN = The minimum value of ARRAY to be considered in scaling the
image, as used by BYTSCL. The default is the minimum value
of ARRAY.
TOP = The maximum value of the scaled image array, as used by
BYTSCL. The default is !D.N_COLORS-1.
BOTTOM = The minimum value of the scaled image array, as used by
BYTSCL. The default is 0.
VELOCITY = If set, then the image is scaled using FORM_VEL as a
velocity image. Can be used in conjunction with COMBINED
keyword. Ignored if NOSCALE is set.
COMBINED = Signals that the image is to be displayed in one of two
combined color tables. Can be used by itself, or in
conjunction with the VELOCITY or LOWER keywords.
LOWER = If set, then the image is placed in the lower part of the
color table, rather than the upper. Used in conjunction
with COMBINED keyword.
NOSTORE = If set, then information about the position of the plot is
not stored in the TV_SCALE common block. This is for
special purpose images, such as generated by COLOR_BAR or
PLOT_IMAGE.
ORIGIN = Two-element array containing the coordinate value in
physical units of the center of the first pixel in the
image. If not passed, then [0,0] is assumed. Ignored if
NOSTORE is set.
SCALE = Pixel scale in physical units. Can have either one or two
elements. If not passed, then 1 is assumed in both
directions. Ignored if NOSTORE is set.
DATA = If set, then immediately activate the data coordinates for
the displayed image. Ignored if NOSTORE is set.
TRUE = If passed, then contains the dimension containing the color
dimension. For example, if the input array has the
dimensions (3,Nx,Ny), then one would set TRUE=1. If not
passed, then TRUE=3 is assumed. Ignored if the image only
has two dimensions.
BSCALED = Returns the bytescaled image passed to the TV command.
Calls : ***
BSCALE, CONGRDI, CONGRID [1], CONGRID [2], CONGRID [3], DPRINT, GET_IM_KEYWORD
IM_KEYWORD_SET, SETIMAGE, STORE_TV_SCALE, TRIM, TVSELECT, TVUNSELECT
CALLED BY:
COLOR_BAR, EXPTV, OPLOT_IMAGE, PLOT_IMAGE, PUT, UTPLOT_IMAGE, WDISPLAY
Common :
None.
Restrictions:
ARRAY must be two-dimensional or an array of three 2-D images (Nx,Ny,3)
to be used for true color. (See also the TRUE keyword.)
In general, the SERTS image display routines use several non-standard
system variables. These system variables are defined in the procedure
IMAGELIB. It is suggested that the command IMAGELIB be placed in the
user's IDL_STARTUP file.
Some routines also require the SERTS graphics devices software,
generally found in a parallel directory at the site where this software
was obtained. Those routines have their own special system variables.
Side effects:
Messages about the size and position of the displayed image are printed
to the terminal screen, if the DEBUG environment variable is set.
Category :
Utilities, Image_display.
Prev. Hist. :
W.T.T., Oct. 1987.
W.T.T., Jan. 1990, added BADPIXEL keyword.
W.T.T., Feb. 1991, modified to use TVSELECT, TVUNSELECT.
W.T.T., Nov. 1991, added MAX, MIN, and TOP keywords.
W.T.T., Nov. 1991, added INTENSITY, VELOCITY and COMBINED keywords.
W.T.T., Feb. 1992, added LOWER keyword.
W.T.T., May 1992, modified to use BSCALE.
William Thompson, May 1992, modified to call STORE_TV_SCALE.
William Thompson, August 1992, renamed BADPIXEL to MISSING.
William Thompson, September 1992, use COMBINED keyword in place of
INTENSITY. Also, sped up by using
REBIN when possible.
Written :
William Thompson, GSFC, October 1987.
Modified :
Version 1, William Thompson, GSFC, 13 May 1993.
Incorporated into CDS library.
Version 2, William Thompson, GSFC, 2 September 1993.
Added ORIGIN, SCALE and DATA keywords.
Version 3, William Thompson, GSFC, 10 June 1996
Use DPRINT instead of MESSAGE for informational messages.
Version 4, William Thompson, GSFC, 4 March 1998
Allow SMOOTH to have an effect on PostScript images.
Version 5, Terry Kucera, GSFC, 16 October 2001
Automatically does a true color display if the third array
dimension = 3
Version 6, William Thompson, GSFC, 13 November 2001
Added keyword TRUE
Version 7, William Thompson, GSFC, 18 December 2002
Changed !COLOR to !P.COLOR
Version 8, William Thompson, GSFC, 3-Jan-2006
Added keyword BOTTOM
Version 9, William Thompson, GSFC, 21-Sep-2006
Added keyword BSCALED
Version :
Version 9, 21-Sep-2006
[Previous]
[Next]
Project : SOHO - CDS
Name :
EXPTV
Purpose :
Uses SCALE_TV and EXPAND_TV to display an image.
Explanation :
SCALE_TV is called to scale the image, and EXPAND_TV is called to
display the image. As much of the image display screen as possible is
filled.
Will plot true color images if the device has enough colors and if
ARRAY is a 3D Array with the third dimension color (red, green, blue).
(See also the TRUE keyword.)
Use :
EXPTV, ARRAY
Inputs :
ARRAY = Two dimensional image array to be displayed, or 3 images in
an array [Nx,Ny,3] to be displayed as a true color image.
(See also the TRUE keyword.)
Opt. Inputs :
None.
Outputs :
None.
Opt. Outputs:
None.
Keywords :
NOSQUARE = If passed, then pixels are not forced to be square.
SMOOTH = If passed, then image is expanded with interpolation.
NOBOX = If passed, then box is not drawn, and no space is reserved
for a border around the image.
NOSCALE = If passed, then the command TV is used instead of TVSCL to
display the image.
MISSING = Value flagging missing pixels. These points are scaled to
zero. Ignored if NOSCALE is set.
SIZE = If passed and positive, then used to determine the scale of
the image. Returned as the value of the image scale. May
not be compatible with /NOSQUARE.
DISABLE = If set, then TVSELECT not used.
NOEXACT = If set, then exact scaling is not imposed. Otherwise, the
image scale will be either an integer, or one over an
integer. Ignored if SIZE is passed with a positive value.
XALIGN = Alignment within the image display area. Ranges between 0
(left) to 1 (right). Default is 0.5 (centered).
YALIGN = Alignment within the image display area. Ranges between 0
(bottom) to 1 (top). Default is 0.5 (centered).
RELATIVE = Size of area to be used for displaying the image, relative
to the total size available. Must be between 0 and 1.
Default is 1. Passing SIZE explicitly will override this
keyword.
COLOR = Color used for drawing the box around the image.
MAX = The maximum value of ARRAY to be considered in scaling the
image, as used by BYTSCL. The default is the maximum value
of ARRAY.
MIN = The minimum value of ARRAY to be considered in scaling the
image, as used by BYTSCL. The default is the minimum value
of ARRAY.
TOP = The maximum value of the scaled image array, as used by
BYTSCL. The default is !D.N_COLORS-1.
BOTTOM = The minimum value of the scaled image array, as used by
BYTSCL. The default is 0.
VELOCITY = If set, then the image is scaled using FORM_VEL as a
velocity image. Can be used in conjunction with COMBINED
keyword. Ignored if NOSCALE is set.
COMBINED = Signals that the image is to be displayed in one of two
combined color tables. Can be used by itself, or in
conjunction with the VELOCITY or LOWER keywords.
LOWER = If set, then the image is placed in the lower part of the
color table, rather than the upper. Used in conjunction
with COMBINED keyword.
NORESET = If set, then SETIMAGE is not called, and the screen is not
erased.
ORIGIN = Two-element array containing the coordinate value in
physical units of the center of the first pixel in the
image. If not passed, then [0,0] is assumed.
SCALE = Pixel scale in physical units. Can have either one or two
elements. If not passed, then 1 is assumed in both
directions.
DATA = If set, then immediately activate the data coordinates for
the displayed image.
ADJUST = If set, then adjust the pixel size separately in the two
dimensions, so that the physical scale given by the SCALE
parameter is the same along both axes. For example, if a
100x100 image is displayed with
EXPTV, A, SCALE=[2,1], /ADJUST
then it will be shown twice as wide as it is high. Use of
this keyword forces NOEXACT to also be set. Also, NOSQUARE
is ignored.
TRUE = If passed, then contains the dimension containing the color
dimension. For example, if the input array has the
dimensions (3,Nx,Ny), then one would set TRUE=1. If not
passed, then TRUE=3 is assumed. Ignored if the image only
has two dimensions.
BSCALED = Returns the bytescaled image passed to the TV command.
Calls : ***
EXPAND_TV, GET_IM_KEYWORD, SCALE_TV, SETIMAGE, TVERASE
CALLED BY:
BLINK_IMAGES, CDS_THUMBNAIL, EIS_IMAGE_TOOL [1], EIS_IMAGE_TOOL [2], FF_DEMO
IMAGE_TOOL, INDEX2MAP, MK_EIT_MAP, MK_SYNOPTIC, NEW_FF_DEMO, SHOW_SCATTER, TVPRINT
WRUNMOVIE [2]
Common :
None.
Restrictions:
ARRAY must be two-dimensional.
In general, the SERTS image display routines use several non-standard
system variables. These system variables are defined in the procedure
IMAGELIB. It is suggested that the command IMAGELIB be placed in the
user's IDL_STARTUP file.
Some routines also require the SERTS graphics devices software,
generally found in a parallel directory at the site where this software
was obtained. Those routines have their own special system variables.
Side effects:
The image display window is erased before the image is displayed, and
SETIMAGE is called to reset to the default, unless NORESET is set.
Messages about the size and position of the displayed image are printed
to the terminal screen. This can be turned off by setting !QUIET to 1.
Category :
Utilities, Image_display.
Prev. Hist. :
W.T.T., Oct. 1987.
W.T.T., Jan. 1991, added BADPIXEL keyword.
W.T.T., Feb. 1991, modified to use common block IMAGE_AREA.
W.T.T., Feb. 1991, added SIZE keyword.
W.T.T., Nov. 1991, added MAX, MIN, and TOP keywords.
W.T.T., Nov. 1991, added INTENSITY, VELOCITY and COMBINED keywords.
W.T.T., Feb. 1992, added LOWER keyword.
W.T.T., Feb. 1992, added call to SETIMAGE, removed common block, and
added keyword NORESET.
William Thompson, August 1992, renamed BADPIXEL to MISSING.
William Thompson, September 1992, use COMBINED keyword in place of
INTENSITY.
Written :
William Thompson, GSFC, October 1987.
Modified :
Version 1, William Thompson, GSFC, 13 May 1993.
Incorporated into CDS library.
Version 2, William Thompson, GSFC, 2 September 1993.
Added ORIGIN, SCALE and DATA keywords.
Version 3, William Thompson, GSFC, 25 July 1996
Added keywords SCALE and ADJUST
Version 4, William Thompson, GSFC, 13 November 2001
Added capability for true-color images.
Version 5, William Thompson, GSFC, 12 October 2004
Extend true-color to PostScript
Version 6, William Thompson, GSFC, 3-Jan-2006
Added keyword BOTTOM
Version 7, William Thompson, GSFC, 21-Sep-2006
Added keyword BSCALED
Version :
Version 7, 21-Sep-2006
[Previous]
[Next]
Project : SOHO - CDS
Name : EXT_RANGE()
Purpose : Calculate extended range for plotting variables.
Explanation : In order to keep plotted values away from the axes of a plot
this function returns values of the axis limits to be used.
If max = min of data then range is set to [data-px%,data+px%]
if min=max=0 then [-1,1] is returned.
Use : IDL> ax_lim = ext_range(x, px [,y, py, z, pz])
Inputs : x - 2-data vector containing data min,max values
px - percentage by which to extend range of variable
Opt. Inputs : y(z) - same as x
py(z) - same as px
Outputs : Function returns (2 x N) vector where N is the number of
input variables, giving the extended min,max axis values.
Opt. Outputs: None
Keywords : POSITIVE - limit output values to positive.
Calls : None
CALLED BY:
CW_PLOTZ [1], PLOT_EXPINT, PLOT_RASTER, PLOT_VDS_BIAS, TP_DRAW_RASDUR
cw_plotz [2]
Common : None
Restrictions: None
Side effects: None
Category : Util, display
Prev. Hist. : None
Written : C D Pike, RAL, 23-Jun-94
Modified : Add POSITIVE keyword. CDP, 24-Nov-95
Version : Version 2, 24-Nov-95
[Previous]
[Next]
NAME:
EXTAST
PURPOSE:
Extract ASTrometry parameters from a FITS image header.
EXPLANATION:
Extract World Coordinate System information
( http://fits.gsfc.nasa.gov/fits_wcs.html ) from a FITS header and
place it into an IDL structure.
CALLING SEQUENCE:
EXTAST, hdr, [ astr, noparams, ALT= ]
INPUT:
HDR - variable containing the FITS header (string array)
OUTPUTS:
ASTR - Anonymous structure containing astrometry info from the FITS
header ASTR always contains the following tags (even though
some projections do not require all the parameters)
.NAXIS - 2 element array giving image size
.CD - 2 x 2 array containing the astrometry parameters CD1_1 CD1_2
in DEGREES/PIXEL CD2_1 CD2_2
.CDELT - 2 element vector giving physical increment at reference pixel
.CRPIX - 2 element vector giving X and Y coordinates of reference pixel
(def = NAXIS/2) in FITS convention (first pixel is 1,1)
.CRVAL - 2 element double precision vector giving R.A. and DEC of
reference pixel in DEGREES
.CTYPE - 2 element string vector giving projection types, default
['RA---TAN','DEC--TAN']
.LONGPOLE - scalar giving native longitude of the celestial pole
(default = 180 for zenithal projections)
.LATPOLE - scalar giving native latitude of the celestial pole default=0)
.PV2 - Vector of projection parameter associated with latitude axis
PV2 will have up to 21 elements for the ZPN projection, up to 3
for the SIN projection and no more than 2 for any other
projection
.DISTORT - optional substructure specifying any distortion parameters
currently implemented only for "SIP" (Spitzer Imaging
Polynomial) distortion parameters
NOPARAMS - Scalar indicating the results of EXTAST
-1 = Failure - Header missing astrometry parameters
1 = Success - Header contains CROTA + CDELT (AIPS-type) astrometry
2 = Success - Header contains CDn_m astrometry, rec.
3 = Success - Header contains PCn_m + CDELT astrometry.
4 = Success - Header contains ST Guide Star Survey astrometry
(see gsssextast.pro )
OPTIONAL INPUT KEYWORDS:
ALT - single character 'A' through 'Z' or ' ' specifying an alternate
astrometry system present in the FITS header. The default is
to use the primary astrometry or ALT = ' '. If /ALT is set,
then this is equivalent to ALT = 'A'. See Section 3.3 of
Greisen & Calabretta (2002, A&A, 395, 1061) for information about
alternate astrometry keywords.
CALLS: ***
GSSSEXTAST, REMCHAR [1], REMCHAR [2], REMCHAR [3], REPSTR [1], REPSTR [2]
REPSTR [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
ADXY, ARCBAR, ATV, CURVAL, GETROT, HASTROM, HBOXAVE, HCONGRID, HEULER, HPRECESS, HREBIN
HREVERSE, HROT, HROTATE, IMCONTOUR, IMDBASE, POINTING3, TVLASER, XYXY
PROCEDURE:
EXTAST checks for astrometry parameters in the following order:
(1) the CD matrix PC1_1,PC1_2...plus CDELT*, CRPIX and CRVAL
(3) the CD matrix CD1_1,CD1_2... plus CRPIX and CRVAL.
(3) CROTA2 (or CROTA1) and CDELT plus CRPIX and CRVAL.
All three forms are valid FITS according to the paper "Representations
of World Coordinates in FITS by Greisen and Calabretta (2002, A&A, 395,
1061 http://www.aoc.nrao.edu/~egreisen )although form (1) is preferred/
NOTES:
An anonymous structure is created to avoid structure definition
conflicts. This is needed because some projection systems
require additional dimensions (i.e. spherical cube
projections require a specification of the cube face).
PROCEDURES CALLED:
GSSSEXTAST, ZPARCHECK
REVISION HISTORY
Written by B. Boothman 4/15/86
Accept CD001001 keywords 1-3-88
Accept CD1_1, CD2_1... keywords W. Landsman Nov. 92
Recognize GSSS FITS header W. Landsman June 94
Converted to IDL V5.0 W. Landsman September 1997
Get correct sign, when converting CDELT* to CD matrix for right-handed
coordinate system W. Landsman November 1998
Consistent conversion between CROTA and CD matrix October 2000
CTYPE = 'PIXEL' means no astrometry params W. Landsman January 2001
Don't choke if only 1 CTYPE value given W. Landsman August 2001
Recognize PC00n00m keywords again (sigh...) W. Landsman December 2001
Recognize GSSS in ctype also D. Finkbeiner Jan 2002
Introduce ALT keyword W. Landsman June 2003
Fix error introduced June 2003 where free-format values would be
truncated if more than 20 characters. W. Landsman Aug 2003
Further fix to free-format values -- slash need not be present Sep 2003
Default value of LATPOLE is 90.0 W. Landsman February 2004
Allow for distortion substructure, currently implemented only for
SIP (Spitzer Imaging Polynomial) W. Landsman February 2004
Correct LONGPOLE computation if CTYPE = ['*DEC','*RA'] W. L. Feb. 2004
Assume since V5.3 (vector STRMID) W. Landsman Feb 2004
Yet another fix to free-format values W. Landsman April 2004
Introduce PV2 tag to replace PROJP1, PROJP2.. etc. W. Landsman May 2004
Convert NCP projection to generalized SIN W. Landsman Aug 2004
Add NAXIS tag to output structure W. Landsman Jan 2007
[Previous]
[Next]
PROJECT:
SOHO - CDS/SUMER
NAME:
EXTEND_MATRIX()
PURPOSE:
Extand dimension of a given matrix by attaching a submatrix
CATEGORY:
Utility, matrix
EXPLANATION:
There may be cases where one wants to extend a (MxN) matrix to
[(M+K)xN], [(K+M)xN], [Mx(N+K)], or [Mx(K+N)], where K is an
integer number. This routine does exactly this.
SYNTAX:
Result = paste_matrix(matrix, int, /keyword)
CALLED BY:
ITOOL_IMG_MATCH, MK_GIF
EXAMPLES:
a = indgen(5,5)
print, extend_matrix(a, 4, /xprep, value=50)
50 50 50 50 0 1 2 3 4
50 50 50 50 5 6 7 8 9
50 50 50 50 10 11 12 13 14
50 50 50 50 15 16 17 18 19
50 50 50 50 20 21 22 23 24
print, extend_matrix(a, 4, /yappd, value=40)
0 1 2 3 4
5 6 7 8 9
10 11 12 13 14
15 16 17 18 19
20 21 22 23 24
40 40 40 40 40
40 40 40 40 40
40 40 40 40 40
40 40 40 40 40
INPUTS:
MATRIX - A 2-dimensional matrix
INT - An integer over which the matrix is extended
OPTIONAL INPUTS:
None.
OUTPUTS:
RESULT - The extended matrix
OPTIONAL OUTPUTS:
None.
KEYWORDS:
XPREP - Set this keyword to prepend a necessary submatrix in X dir
YPREP - Set this keyword to prepend a necessary submatrix in Y dir
XAPPD - Set this keyword to append a necessary submatrix in X dir
YAPPD - Set this keyword to append a necessary submatrix in Y dir
Note: Only one of above keywords can be set at one time. If
none of the above keywords is set, XAPP is implied
VALUE - Initial value of the extended submatrix. If not
present, zero value (or null string for string array)
is assumed
ERROR - A named variable that contains error message returned.
If no error occurs, ERROR will be a null string
CALLS: ***
MAKE_MATRIX
COMMON:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
HISTORY:
Version 1, November 22, 1995, Liyun Wang, GSFC/ARC. Written
CONTACT:
Liyun Wang, GSFC/ARC (Liyun.Wang.1@gsfc.nasa.gov)
[Previous]
[Next]
NAME:
EXTGRP
PURPOSE:
Extract the group parameter information out of SXREAD output
EXPLANATION:
This procedure extracts the group parameter information out of a
header and parameter variable obtained from SXREAD. This allows
astrometry, photometry and other parameters to be easily SXPARed by
conventional methods and allows the image and header to be saved in
a SIMPLE format.
CALLING SEQUENCE:
ExtGrp, hdr, par
INPUT:
HDR - The header which is to be converted (input and output)
PAR - The Parameter string returned from a call to SXREAD
OUTPUT:
HDR - The converted header, string array
OTHER PROCEDURES CALLED:
SXPAR(), SXADDPAR, SXGPAR(), STRN()
CALLS: ***
STRN [1], STRN [2], STRN [3], SXADDPAR [1], SXADDPAR [2], SXADDPAR [3], SXGPAR
SXPAR [1], SXPAR [2], SXPAR [3]
CALLED BY:
WFPC2_READ
HISTORY:
25-JUN-90 Version 1 written
13-JUL-92 Header finally added to this ancient procedure, code spiffed up
a bit. Now 3 times faster. Added PTYPE comment inclusion. E. Deutsch
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
Project : HESSI
Name : EXTRA_KEYWORDS
Purpose : extract keyword settings from _extra structure
Use : @extra_keywords
Inputs : None
Outputs : All the variables associated with each tag are
released into memory.
Explanation :
For example, to obtain keyword values for a set
of input keywords, create a string array:
pro name,_extra=extra
more_keywords=[ keyword1,keyword2, etc]
@extra_keywords
Restrictions: This program must be @'ed
Category : Structure handling
Restrictions: This program must be @'ed
Written : Tolbert (RITSS/GSFC) October 2000
Modified : Zarro (EER/GSFC), Dec 14, 2002 - vectorized REM_TAG call
[Previous]
[Next]
Name: extract_fid
Purpose: extract embedded FIDS from file names, return fids and times
CALLS: ***
BOX_MESSAGE, BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], FILE2TIME
break_file [4], extract_fids
CALLED BY:
image2movie, read_genxcat, read_spartan, trace_files
NOTE: ** broke out and optimized logic into EXTRACT_FIDS.PRO **
Input Paramters:
filenames - string array of filenames with embedded FID
fmt=[...xxxYYMMDD.HHMM[SS]... ...xxxYYMMDD_HHMM[SS]...]
Output Paramters:
function returns fids
Keyword Parameters:
times (output) - string formatted times (fid conversion)
fidfound (output) - boolean flag = true if valid FIDs extracted
notime (input) - switch used by FILE2TIME to bypass time conversion
pattern (input) - passed to EXTRACT_FIDS
date string template
EX: 'yymmdd.hhmmss', 'yyyymmdd', 'yyyymmdd_hhmm'
History:
16-nov-1995 (S.L.Freeland)
28-mar-1997 (SLF) - extend to 4 digit years, time via 'file2time.pro'
add NOTIME switch and function
24-nov-1997 (SLF) - optimize logic in extract_fids.pro (with an 's')
** Just made this a front end to extract_fids.pro **
Removes restriction on using a fixed length for
a given call
21-apr-1998 (RAS) - vectorize selection of null extensions
[Previous]
[Next]
Name: extract_fids
Purpose: find & extract embedded FIDS in file names
Input Parameters:
filenames - string array of filenames with embedded FIDs
fmt=[...xxxYYMMDD.HHMM[SS]... ...xxxYYMMDD_HHMM[SS]...]
Output Paramters:
function returns fids (date strings like YYYYMMDD?HHMMSS )
Keyword Parameters:
breakfiles (switch)- if set, break_files first (only required if
file PATH might contain a FID
pattern (input) - if set, pattern to use (dont cycle through defaults)
Form = string like 'ddddddsdddd'
where d->digit and s-> special character
OR something like 'yymmdd.hhmmss'
(maps internally to 'ddddddsdddddd')
fidfound (output) - boolean flag = true if valid FID from ALL files
fidsfound (output) - boolean flag (individual files)
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], DELVARX [1], DELVARX [2]
DELVARX [3], DELVARX [4], UPAT2PATTERN, break_file [4], data_chk [1], data_chk [2]
delvarx [5], strmids [1], strmids [2], strspecial [1], strspecial [2]
CALLED BY:
extract_fid, merge_genxcat, ssw_time2filelist
History:
25-Nov-1997 - S.L.Freeland - extract/optimize code from extract_fid.pro
Remove restriction on fixed file length
for a given call.
3-dec-1997 - S.L.Freeland - fix pattern typo (embedded blank)
28-jul-2006 - S.L.Freeland - add explict pattern inc. milliseconds
(sxi for example: yyyymmddDhhmmssmss
Method:
Use pattern mask, byte operations, strmids.pro and strpos for
faster execution and permit mixed file names
[Previous]
[Next]
Name: extract_val
Purpose: translate one FORM variable to string (or string array)
Input:
invalue - one "raw" POST-query value
Output:
function returns translated string or string array
CALLS:
CALLED BY
url_decode
[Previous]
[Next]
NAME:
EXTRAP
PURPOSE:
This procedure fills in the ends of a one-dimensional array from
interior portions using polynomial extrapolation.
CATEGORY:
Image processing
CALLING SEQUENCE:
EXTRAP, Deg, X, Y, Y2
INPUT POSITIONAL PARAMETERS:
Deg: Degree of polynomial
X: Independent variable
Y: Dependent variable
KEYWORD PARAMETERS:
LIMS: 3-element array giving range of X to be used to fit
polynomial and starting point where extrapolation is
to be substituted; if not given, you click on a plot;
order of elements is [xmin, xmax, xstart]; if LIMS is
specified, then program is silent
OUTPUT POSITIONAL PARAMETERS:
Y2: Dependent variable with extrapolated portion filled in
CALLS: ***
AVG [1], AVG [2], MEANCLIP, POLY, POLY_FIT, SKY, SKYADJ_CUBE, STRN [1], STRN [2], STRN [3]
XMEDSKY
CALLED BY:
SKYADJ_CUBE
SIDE EFFECTS:
May pop a window for selecting range.
MODIFICATION HISTORY:
Written by RSH, RITSS, 14 Aug 98
Spiffed up for library. RSH, 6 Oct 98
[Previous]
[Next]
Project : SOHO - CDS
Name : EZFIT
Purpose : Easy Gauss fit to data.
Explanation : Fits a Gaussian + background to a cursor-selected region
in any data array.
Use : 'IDL> ezfit,wave,data,wave_limits,k=k'
Inputs : wave - typically a wavelength array, but can be plain
pixels.
data - the data array,, MUST have same dimensions as 'wave'
Opt. Inputs : wave_limits - limits the initial plot to this region
of the input array. Must be a 2-element
array eg [120,150].
Outputs : Print results to screen
Opt. Outputs: None
Keywords : k - constant to determine order of background fit
k = 0 background = zero (default)
k = 1 background = constant
k = 2 background = linear
k = 3 background = quadratic
Calls : ***
AVERAGE, CDS_GAUSS, FMT_VECT, LAST_ITEM, POLY
Common : None
Restrictions: K=3 does not work because of a bug in CDS_GAUSS
Side effects: None
Category : Spectral, util
Prev. Hist. : None
Written : C D Pike, RAL, 11-Feb-96
Modified : Better overlayed fit. CDP, 10-Jun-96
Version : Version 2, 10-Jun-96