[Previous]
[Next]
NAME:
DAO_VALUE
PURPOSE:
Returns the value of a DAOPHOT point-spread function at a set of points.
EXPLANATION:
The value of the point-spread function is the sum of a
two-dimensional integral under a bivariate Gaussian function, and
a value obtained by interpolation in a look-up table. DAO_VALUE will
optionally compute the derivatives wrt X and Y
CALLING SEQUENCE:
Result = DAO_VALUE( xx, yy, gauss, psf, [ dvdx, dvdy ] )
INPUTS:
XX,YY - the real coordinates of the desired point relative
to the centroid of the point-spread function.
GAUSS - 5 element vector describing the bivariate Gaussian
GAUSS(0)- the peak height of the best-fitting Gaussian profile.
GAUSS(1,2) - x and y offsets from the centroid of the point-spread
function to the center of the best-fitting Gaussian.
GAUSS(3,4) - the x and y sigmas of the best-fitting Gaussian.
PSF - a NPSF by NPSF array containing the look-up table.
OUTPUTS:
RESULT - the computed value of the point-spread function at
a position XX, YY relative to its centroid (which
coincides with the center of the central pixel of the
look-up table).
OPTIONAL OUTPUTS:
DVDX,DVDY - the first derivatives of the composite point-spread
function with respect to x and y.
NOTES
although the arguments XX,YY of the function DAO_VALUE
are relative to the centroid of the PSF, the function RINTER which
DAO_VALUE calls requires coordinates relative to the corner of the
array (see code).
PROCEDURES CALLED:
DAOERF, RINTER()
REVISON HISTORY:
Adapted to IDL by B. Pfarr, STX, 11/17/87 from 1986 STSDAS version
of DAOPHOT
Converted to IDL V5.0 W. Landsman September 1997
CALLS:
CALLED BY
NSTAR, PKFIT [1], PKFIT [2], RDPSF, SUBSTAR
[Previous]
[Next]
NAME:
DAOERF
PURPOSE:
Calulates the intensity, and derivatives, of a 2-d Gaussian PSF
EXPLANATION:
Corrects for the finite size of a pixel by integrating the Gaussian
over the size of the pixel. Used in the IDL-DAOPHOT sequence.
CALLING SEQUENCE:
DAOERF, XIN, YIN, A, F, [ PDER ]
INPUTS:
XIN - input scalar, vector or array, giving X coordinate values
YIN - input scalar, vector or array, giving Y coordinate values, must
have same number of elements as XIN.
A - 5 element parameter array describing the Gaussian
A(0) - peak intensity
A(1) - X position of peak intensity (centroid)
A(2) - Y position of peak intensity (centroid)
A(3) - X sigma of the gaussian (=FWHM/2.345)
A(4) - Y sigma of gaussian
OUTPUTS:
F - array containing value of the function at each (XIN,YIN)
The number of output elements in F and PDER is identical with
the number of elements in X and Y
OPTIONAL OUTPUTS:
PDER - 2 dimensional array of size (NPTS,5) giving the analytic
derivative at each value of F with respect to each parameter A.
REVISION HISTORY:
Written: W. Landsman October, 1987
Converted to IDL V5.0 W. Landsman September 1997
CALLED BY
DAO_VALUE, GETPSF
[Previous]
[Next]
NAME: darklimb_correct
PURPOSE: Calculate limb darkening function for specified wavelength
or wavelength range and use to remove limb darkening effects
from input image.
CALLING SEQUENCE:
darklimb_correct, imgin, imgout, lambda=lambda
darklimb_correct, imgin, imgout, lambda=lambda, limbxyr=[x,y,r]
darklimb_correct,imgin,imgout, lambda=lambda,bandpass=bandpass
INPUT:
imgin - img to be corrected
lambda - wavelength of image in Angstroms
OUTPUT:
imgout - corrected image
OPTIONAL INPUT:
limbxyr - limb centroid, 3 element array [x,y,r]
(if not passed,it will attempt to find it)
bandpass - input bandpass if image is integrated over a range
of wavelengths. If this is set the program takes
averages the limb darkening coefficients over a
wavelength range: lambda +/- bandpass/2
OPTIONAL OUTPUT:
limbfilt - an image of the limb darkening function
NOTES and WARNINGS:
The limb darkening function uses a 5th order polynomial fitting
to the limb darkening constants obtained from Astrophysical
Quantities.
!!! THIS ONLY WORKS IN THE WAVELENGTH RANGE 4000<LAMBDA<15000 ANGSTROMS. !!!
ROUTINES CALLED:
DARKLIMB_U, DARKLIMB_V, DARKLIMB_R
CALLS: ***
DARKLIMB_R, DARKLIMB_U, DARKLIMB_V, DIST_CIRCLE, TARGET [1], target [2]
CALLED BY:
MDI__DEFINE, wrt_sci160k_img
HISTORY:
14-oct-96 - D. Alexander, Written w/SLF
5-feb-97 - S.L.Freeland - Changed names / SSW compatibility
Allow imgout via positional param
Missing Lambda protection
[Previous]
[Next]
Project : SOHO-CDS
Name : DAT2GIF
Purpose : Write 2-d data to GIF file
Category : imaging
Explanation :
Syntax : IDL> dat2gif,data,file
CALLS: ***
CONGRID [1], CONGRID [2], CONGRID [3], DATATYPE [1], DATATYPE [2], DATATYPE [3]
EXIST, LOADCT, SELECT_WINDOWS, SSW_WRITE_GIF
Examples :
Inputs : DATA = 2-d data
FILE = output file
Opt. Inputs : None
Outputs : None
Opt. Outputs: None
Keywords : XSIZE,YSIZE = new sizes to CONGRID images
INTERP= smooth images
History : Written 22 March 1997, D. Zarro, ARC/GSFC
Version 2, 13-Aug-2003, William Thompson
Use SSW_WRITE_GIF instead of WRITE_GIF
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Name: data2files
Purpose: convert data (2D or 3D) -> file or file sequence
Input Parameters:
data - 2D or 3D data
r,g,b - optional color table
Keyword Parameters:
filenames - optional output file names
times - image times in any ssw format - used in place of filenames
names will be: [PREFIX]yyyymmdd_hhmmss.[EXTENSION]
prefix - if set and TIMES supplie, prepended to output file name
[PREFIX]yyyymmdd_hhmmss.[EXTENSION]
autoname - (switch) if set, just name files:
d2f001.[EXTENSION], d2f002.[EXTENSION]...d2fnnn.[EXTENSION]
OTHERS - see zbuff2file for others, including ,/gif,/jpeg,/tiff,/quality
Calling Sequence:
IDL> data2files, data [,r,g,b] [,/gif] [/jpeg] [/tiff]
Method:
Call zbuff2file for each image in <data>. Uses keyword inheritance
CALLED BY:
EIT_MKMOVIE, image2movie, mk_lasteit_movie
History:
Circa 1-Jan-1996 - single front end for data -> common WWW formats
3-June-1998 - S.L.Freeland - made OUTDIR explicit
11-April-2000 - S.L.Freeland - endif->endcase (required by 5.3)
CALLS: ***
BOX_MESSAGE, BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONCAT_DIR [1]
CONCAT_DIR [2], CONCAT_DIR [3], LOADCT, WDEF [1], WDEF [2], anytim [1], anytim [2]
anytim [3], anytim [4], anytim [5], break_file [4], concat_dir [4], data_chk [1]
data_chk [2], str_replace [1], str_replace [2], zbuff2file [1], zbuff2file [2]
Restrictions:
You need to supply either FILNAMES or TIMES arrays
Temporary version (for simple data -> image2movie interface)
TODO - move rebinning, labeling, and rgb options to this routine
in addition to image2movie.
[Previous]
[Next]
Purpose: checks input data for type, ndimension, etc
(uses IDL size function results)
Keyword Parameters:
type - if set, return idl data type from size function
type data type
0 ???
1 byte
2 integer
3 longword
4 floating point
5 double precision
6 ???
7 string
8 structure
ndimen - if set, return number dimensions (size(0))
nimages - if set, return #images (1->2D, NI->3D, else 0)
xsize - if set, return X size (size(data))(1)
nx - synonym for xsize
ysize - if set, return Y size (size(data))(2)
ny - synonym for ysize
string/struct/undefined - if set, return true if type matches
scalar, vector - if set, true if data of specified variety
Calling Examples:
if (data_chk(p1,/type) eq data_chk(p2,/type)) then...
case data_chk(data,/type) of...
if data_chk(data,/string,/scalar) then ...
if data_chk(data,/string,/struct,/undef,/orr)
case data_chk(maybe_cube,/nimages) of...
CALLED BY:
CALC_LOI_ROLL, CLEAN [1], CLEAN_GIF, CUM_SUM, DROT_XY, FILE_STAT [1], FILE_STAT [2]
FIND_FID, FIX_OLD_ATT [1], FIX_OLD_ATT [2], GETV4TYPE, GET_MAP_PROP, GET_MAP_SUB
GOES_TEK [1], GRS_EXTRACT, INDEX2OMAP, ISNUM, Load_Main [1], Load_Main [2], MK_24BIT
MK_8BIT, MK_EIT_MAP, MK_MPEG, PIX2V4, PLOT_MAP
PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support
READ_ANALIST, REBIN_FID, RESTORE_LOW8 [1], RESTORE_LOW8 [3], SOHO_XY, SSW_HOT_PIX
STEPPER2 [1], STEPPER2 [2], STEPPER2_s1 [1], STEPPER2_s1 [2], SUB_MAP, TIFF2GIF
TRACE_COPY, TRACE_PREP, V4OK, V4PRINT, V4XFORM, V4XS2SC, VALID_GIF, XPOPUP
XYPLOT__DEFINE, ace_files, ada2str, align_cube_correl, align_label, anahead2struct
arr_diff, cdrom_files [2], centroid, check_compile [1], check_compile [2]
check_log [1], check_log [2], confac, configure_http, cosmic_stat, cube_edit
daily_forecast [2], data2files, decode_gev, difference_movie, dir_since
doc_summ [1], doc_summ [2], eit_catrd [3], eit_file2path, eit_files, eit_fill_cube
eit_fulldisk, eit_fulldiskdb, eit_gt_corner, eit_gt_filter, eit_gt_wave
eit_proton_summary, eitoversxt, esegment, event_movie [1], event_movie [2]
evt_grid, extract_fids, fid2mo, file_purge_sizes, file_stat [3], files2data
files_since [1], files_since [2], fitshead2struct, fl_goesplot [1]
fl_goesplot [2], fl_goesplot [3], fl_suntoday [1], fl_suntoday [2]
fl_suntoday [3], ftp_list_since, genx2html [1], genx2html [2], get_acedata
get_bcs, get_correl_offsets, get_eit_info, get_gevloc_data, get_history, get_infox
get_leak_image [1], get_leak_image [2], get_leak_image [3], get_newsoon
get_solar_indices, get_ssc_best, get_utevent [1], get_utevent [2]
get_ydbhelp [1], get_ydbhelp [2], go_batch [1], go_batch [2], go_ssw_batch
go_sxt_sss2secondary, go_yo_prod_batch, goes_plot [1], goes_plot [2]
goes_plot [3], goes_plot [4], goes_plot [5], goes_value2class, gt2exe [1]
gt2exe [2], gt_tagval [1], gt_tagval [2], gt_yo_station, gtt_info, gtt_mnem
html_basics, html_doc, html_form_addtime [1], html_form_addtime [2]
html_form_addtime [3], html_get_files, html_highlight, html_linklist
html_remove_template, http_names, hxt_impulsivness, idl_server_command
idl_server_control, image2movie, is_bestnode [1], is_bestnode [2], is_member [1]
is_member [2], keyword_db, killold [1], killold [2], lapalma_cat, lapalma_files
last_lc, last_nelem, laststat [1], laststat [2], later, lcur_image, les_archive_info
low_res, low_res_1d, low_res_2d, make_grid_sphere, make_mirror, map2index
map_env2dir, mdi_files, mdi_write_genxcat, merge_genxcat, mk_formt_html [1]
mk_formt_html [2], mk_formt_html [3], mk_lasteit_movie, mk_nar [1], mk_nar [2]
mk_pix [1], mk_pix [2], mk_sff_pair [1], mk_sff_pair [2], mk_ssc [1], mk_ssc [2]
mk_ssc_batch [1], mk_ssc_batch [2], mk_sxh, mk_week_file [1], mk_week_file [2]
mkthumb, mo_check, mo_patch, mreadfits, mreadfits_header, mreadfits_sxig12
mreadfits_urls, mtcmd [1], mtcmd [2], multi_hda2hxi, mwritefits, mxf_decomp_data
mxf_dset_map, mxf_read_data, mxfdset_map, netscape_control, normalize_cube
password_info, plot_ace, plot_goesp, plot_gsn, pr_status [1], pr_status [2]
pr_visible, prcols [1], prcols [2], prcols [3], pref_super, rd_sxg, rd_sxtgoes
read_eits, read_genxcat, read_lapalma, read_soon, read_sooncheck, read_sxt
read_trace, region_mark, reltime [1], reltime [2], rep_logenv, required_tags
res_freq, restgenx, roll_xy, rotate_3d, safe_log10, save_idl_routines, savegenx
search [1], search [2], search_obs, secchi_time2files, set_logenv [1]
set_logenv [2], set_logvms, sfd_comp, show_pix [1], show_pix [2]
show_pix_event [1], show_pix_event [2], show_pix_event [3], sobel_scale
soon_search [1], soon_search [3], soon_search_www, soon_table, sooncat_cadence
spartan_roll, special_movie, ssc_files [1], ssc_files [2], ssc_files [3]
ssw_apkpbar, ssw_build_trace, ssw_check_contrib, ssw_colors, ssw_composite
ssw_conflicts, ssw_contrib_info, ssw_contrib_monitor, ssw_ct2rgb
ssw_expand_times, ssw_fill_cube, ssw_find_transit, ssw_findstuff2html
ssw_findstuff_struct, ssw_flare_locator, ssw_fov_context, ssw_fs_maskdbase
ssw_getapplet, ssw_getdst, ssw_imapcoord2html, ssw_install_explinkages
ssw_javamovie, ssw_jsulr2data, ssw_jsurl2imagelist, ssw_move, ssw_nar2armurl
ssw_packages, ssw_pos2zenith, ssw_post_query, ssw_required_path
ssw_sec_aktxt2struct, ssw_set_instr, ssw_start_rpcserver, ssw_strfind
ssw_strsplit, ssw_subimage, ssw_swmap_bestof, ssw_swmap_uniqinfo
ssw_time2filelist, ssw_time2paths, ssw_track_demo, ssw_track_fov
ssw_unspike_cube, ssw_upgrade [1], ssw_upgrade [2], ssw_upgrade_backup
ssw_url2data, sswdb_files, sswdb_info, sswdb_upgrade, sswloc, sswstruct_fill [1]
str2cols [1], str2cols [2], str2html_anchor, str_subset, str_taginfo
str_tagval [1], str_tagval [2], strarrinsert, strcapitalize [1]
strcapitalize [2], strjustify, strmids [1], strmids [2], strnocomment
strpair2struct, strspecial [1], strspecial [2], strsplit, struct2fitshead
struct2ms [1], struct2ms [2], struct2ssw, struct_where, sun_today [1]
sun_today [2], sun_today [3], sxt2eit, sxt2file, sxt_cba2os1 [1], sxt_cba2os1 [2]
sxt_deleak [1], sxt_deleak [2], sxt_dstreek, sxt_his_info [2], sxt_html, sxt_plan
sxt_prep [1], sxt_prep [2], sxt_prep [3], sxt_sff_composite [1]
sxt_sff_composite [2], sxt_ssc2file, sxt_ssc2sss, sxt_ssc_rationalize
sxt_suture [1], sxt_suture [2], sxt_xsaa, table2struct, tace_time2level1
thumbnail_table_html, time_window, timeavg [1], timeavg [2], timegrid
tr_head_info, tr_wrt_fits_i1 [2], trace_bin_struct, trace_build_mosaic3
trace_cat, trace_cat2cosmic, trace_comsmic_norm, trace_dph2struct [1]
trace_files, trace_get_vignette, trace_index2macrofov, trace_jpeg_dbase
trace_last_movie [1], trace_last_movie [3], trace_last_movie_queue
trace_make_tma, trace_make_tmr [2], trace_make_vignette, trace_movie_context
trace_movie_index [1], trace_movie_index [2], trace_movies_prioritize [1]
trace_movies_prioritize [2], trace_prioritize_um, trace_request_summary
trace_scale, trace_special_movie [1], trace_special_movie [2]
trace_special_movie [3], trace_special_movie2, trace_struct2filename
trace_sub2point, trace_success_file, trace_uniq_movies, trace_unspike_time
trace_wave2point, trace_wavename2num, trace_write_genxcat, ucon_path
update_history, url_encode, v4canon, weeks_in_year [1], weeks_in_year [2]
write_genxcat, write_trace, write_trace_bin, wrt_str [1], wrt_str [2]
wwwidl_server_check, xspr [1], xspr [2], xy_lwa, yo_file_check [1]
yo_file_check [2], yo_index2path, yo_xda2legacy, yoh_orb_interp [1]
yoh_orb_interp [2], yohkoh_legacy_files [1], yohkoh_legacy_files [2]
yopos [1], yopos [2], ys_file_check [1], ys_file_check [2], zcheck_hdr, zintervals
zmovie, zmovify, zstr2utc [1], zstr2utc [2]
History:
27-Apr-1993 (SLF)
21-Mar-1994 (SLF) documentation header
10-oct-1996 (SLF) add SCALAR (synonym for the historical mispell SCALER)
2-oct-1997 (SLF) add NIMAGES
15-nov-1997 (SLF) add XSIZE and YSIZE keyword and function
20-oct-2002 (LWA) added list of data types to header
2-jan-2007 (SLF) removed vestigal references to ORR (not supported)
Restrictions:
some keywords are mutually exclusive - for self-documenting code
and reduction of code duplicataion
ORR not supported (place holder never realized - you'll have to
do your own 'ands' and 'ors' external (could write data_chks.pro
driver with keyword inherit via _extra to This routine...)
[Previous]
[Next]
NAME:
data_compress
PURPOSE:
Compress and decompress data using UNIX compress or gzip by
writing a temporary file.
INPUT:
data - uncompressed data (unless /DECOMP is set in which
case it is the compressed data)
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], FILE_STAT [1], FILE_STAT [2]
GET_NBYTES, concat_dir [4], curdir [1], curdir [2], diskfree [1], diskfree [2]
file_compress [1], file_compress [2], file_stat [3], file_uncompress [1]
file_uncompress [2], get_logenv [1], get_logenv [2], rdwrt [1], rdwrt [2]
rdwrt [3], write_access [1], write_access [2]
CALLED BY:
RD_SDA_DATA [1], RD_SDA_DATA [2], sav_sda [1], sav_sda [2], sav_sda [3]
OPTIONAL KEYWORD INPUT:
decomp - If set, then the input is compressed data and decompression
is supposed to be performed.
type_comp - Indicates type of compression. 1=>gzip, 2=>Unix Compress
t_comp - indicates type of decompression. 1=>gzip, 2=>Unix Compress
METHOD:
A file must be created in a temporary directory to be decompressed/
compressed. The following logic is used to figure out which
directory to use:
1. If $DIR_GEN_DECOMP is defined and has enough space
2. If $DIR_GBO_TEMP is defined and has enough space
3. If $HOME has enough space
4. The current default directory
5. If /tmp has enough space
HISTORY:
Written 7-Mar-95 by M.Morrison
t_comp, type_comp added 11-Dec-97 by PGS
[Previous]
[Next]
Project : YOHKOH
Name : DATA_PATHS
Purpose : check for directories/subdirectories pointed to by
environmentals named yd* where * is an integer (e.g. yd1)
Category : utility
Explanation : Used by Yohkoh software such as YODAT and WBDA
Syntax : IDL> paths=data_paths()
CALLED BY:
BCS_24HR_PLOT [1], BCS_24HR_PLOT [3], BCS_CAT, BCS_COMPARE, BCS_CREATE_CAT
BCS_FREE_DATA, FIND_CAL [1], FIND_CAL [2], FIND_SEU, GET_SUBARR2, HXT_AUTOIMG
HXT_CAL_FIX [1], HXT_CAL_FIX [2], LASTSFD_DIFF, SEL_AR, SORT_FILES, WBDA [1]
WBDA [2], bcs_unpack, fort2hxi [1], fort2hxi [2], go_hxt_hk_temps
go_lasdisk golaserdisk, go_lasdisk2 golaserdisk, mk_mapfile [1]
mk_mapfile [2], mk_sdm, new_dpath [1], new_dpath [2], rd_sxs_pha [1]
rd_sxs_pha [2], rd_xda_same, search_file [1], search_file [2], stt_plot
tim2file [1], tim2file [2]
Examples :
Inputs : None.
Opt. Inputs : SELECT = index to select
(e.g. path=data_paths(0) for first path element)
Outputs : paths = list of directories under yd*
Opt. Outputs: None.
Keywords : RESET = nulls last search results
QUIET = turn off messages
CALLS: ***
CHK_DIR [1], CHK_DIR [2], DATATYPE [1], DATATYPE [2], DATATYPE [3], DELVARX [1]
DELVARX [2], DELVARX [3], DELVARX [4], ESPAWN, TRIM, UNIQ [1], UNIQ [2], UNIQ [3]
delvarx [5], get_subdirs [1], get_subdirs [2], is_number [1], is_number [2]
rd_tfile [1], rd_tfile [2]
Common : DATA_PATHS = stores last search results.
Restrictions: None.
Side effects: None.
History : 1-Dec-93, D. Zarro (ARC) - written (based on Yohkoh version)
28-Dec-97, Zarro (SAC) - modified for SSW compatibility
5-Jan-98, Zarro (SAC) - modified for SSW (again)
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Name: data_quality
Purpose: determine empirical data quality
Input Parameters:
images - 2D image or 3D image cube
Output Parameters:
function returns %GOOD OR Boolean (true=good)
floating vector w/length = #images
-OR- boolean vector w/length = #images if QUALITY_THRESH supplied
Keyword Parameters:
rows - switch - if set, quality in terms of good rows
columns - switch - if set, quality in terms of good columns
badvalue - user supplied value defining BAD (default is minimum(image))
hist - switch - if set, BAD value is highest frequency value
minimum - switch - if set, BAD value is minimum(image) [DEFAULT]
maximum - switch - if set, BAD value is maximum(image)
Calling Sequence:
quality=data_quality(images [,/row, /col, /min, /max, /hist, badval=nn])
Calling Examples:
quality=data_quality(cube) ; %pixels NE minimum(image)
good=data_quality(cube, quality=90) ; boolean quality GE 90
quality=data_quality(cube, bad=0, /rows) ; %rows with some data
CALLED BY:
eit_fulldisk, lasteit, quality_filter
History:
2-Oct-1996 - S.L.Freeland
[Previous]
[Next]
Name: data_sum2fits
Purpose: add data summary fields to fits header (data not effected)
Input Parameters:
fitsfiles - list of FITS files to read & optionally update
Keyword Parameters:
satthresh - top cutoff level (ex: saturated pix level) - default=4090
minthresh - low cutoff level (ex: missing data) - default=0
outfiles - optional output file names (DEFAULT UPDATES INPUT FILE LIST)
FITS FIELDS CALCULATED AND ADDED:
IMG_AVG - Image Average
STD_DEV - Standard Deviation
SAT_VAL - hi cutoff level (ex: saturated pixels)
SAT_PIX - Number Pixels >= SAT_VAL
MIN_VAL - lo cutoff level (ex: missing data)
MIN_PIX - Number Pixels <= MIN_VAL
Calling Sequence:
data_sum2fits, fitsfiles [/img_avg, /std_dev, satthresh=NN, $
outfiles=outfiles
History:
3-Apr-1996 - S.L.Freeland
CALLS: ***
FILE_EXIST [2], FXADDPAR [1], FXADDPAR [2], READFITS [1], READFITS [2]
READFITS [3], STDEV, WRITEFITS [1], WRITEFITS [2], file_exist [1], file_exist [3]
Side Effects:
if OUTFILES not specified, the input FITS files are updated
[Previous]
[Next]
NAME: data_type
PURPOSE: Return the data type code from SIZE
CALLING SEQUENCE: type=data_type(data)
CALLED BY:
CUT_IMG, READ_PS [1], READ_PS2, RESTORE_LOW8 [1], RESTORE_LOW8 [3], RFITS2 [1]
RFITS2 [2], STEPPER [1], STEPPER [2], STEPPER [3], STEPPER [4], STEPPER [5]
STEPPER2 [1], STEPPER2 [2], STEPPER_LP, cam_run_sum, ccd_hdr_info, check_dumps [1]
check_ff_load, check_sci5k_trunc, command_laser, disp_sci160k [1]
disp_sci160k [2], disp_sci5k, do_tr_reformat, dpc_img_summary
exp_scale min_exp max_exp [1], focus_trace [1], focus_trace [2]
get1hk_info [1], get1hk_info [2], get_gbo_pfi, get_linearity sig e_min e_max
go_lasdisk2 golaserdisk, gtt_info, gtt_mnem, hkplot_info, in_fov, ip_que_dmpver
iperr_sea, leak_sub [1], leak_sub [2], leak_sub [3], list_nrt_times, ltc
mk_ascii_list, mk_dpc_image, mk_fits_head [1], mk_fits_head [2], mk_mdi_fits
mk_mdi_iap, mk_obs_str, mnr_frm_fix, monitor_center [1], new_disp_sci5k [1]
new_disp_sci5k [2], obs_summary, perf_vwbin, pfi_loc, plot_fem, plot_fft
plot_img_cadence, plot_lcur [1], plot_lcur [2], plot_pzt_corr, plot_shutter_perf
plott_bda, plott_hda, plott_wda, pr_gsn [1], pr_gsn [2], pr_mdihk_trans [1]
pr_mdihk_trans [2], pr_therm_rs232, quick_hkplot [1], quick_hkplot [2], rd_fdss
rd_hk [1], rd_hk [2], rd_pkt_head [1], rd_pkt_head [2], rd_rdb [1], rd_rdb [2]
rd_sci5k, rd_station_plan, rd_therm_rs232, rd_trace_i0 [1], rd_trace_i0 [2]
rd_week_file [2], read_ltc file, read_mdi, read_mdi16, read_trace, redo_disploi
redo_mon_sci5k, seq_frame_info, seq_run_sum [1], seq_run_sum [2], sxpar2 [1]
sxpar2 [2], sxt_prep [1], sxt_prep [2], sxt_prep [3], tfr_summary, tfr_summary2
timeline, topsdb [1], topsdb [2], tr_build_img [1], tr_decode_head [1]
tr_decode_head [2], tr_head_info, tr_summary_head, tr_wrt_fits
tr_wrt_fits_i1 [1], tr_wrt_fits_i1 [2], trace_rd_jpeg, web_seq, weekid [2]
wrt_fits [1], wrt_fits [2], wrt_fits_bin_exten [1], wrt_fits_bin_exten [2]
wrt_sci160k_img, xanal_emi, xdisp_trace2, xdisp_trace3, xhkplot, xrd_trace
xset_chain [1], xset_chain [2], xy_raster [1], xy_raster [2], xy_raster [3]
ydb_exist [1], ydb_exist [2], ydb_exist [3], ydb_exist [4]
HISTORY: Drafted by A.McAllister, 8-jul-93.
[Previous]
[Next]
NAME:
DATE
PURPOSE:
Convert day-of-year to a DD-MMM-YYYY string
CALLING SEQUENCE:
D_String = DATE(Year, day )
INPUTS:
Year - Integer scalar specifying the year. If the year contains only
two digits, then it is assumed to indicate the number of
years after 1900.
Day - Integer scalar giving number of days after Jan 0 of the
specified year. Can be larger than 366
OUTPUTS:
D_String - String giving date in format '13-MAR-1986'
RESTRICTIONS:
Will not work for years before 100 AD
EXAMPLE:
IDL> print, date(1997,279)
'6-Oct-1997'
MODIFICATION HISTORY:
D.M. fecit 24 October,1983
Work for years outside of the 19th century W. Landsman September 1997
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
Date2DOY
PURPOSE:
Convert yymmdd into DOY (day of the year). Input can
be either string or integer. The year is an Optional
return parameter.
CALLING SEQUENCE:
Date2DOY, idate, DOY [, yr]
INPUT:
idate input format for the date: yymmdd.
Data-type can be either string or integer.
OUTPUT:
DOY integer with the day of the year.
Output/Optional:
yr year of the returned DOY.
CALLED BY:
FndDur, FndIDs, dsn_input, mk_hst_summary, timeline
Note: If input data-type is string the returned values are
string-type and if input-type is longword the returned
parameters (DOY and yr) are integers.
HISTORY:
written by GAL 18-Sep-91
[Previous]
[Next]
Project : SOHO - CDS
Name : DATE2MJD()
Purpose : Convert calendar dates to Modified Julian Days.
Explanation : This procedure calculates the Modified Julian Day number from
the year, month and day, or from the year, day-of-year.
Use : Result = DATE2MJD(YEAR, MONTH, DAY)
Result = DATE2MJD(YEAR, DOY)
Inputs : YEAR = Calendar year, e.g. 1989. All four digits are
required.
Opt. Inputs : MONTH = Calendar month, from 1-12.
DAY = Calendar day, from 1-31, depending on the month.
or
DOY = Day-of-year, from 1-365 or 1-366, depending on the
year.
Either MONTH and DAY, or DOY must be passed.
Outputs : The result of the function is the Modified Julian Day number
for the date in question. It is an integral number--fractional
days are not considered.
Opt. Outputs: None.
Keywords : ERRMSG = If defined and passed, then any error messages
will be returned to the user in this parameter
rather than being handled by the IDL MESSAGE
utility. If no errors are encountered, then a null
string is returned. In order to use this feature,
the string ERRMSG must be defined first, e.g.,
ERRMSG = ''
MJD = DATE2MJD ( YEAR, MONTH, DAY, ERRMSG=ERRMSG )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
LST, STR2UTC [1], STR2UTC [2], STR2UTC [3], UTC2DOY, UTC2INT [1], UTC2INT [2]
UTC2INT [3], get_ovsa_log
Common : None.
Restrictions: None.
Side effects: If number of parameters sent is invalid, ERRMSG is returned as
a string array of 2 elements if the keyword ERRMSG is set.
Also, the result returned has a value of -1.
Category : Utilities, Time.
Prev. Hist. : None. However, part of the logic of this routine is based on
JDCNV by B. Pfarr, GSFC.
Written : William Thompson, GSFC, 13 September 1993.
Modified : Version 1, William Thompson, GSFC, 13 September 1993.
Version 2, Donald G. Luttermoser, GSFC/ARC, 20 December 1994.
Added the keyword ERRMSG. Added test for month to
make sure a string is not passed. Note that there are
no internal procedures called that use the ERRMSG
keyword.
Version 3, Donald G. Luttermoser, GSFC/ARC, 30 January 1995.
Made the error handling routine more robust. Note
this routine can handle both vector and scalar input.
Version : Version 3, 30 January 1995.
[Previous]
[Next]
PROJECT:
SOHO - SUMER
NAME:
DATE_CODE()
PURPOSE:
Convert any date/time value into YYYYMMDD format.
EXPLANATION:
CALLING SEQUENCE:
Result = DATE_CODE(time)
INPUTS:
TIME - The date/time in any of the standard CDS time formats
OPTIONAL INPUTS:
None.
OUTPUTS:
Result - A string with 'YYYYMMDD' format. If error occurs, a null
string is returned.
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
None.
CALLS: ***
ANYTIM2UTC [1], ANYTIM2UTC [2]
CALLED BY:
FIND_FID, FIND_KAP_FILE, FTP_BBSO, FTP_KISF, FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE
GET_LATEST_IAP, GET_LATEST_KAP, GET_NOAA, GET_RECENT_EIT, ITOOL_GETFILE
ITOOL_PICKFILE, MK_SOHO, PLOT_CDS_POINT [1], PLOT_CDS_POINT [2], UPDATE_KAP
XGET_SYNOPTIC, eis_get_events_filename [2], eis_get_events_filename [4]
eis_mk_plan_gui [1], eis_mk_plan_gui [2], get_ovsa_log, todays_targets
COMMON BLOCKS:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
CATEGORY:
PREVIOUS HISTORY:
Written April 24, 1995, Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
Version 1, Liyun Wang, GSFC/ARC, April 24, 1995
Version 2, August 21, 1995, Liyun Wang, GSFC/ARC
Added ERROR keyword
VERSION:
Version 2, August 21, 1995
[Previous]
[Next]
NAME:
DATE_CONV
PURPOSE:
Procedure to perform conversion of dates to one of three possible formats.
EXPLANATION:
The following date formats are allowed
format 1: real*8 scalar encoded as:
year*1000 + day + hour/24. + min/24./60 + sec/24./60/60
where day is the day of year (1 to 366)
format 2: Vector encoded as:
date[0] = year (eg. 2005)
date[1] = day of year (1 to 366)
date[2] = hour
date[3] = minute
date[4] = second
format 3: string (ascii text) encoded as
DD-MON-YEAR HH:MM:SS.SS
(eg. 14-JUL-2005 15:25:44.23)
OR
YYYY-MM-DD HH:MM:SS.SS (ISO standard)
(eg. 1987-07-14 15:25:44.23 or 1987-07-14T15:25:44.23)
format 4: three element vector giving spacecraft time words
from a Hubble Space Telescope (HST) telemetry packet. Based on
total number of secs since midnight, JAN. 1, 1979
CALLING SEQUENCE
results = DATE_CONV( DATE, TYPE )
INPUTS:
DATE - input date in one of the three possible formats.
TYPE - type of output format desired. If not supplied then
format 3 (real*8 scalar) is used.
valid values:
'REAL' - format 1
'VECTOR' - format 2
'STRING' - format 3
'FITS' - YYYY-MM-DDTHH:MM:SS.SS'
TYPE can be abbreviated to the single character strings 'R',
'V', 'S' and 'F'.
Nobody wants to convert TO spacecraft time (I hope!)
OUTPUTS:
The converted date is returned as the function value.
CALLS: ***
GETTOK [1], GETTOK [2], GETTOK [3], GETTOK [4]
CALLED BY:
DBFPARSE [1], DBFPARSE [2], DBFPARSE [3]
EXAMPLES:
IDL> print,date_conv('2006-03-13 19:58:00.00'),f='(f15.5)'
2006072.83194
IDL> print,date_conv( 2006072.8319444d,'F')
2006-03-13T19:58:00.00
IDL> print,date_conv( 2006072.8319444d,'V')
2006.00 72.0000 19.0000 57.0000 59.9962
HISTORY:
version 1 D. Lindler July, 1987
adapted for IDL version 2 J. Isensee May, 1990
Made year 2000 compliant; allow ISO format input jls/acc Oct 1998
DJL/ACC Jan 1998, Modified to work with dates such as 6-JAN-1996 where
day of month has only one digit.
DJL, Nov. 2000, Added input/output format YYYY-MM-DDTHH:MM:SS.SS
Replace spaces with '0' in output FITS format W.Landsman April 2006
[Previous]
[Next]
PROJECT:
SDAC
Name:
DATPLOT
CALLING SEQUENCE:
datplot,xl,xh,y [,xnew,ynew , STAIRS=STAIRS, color=color [,/OUTPLOT] ]
or
datplot,dummy1, dummy2, xs=xs, y [, xnew,ynew , $
STAIRS=STAIRS, color=color [,/OUTPLOT] ]
PURPOSE:
This procedure is used to OVERplot histograms between channel edges.
CATEGORY:
1-D Graphics.
INPUTS:
xl - Low edges of abscissae
xh - High edges of abscissae
y - Ordinates
Optional Inputs:
xs - xl and xhi are packed into xs(0,*) and xs(1,*)
if xs is passed, then y is still the third argument,
the first two arguments are not used but required
Optional Outputs:
xnew - If /stairs, then array used for abscissae bins
ynew - If /stairs, then ordinate array
KEYWORDS:
OUTPLOT - if set, interpret abscissae as time values for OUTPLOT
If the abscissae is datatype structure, it is interpreted
using Anytim(). Xnew will have Utbase removed.
/stairs - connect all the bins together, looks like stairs
/nolegs - leave the ends floating under stairs option
color - plotting color to use, as with linecolors
psym - symbol to plot at center of horizontal bar, def=no effect
sysmsize - size of symbol, def=0.1
All remaining keywords available to OPLOT
CALLS: ***
CHECKVAR [1], CRANGE, FCHECK, GETUTBASE [1], GETUTBASE [2], anytim [1], anytim [2]
anytim [3], anytim [4], anytim [5], checkvar [2]
CALLED BY:
CAL_SHER, ROUTINE_NAME [1], SPEX_THISTORY [1], SPEX_THISTORY [2], XYPLOT__DEFINE
countsmod_plot [1], countsmod_plot [2], get_slider, out_spectra_4_designer
set_field, spec_plot [1], spec_plot [2], spec_plot [3], spec_plot [4]
spex_spec_plot [1], spex_spec_plot [2], spex_spec_plot [3], spex_spec_plot [4]
RESTRICTIONS:
Initial call to plot must be made to establish scaling. For
overplotting only.
MODIFICATION HISTORY:
91/12/06, FOR VERSION2
18-oct-93, ras, nolegs and color
19-may-94, ras, indicate gaps between intervals using stairs
Version 4, RAS, 17-Jun-1997, protect case of a single data interval to plot.
Version 5, RAS, 29-mar-2001, direct support for Utplot through OUTPLOT
Kim, 17-Apr-2001, Add keyword nsum so nsum will not be in oplotextra, and can
be excluded from call to oplot. Changed default for psym to !p.psym, and don't
oplot the symbols if psym=0 OR psym=10. Also use abs(psym).
CONTACT:
richard.schwartz@gsfc.nasa.gov
[Previous]
[Next]
NAME:
DAYCNV
PURPOSE:
Converts Julian dates to Gregorian calendar dates
CALLING SEQUENCE:
DAYCNV, XJD, YR, MN, DAY, HR
INPUTS:
XJD = Julian date, positive double precision scalar or vector
OUTPUTS:
YR = Year (Integer)
MN = Month (Integer)
DAY = Day (Integer)
HR = Hours and fractional hours (Real). If XJD is a vector,
then YR,MN,DAY and HR will be vectors of the same length.
CALLED BY:
BARYVEL, GET_DATE [1], GET_DATE [2], Int2Ex [1], Int2Ex [2], UT_2_YYDOY [1]
ut_2_yydoy [2]
EXAMPLE:
IDL> DAYCNV, 2440000.D, yr, mn, day, hr
yields yr = 1968, mn =5, day = 23, hr =12.
WARNING:
Be sure that the Julian date is specified as double precision to
maintain accuracy at the fractional hour level.
METHOD:
Uses the algorithm of Fliegel and Van Flandern (1968) as reported in
the "Explanatory Supplement to the Astronomical Almanac" (1992), p. 604
Works for all Gregorian calendar dates with XJD > 0, i.e., dates after
-4713 November 23.
REVISION HISTORY:
Converted to IDL from Yeoman's Comet Ephemeris Generator,
B. Pfarr, STX, 6/16/88
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DAYCNV
PURPOSE:
Converts Julian dates to Gregorian calendar dates
CALLING SEQUENCE:
DAYCNV, XJD, YR, MN, DAY, HR
INPUTS:
XJD = Julian date, positive double precision scalar or vector
OUTPUTS:
YR = Year (Integer)
MN = Month (Integer)
DAY = Day (Integer)
HR = Hours and fractional hours (Real). If XJD is a vector,
then YR,MN,DAY and HR will be vectors of the same length.
CALLED BY:
BARYVEL, GET_DATE [1], GET_DATE [2], Int2Ex [1], Int2Ex [2], UT_2_YYDOY [1]
ut_2_yydoy [2]
EXAMPLE:
IDL> DAYCNV, 2440000.D, yr, mn, day, hr
yields yr = 1968, mn =5, day = 23, hr =12.
WARNING:
Be sure that the Julian date is specified as double precision to
maintain accuracy at the fractional hour level.
METHOD:
Uses the algorithm of Fliegel and Van Flandern (1968) as reported in
the "Explanatory Supplement to the Astronomical Almanac" (1992), p. 604
Works for all Gregorian calendar dates with XJD > 0, i.e., dates after
-4713 November 23.
REVISION HISTORY:
Converted to IDL from Yeoman's Comet Ephemeris Generator,
B. Pfarr, STX, 6/16/88
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
Project : HESSI
Name : DB_CHECK
Purpose : check input search string for syntax errors
Category : Database
Syntax : IDL> db_check,field,in_search,out_search
Example : db_check,['tstart,tend,xcen,ycen'],'xcen<1,ycen>2'
Inputs : FIELD = valid searchable fields in database
IN_SEARCH = search string
Opt. Inputs : None
Outputs : OUT_SEARCH = corrected search string
Opt. Outputs: None
Keywords : STATUS = 1 if corrected string is ok, 0 otherwise
SYNTAX = 1 if syntax error found
(STATUS can be 0 even if SYNTAX=0. This can occur
if input string does not contain at least one valid
searchable field name).
Restrictions: None
CALLS: ***
ARR2STR [1], Arr2Str [2], DATATYPE [1], DATATYPE [2], DATATYPE [3], DPRINT, EXIST
PR_SYNTAX, STR2ARR [1], STR2ARR [2], TRIM, WHERE_VECTOR
Side effects: None.
History : Version 1, 13-May-1999, D M Zarro (SM&A/GSFC) Written
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
NAME:
DB_ENT2EXT
PURPOSE:
Convert a database entry to external (IEEE) data format
EXPLANATION:
Converts a database entry to external (IEEE) data format prior to
writing it. Called from DBWRT.
CALLING SEQUENCE:
DB_ENT2EXT, ENTRY
INPUTS:
ENTRY = Byte array containing a single record to be written to the
database file.
OUTPUTS:
ENTRY = The converted array is returned in place of the input array.
CALLS: ***
DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2], HOST_TO_IEEE [3]
HOST_TO_IEEE [4]
CALLED BY:
DBREPAIR, DBWRT [1], DBWRT [2], DBWRT [3]
COMMON BLOCKS:
DB_COM
HISTORY:
Version 1, William Thompson, GSFC/CDS (ARC), 1 June 1994
Version 2, William Thompson, GSFC/CDS (ARC), 15 September 1995
Fixed bug where only the first element in a
multidimensional array was converted.
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DB_ENT2EXT
PURPOSE:
Convert a database entry to external (IEEE) data format
EXPLANATION:
Converts a database entry to external (IEEE) data format prior to
writing it. Called from DBWRT.
CALLING SEQUENCE:
DB_ENT2EXT, ENTRY
INPUTS:
ENTRY = Byte array containing a single record to be written to the
database file.
OUTPUTS:
ENTRY = The converted array is returned in place of the input array.
CALLS: ***
DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2], HOST_TO_IEEE [3]
HOST_TO_IEEE [4]
CALLED BY:
DBREPAIR, DBWRT [1], DBWRT [2], DBWRT [3]
COMMON BLOCKS:
DB_COM
HISTORY:
Version 1, William Thompson, GSFC/CDS (ARC), 1 June 1994
Version 2, William Thompson, GSFC/CDS (ARC), 15 September 1995
Fixed bug where only the first element in a
multidimensional array was converted.
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DB_ENT2HOST
PURPOSE:
Converts a database entry from external data format to host format.
EXPLANATION:
All items are extracted from the entry, and then converted to host
format, and placed back into the entry. Called from DBRD and DBEXT_DBF.
CALLING SEQUENCE:
DB_ENT2HOST, ENTRY, DBNO
INPUTS:
ENTRY = Byte array containing a single record read from the
database file.
DBNO = Number of the opened database file.
OUTPUTS:
ENTRY = The converted array is returned in place of the input array.
CALLS: ***
DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], IEEE_TO_HOST [1], IEEE_TO_HOST [2], IEEE_TO_HOST [3]
IEEE_TO_HOST [4]
CALLED BY:
DBEXT_DBF [1], DBEXT_DBF [2], DBEXT_DBF [3], DBRD [1], DBRD [2], DBRD [3], DBREPAIR
COMMON BLOCKS:
DB_COM
HISTORY:
Version 1, William Thompson, GSFC/CDS (ARC), 1 June 1994
Version 2, William Thompson, GSFC/CDS (ARC), 15 September 1995
Fixed bug where only the first element in a
multidimensional array was converted.
Version 3, Richard Schwartz, GSFC/SDAC, 23 August 1996
Allow 2 dimensional byte arrays for entries to facilitate
multiple entry processing. Pass IDLTYPE onto IEEE_TO_HOST
Converted to IDL V5.0 W. Landsman September 1997
Version 4, 2 May 2003, W. Thompson
Use BSWAP keyword to DBXVAL instead of calling IEEE_TO_HOST.
[Previous]
[Next]
NAME:
DB_ENT2HOST
PURPOSE:
Converts a database entry from external data format to host format.
EXPLANATION:
All items are extracted from the entry, and then converted to host
format, and placed back into the entry. Called from DBRD and DBEXT_DBF.
CALLING SEQUENCE:
DB_ENT2HOST, ENTRY, DBNO
INPUTS:
ENTRY = Byte array containing a single record read from the
database file.
DBNO = Number of the opened database file.
OUTPUTS:
ENTRY = The converted array is returned in place of the input array.
CALLS: ***
DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], IEEE_TO_HOST [1], IEEE_TO_HOST [2], IEEE_TO_HOST [3]
IEEE_TO_HOST [4]
CALLED BY:
DBEXT_DBF [1], DBEXT_DBF [2], DBEXT_DBF [3], DBRD [1], DBRD [2], DBRD [3], DBREPAIR
COMMON BLOCKS:
DB_COM
HISTORY:
Version 1, William Thompson, GSFC/CDS (ARC), 1 June 1994
Version 2, William Thompson, GSFC/CDS (ARC), 15 September 1995
Fixed bug where only the first element in a
multidimensional array was converted.
Version 3, Richard Schwartz, GSFC/SDAC, 23 August 1996
Allow 2 dimensional byte arrays for entries to facilitate
multiple entry processing. Pass IDLTYPE onto IEEE_TO_HOST
Converted to IDL V5.0 W. Landsman September 1997
Version 4, 2 May 2003, W. Thompson
Use BSWAP keyword to DBXVAL instead of calling IEEE_TO_HOST.
[Previous]
[Next]
Project : HESSI
Name : db_gbo
Purpose : IDL database for Max Millennium Campaign
Category : Database
Inputs : See component routines
Outputs : Database save file in $GBO_DB
Keywords : See component routines
CALLS: ***
ADD_GBO, ANYTIM2TAI, ANYTIM2UTC [1], ANYTIM2UTC [2], APPEND_ARR, APPLY_LOCK
ARR2STR [1], Arr2Str [2], BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3]
BSORT [1], BSORT [2], BSORT [3], BSORT [4], CACHE_GBO, CAT_GBO, CHECK_GBO, CHECK_LOCK
CHKLOG [1], CHKLOG [2], CHMOD, CLEAR_GBO, CLEAR_STRUCT, CLOSE_LUN, COM_GBO
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], COPY_STRUCT [1], COPY_STRUCT [2]
COPY_STRUCT [3], DATATYPE [1], DATATYPE [2], DATATYPE [3], DEF_GBO, DELVARX [1]
DELVARX [2], DELVARX [3], DELVARX [4], DISPLAY_GBO, ERR_STATE, ESPAWN, EXIST
GBO_LOCKED, GBO_LOCK_FILE, GBO_PNG, GBO_SERVER, GBO_TIME, GET_CALLER, GET_GBO, GET_GEV
GET_UTC, GREP, HELP_GBO, IDL_RELEASE, IS_BLANK, IS_STRING, LIST_FILE, LIST_GBO, LIST_NAR
LOAD_GBO, LOCK_GBO, LOC_FILE [1], LOC_FILE [2], LOC_FILE [3], LOGS_GBO, MATCH_STRUCT
MERGE_GBO, MKLOG, NEXT_GBO, NUM2STR, OBS_GBO, OUTPUT_GBO, PLOT_GBO, PRINTF_GBO
PRINT_CONTENT, PRINT_GBO, PRINT_HTML, PRINT_SEARCH, PURGE_GBO, RD_ASCII [1]
RD_ASCII [2], RD_GEV, REMDUP_GBO, RESTORE_GBO, RM_LOCK, SAVE_GBO, SEARCH_GBO, SET_GBO
SET_LINE_COLOR, SHOW_GBO, STR2ARR [1], STR2ARR [2], STR2LINES, STR_FORMAT
TAG_EXIST [1], TAG_EXIST [2], TEST_DIR, TRIM, TRIM2, UNIQ [1], UNIQ [2], UNIQ [3]
UNLOCK_GBO, UPDATE_GBO, USE_GBO, UTPLOT [1], UTPLOT [2], UTPLOT [3], UTPLOT [4]
UTPLOT [5], UTPLOT [6], VALID_GBO, VALID_TIME, anytim [1], anytim [2], anytim [3]
anytim [4], anytim [5], break_file [4], concat_dir [4], delvarx [5], get_uniq
gt_day [1], gt_day [2], gt_time [1], gt_time [2], is_number [1], is_number [2]
is_struct, stc_compress, stc_uniq, stc_where, str_cut, str_replace [1]
str_replace [2], where_arr [1], where_arr [2]
History : 2-Aug-1999, D.M. Zarro. Written
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
NAME:
DB_INFO
PURPOSE:
Function to obtain information on opened data base file(s)
CALLING SEQUENCES:
1) result = db_info(request)
2) result = db_info(request,dbname)
INPUTS (calling sequence 1):
request - string specifying requested value(s)
value of request value returned in result
'open' Flag set to 1 if data base(s) are opened
'number' Number of data base files opened
'items' Total number of items (all db's opened)
'update' update flag (1 if opened for update)
'unit_dbf' Unit number of the .dbf files
'unit_dbx' Unit number of the .dbx files
'entries' Number of entries in the db's
'length' Record lengths for the db's
'external' True if the db's are in external format
INPUTS (calling sequence 2):
request - string specifying requested value(s)
value of request value returned in result
'name' Name of the data base
'number' Sequential number of the db
'items' Number of items for this db
'item1' Position of item1 for this db
in item list for all db's
'item2' Position of last item for this db.
'pointer' Number of the item which points
to this db. 0 for first or primary
db. -1 if link file pointers.
'length' Record length for this db.
'title' Title of the data base
'unit_dbf' Unit number of the .dbf file
'unit_dbx' Unit number of the .dbx file
'entries' Number of entries in the db
'seqnum' Last sequence number used
'alloc' Allocated space (# entries)
'update' 1 if data base opened for update
'external' True if data base in external format
dbname - data base name or number
OUTPUTS:
Requested value(s) are returned as the function value.
CALLED BY:
ADD_ANOMALY, ADD_DATAWIN, ADD_EXPER, ADD_EXP_COMM, ADD_F_RASTER, ADD_F_STUDY
ADD_GSET, ADD_LINELIST, ADD_PROGRAM, ADD_RAW, ADD_RES_TYPE, ADD_T_STUDY, ADD_V_STUDY
CHECK_INTEG, CP_GET_HISTORY, CP_GET_MNEMONIC, DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCIRCLE [1], DBCIRCLE [2], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3]
DBCOMPARE [1], DBCOMPARE [2], DBCOMPRESS, DBDELETE [1], DBDELETE [2], DBDELETE [3]
DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2]
DBEDIT_BASIC [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_DBF [1]
DBEXT_DBF [2], DBEXT_DBF [3], DBEXT_IND [1], DBEXT_IND [2], DBEXT_IND [3]
DBFIND [1], DBFIND [2], DBFIND [3], DBFIND_SORT [1], DBFIND_SORT [2]
DBFIND_SORT [3], DBGET [1], DBGET [2], DBGET [3], DBHELP [1], DBHELP [2], DBHELP [3]
DBINDEX [1], DBINDEX [2], DBINDEX [3], DBMATCH [1], DBMATCH [2], DBMATCH [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBPRINT [1], DBPRINT [2], DBPRINT [3], DBRD [1]
DBRD [2], DBRD [3], DBREPAIR, DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4]
DBWRT [1], DBWRT [2], DBWRT [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3]
DB_ENT2HOST [1], DB_ENT2HOST [2], DB_ENT2HOST [3], DB_ITEM [1], DB_ITEM [2]
DB_ITEM [3], FLUSH_CATALOG, GET_CDHS_DEXWIN, GET_CDHS_RASTER, GET_CDHS_SERIES
GET_CDHS_VDSWIN, GET_INSTRUMENT, LIST_F_RASTER, LIST_F_STUDY, LIST_LINELIST
LIST_OBJECT, LIST_PROGRAM, WHAT_CDHS_STUDY, db_read_linelist_all [1]
db_read_linelist_all [2], db_read_raster_all [1], db_read_raster_all [2]
db_read_study_all [1], db_read_study_all [2], eis_import_study_gui
eis_save_imported_linelist, eis_save_imported_raster
HISTORY:
version 1 D. Lindler Oct. 1987
changed type from 1 to 7 for IDLV2, J. Isensee, Nov., 1990
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added EXTERNAL request type.
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DB_INFO
PURPOSE:
Function to obtain information on opened data base file(s)
CALLING SEQUENCES:
1) result = db_info(request)
2) result = db_info(request,dbname)
INPUTS (calling sequence 1):
request - string specifying requested value(s)
value of request value returned in result
'open' Flag set to 1 if data base(s) are opened
'number' Number of data base files opened
'items' Total number of items (all db's opened)
'update' update flag (1 if opened for update)
'unit_dbf' Unit number of the .dbf files
'unit_dbx' Unit number of the .dbx files
'entries' Number of entries in the db's
'length' Record lengths for the db's
'external' True if the db's are in external format
INPUTS (calling sequence 2):
request - string specifying requested value(s)
value of request value returned in result
'name' Name of the data base
'number' Sequential number of the db
'items' Number of items for this db
'item1' Position of item1 for this db
in item list for all db's
'item2' Position of last item for this db.
'pointer' Number of the item which points
to this db. 0 for first or primary
db. -1 if link file pointers.
'length' Record length for this db.
'title' Title of the data base
'unit_dbf' Unit number of the .dbf file
'unit_dbx' Unit number of the .dbx file
'entries' Number of entries in the db
'seqnum' Last sequence number used
'alloc' Allocated space (# entries)
'update' 1 if data base opened for update
'external' True if data base in external format
dbname - data base name or number
OUTPUTS:
Requested value(s) are returned as the function value.
CALLED BY:
ADD_ANOMALY, ADD_DATAWIN, ADD_EXPER, ADD_EXP_COMM, ADD_F_RASTER, ADD_F_STUDY
ADD_GSET, ADD_LINELIST, ADD_PROGRAM, ADD_RAW, ADD_RES_TYPE, ADD_T_STUDY, ADD_V_STUDY
CHECK_INTEG, CP_GET_HISTORY, CP_GET_MNEMONIC, DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCIRCLE [1], DBCIRCLE [2], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3]
DBCOMPARE [1], DBCOMPARE [2], DBCOMPRESS, DBDELETE [1], DBDELETE [2], DBDELETE [3]
DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2]
DBEDIT_BASIC [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_DBF [1]
DBEXT_DBF [2], DBEXT_DBF [3], DBEXT_IND [1], DBEXT_IND [2], DBEXT_IND [3]
DBFIND [1], DBFIND [2], DBFIND [3], DBFIND_SORT [1], DBFIND_SORT [2]
DBFIND_SORT [3], DBGET [1], DBGET [2], DBGET [3], DBHELP [1], DBHELP [2], DBHELP [3]
DBINDEX [1], DBINDEX [2], DBINDEX [3], DBMATCH [1], DBMATCH [2], DBMATCH [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBPRINT [1], DBPRINT [2], DBPRINT [3], DBRD [1]
DBRD [2], DBRD [3], DBREPAIR, DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4]
DBWRT [1], DBWRT [2], DBWRT [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3]
DB_ENT2HOST [1], DB_ENT2HOST [2], DB_ENT2HOST [3], DB_ITEM [1], DB_ITEM [2]
DB_ITEM [3], FLUSH_CATALOG, GET_CDHS_DEXWIN, GET_CDHS_RASTER, GET_CDHS_SERIES
GET_CDHS_VDSWIN, GET_INSTRUMENT, LIST_F_RASTER, LIST_F_STUDY, LIST_LINELIST
LIST_OBJECT, LIST_PROGRAM, WHAT_CDHS_STUDY, db_read_linelist_all [1]
db_read_linelist_all [2], db_read_raster_all [1], db_read_raster_all [2]
db_read_study_all [1], db_read_study_all [2], eis_import_study_gui
eis_save_imported_linelist, eis_save_imported_raster
HISTORY:
version 1 D. Lindler Oct. 1987
changed type from 1 to 7 for IDLV2, J. Isensee, Nov., 1990
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added EXTERNAL request type.
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DB_ITEM
PURPOSE:
Returns the item numbers and other info. for an item name.
EXPLANATION:
Procedure to return the item numbers and other information
of a specified item name
CALLING SEQUENCE:
db_item, items, itnum, ivalnum, idltype, sbyte, numvals, nbytes
INPUTS:
items - item name or number
form 1 scalar string giving item(s) as list of names
separated by commas
form 2 string array giving list of item names
form 3 string of form '$filename' giving name
of text file containing items (one item per
line)
form 4 integer scalar giving single item number or
integer vector list of item numbers
form 5 Null string specifying interactive selection
Upon return items will contain selected items
in form 1
form 6 '*' select all items
OUTPUTS:
itnum - item number
ivalnum - value(s) number from multiple valued item
idltype - data type(s) (1=string,2=byte,4=i*4,...)
sbyte - starting byte(s) in entry
numvals - number of data values for item(s)
It is the full length of a vector item unless
a subscript was supplied
nbytes - number of bytes for each value
All outputs are vectors even if a single item is requested
OPTIONAL INPUT KEYWORDS:
ERRMSG = If defined and passed, then any error messages will
be returned to the user in this parameter rather than depending
on the MESSAGE routine in IDL. If no errors are encountered,
then a null string is returned. In order to use this feature,
ERRMSG must be defined first, e.g.
ERRMSG = ''
DB_ITEM, ERRMSG=ERRMSG, ...
IF ERRMSG NE '' THEN ...
PROCEDURE CALLS:
DB_INFO, GETTOK, SCREEN_SELECT
REVISION HISTORY:
Written: D. Lindler, GSFC/HRS, October 1987
Version 2, William Thompson, GSFC, 17-Mar-1997
Added keyword ERRMSG
Converted to IDL V5.0 W. Landsman October 1997
Use STRSPLIT instead of GETTOK to parse form 1, W. Landsman July 2002
Assume since V5.4 use FILE_EXPAND_PATH() instead of SPEC_DIR()
W. Landsman April 2006
CALLS:
CALLED BY
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1]
DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3]
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_IND [1], DBEXT_IND [2]
DBEXT_IND [3], DBFIND [1], DBFIND [2], DBFIND [3], DBGET [1], DBGET [2], DBGET [3]
DBHELP [1], DBHELP [2], DBHELP [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBMATCH [1], DBMATCH [2], DBMATCH [3], DBPRINT [1], DBPRINT [2], DBPRINT [3]
DBPUT [1], DBPUT [2], DBPUT [3], DBRD [1], DBRD [2], DBRD [3], DBSORT [1], DBSORT [2]
DBSORT [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4], DBVAL [1]
DBVAL [2], DBVAL [3], DBWRT [1], DBWRT [2], DBWRT [3], IMDBASE
eis_get_as_string_arry [1], eis_get_as_string_arry [2]
[Previous]
[Next]
NAME:
DB_ITEM
PURPOSE:
Returns the item numbers and other info. for an item name.
EXPLANATION:
Procedure to return the item numbers and other information
of a specified item name
CALLING SEQUENCE:
db_item, items, itnum, ivalnum, idltype, sbyte, numvals, nbytes
INPUTS:
items - item name or number
form 1 scalar string giving item(s) as list of names
separated by commas
form 2 string array giving list of item names
form 3 string of form '$filename' giving name
of text file containing items (one item per
line)
form 4 integer scalar giving single item number or
integer vector list of item numbers
form 5 Null string specifying interactive selection
Upon return items will contain selected items
in form 1
form 6 '*' select all items
OUTPUTS:
itnum - item number
ivalnum - value(s) number from multiple valued item
idltype - data type(s) (1=string,2=byte,4=i*4,...)
sbyte - starting byte(s) in entry
numvals - number of data values for item(s)
It is the full length of a vector item unless
a subscript was supplied
nbytes - number of bytes for each value
All outputs are vectors even if a single item is requested
OPTIONAL INPUT KEYWORDS:
ERRMSG = If defined and passed, then any error messages will
be returned to the user in this parameter rather than depending
on the MESSAGE routine in IDL. If no errors are encountered,
then a null string is returned. In order to use this feature,
ERRMSG must be defined first, e.g.
ERRMSG = ''
DB_ITEM, ERRMSG=ERRMSG, ...
IF ERRMSG NE '' THEN ...
PROCEDURE CALLS:
DB_INFO, GETTOK, SCREEN_SELECT
REVISION HISTORY:
Written: D. Lindler, GSFC/HRS, October 1987
Version 2, William Thompson, GSFC, 17-Mar-1997
Added keyword ERRMSG
Converted to IDL V5.0 W. Landsman October 1997
Use STRSPLIT instead of GETTOK to parse form 1, W. Landsman July 2002
Assume since V5.4 use FILE_EXPAND_PATH() instead of SPEC_DIR()
W. Landsman April 2006
CALLS:
CALLED BY
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1]
DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3]
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_IND [1], DBEXT_IND [2]
DBEXT_IND [3], DBFIND [1], DBFIND [2], DBFIND [3], DBGET [1], DBGET [2], DBGET [3]
DBHELP [1], DBHELP [2], DBHELP [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBMATCH [1], DBMATCH [2], DBMATCH [3], DBPRINT [1], DBPRINT [2], DBPRINT [3]
DBPUT [1], DBPUT [2], DBPUT [3], DBRD [1], DBRD [2], DBRD [3], DBSORT [1], DBSORT [2]
DBSORT [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4], DBVAL [1]
DBVAL [2], DBVAL [3], DBWRT [1], DBWRT [2], DBWRT [3], IMDBASE
eis_get_as_string_arry [1], eis_get_as_string_arry [2]
[Previous]
[Next]
NAME:
DB_ITEM_INFO
PURPOSE:
routine to return information on selected item(s) in the opened
data bases.
CALLING SEQUENCE:
result = db_item_info( request, itnums)
INPUTS:
request - string giving the requested information.
'name' - item names
'idltype' - IDL data type (integers)
see documentation of intrinsic SIZE funtion
'nvalues' - vector item length (1 for scalar)
'sbyte' - starting byte in .dbf record (use bytepos
to get starting byte in record returned by
dbrd)
'nbytes' - bytes per data value
'index' - index types
'description' - description of the item
'pflag' - pointer item flags
'pointer' - data bases the items point to
'format' - print formats
'flen' - print field length
'headers' - print headers
'bytepos' - starting byte in dbrd record for the items
'dbnumber' - number of the opened data base
'pnumber' - number of db it points to (if the db is
opened)
'itemnumber' - item number in the file
itnums -(optional) Item numbers. If not supplied info on all items
are returned.
OUTPUT:
Requested information is returned as a vector. Its type depends
on the item requested.
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1]
DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3]
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_IND [1], DBEXT_IND [2]
DBEXT_IND [3], DBFIND [1], DBFIND [2], DBFIND [3], DBFIND_SORT [1]
DBFIND_SORT [2], DBFIND_SORT [3], DBGET [1], DBGET [2], DBGET [3], DBHELP [1]
DBHELP [2], DBHELP [3], DBINDEX [1], DBINDEX [2], DBINDEX [3], DBMATCH [1]
DBMATCH [2], DBMATCH [3], DBPRINT [1], DBPRINT [2], DBPRINT [3], DBREPAIR
DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4], DBWRT [1], DBWRT [2]
DBWRT [3], IMDBASE
HISTORY:
version 1 D. Lindler Nov. 1987
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DB_ITEM_INFO
PURPOSE:
routine to return information on selected item(s) in the opened
data bases.
CALLING SEQUENCE:
result = db_item_info( request, itnums)
INPUTS:
request - string giving the requested information.
'name' - item names
'idltype' - IDL data type (integers)
see documentation of intrinsic SIZE funtion
'nvalues' - vector item length (1 for scalar)
'sbyte' - starting byte in .dbf record (use bytepos
to get starting byte in record returned by
dbrd)
'nbytes' - bytes per data value
'index' - index types
'description' - description of the item
'pflag' - pointer item flags
'pointer' - data bases the items point to
'format' - print formats
'flen' - print field length
'headers' - print headers
'bytepos' - starting byte in dbrd record for the items
'dbnumber' - number of the opened data base
'pnumber' - number of db it points to (if the db is
opened)
'itemnumber' - item number in the file
itnums -(optional) Item numbers. If not supplied info on all items
are returned.
OUTPUT:
Requested information is returned as a vector. Its type depends
on the item requested.
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1]
DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3]
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_IND [1], DBEXT_IND [2]
DBEXT_IND [3], DBFIND [1], DBFIND [2], DBFIND [3], DBFIND_SORT [1]
DBFIND_SORT [2], DBFIND_SORT [3], DBGET [1], DBGET [2], DBGET [3], DBHELP [1]
DBHELP [2], DBHELP [3], DBINDEX [1], DBINDEX [2], DBINDEX [3], DBMATCH [1]
DBMATCH [2], DBMATCH [3], DBPRINT [1], DBPRINT [2], DBPRINT [3], DBREPAIR
DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4], DBWRT [1], DBWRT [2]
DBWRT [3], IMDBASE
HISTORY:
version 1 D. Lindler Nov. 1987
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DB_OR
PURPOSE:
Combine two vectors of entry numbers, removing duplicate values.
EXPLANATION:
DB_OR can also be used to remove duplicate values from any longword
vector
CALLING SEQUENCE:
LIST = DB_OR( LIST1 ) ;Remove duplicate values from LIST1
or
LIST = DB_OR( LIST1, LIST2 ) ;Concatenate LIST1 and LIST2, remove dups
INPUTS:
LIST1, LIST2 - Vectors containing entry numbers, must be non-negative
integers or longwords.
OUTPUT:
LIST - Vector containing entry numbers in either LIST1 or LIST2
METHOD
DB_OR returns where the histogram of the entry vectors is non-zero
PROCEDURE CALLS
ZPARCHECK - checks parameters
REVISION HISTORY:
Written, W. Landsman February, 1989
Check for degenerate values W.L. February, 1993
Converted to IDL V5.0 W. Landsman September 1997
CALLS:
[Previous]
[Next]
NAME:
DB_OR
PURPOSE:
Combine two vectors of entry numbers, removing duplicate values.
EXPLANATION:
DB_OR can also be used to remove duplicate values from any longword
vector
CALLING SEQUENCE:
LIST = DB_OR( LIST1 ) ;Remove duplicate values from LIST1
or
LIST = DB_OR( LIST1, LIST2 ) ;Concatenate LIST1 and LIST2, remove dups
INPUTS:
LIST1, LIST2 - Vectors containing entry numbers, must be non-negative
integers or longwords.
OUTPUT:
LIST - Vector containing entry numbers in either LIST1 or LIST2
METHOD
DB_OR returns where the histogram of the entry vectors is non-zero
PROCEDURE CALLS
ZPARCHECK - checks parameters
REVISION HISTORY:
Written, W. Landsman February, 1989
Check for degenerate values W.L. February, 1993
Converted to IDL V5.0 W. Landsman September 1997
CALLS:
[Previous]
[Next]
NAME:
DB_TITLES
PURPOSE:
Print database name and title. Called by DBHELP
CALLING SEQUENCE:
db_titles, fnames, titles
INPUT:
fnames - string array of data base names
SIDE EFFECT:
Database name is printed along with the description in the .dbh file
CALLS: ***
FIND_WITH_DEF [1], FIND_WITH_DEF [2], FIND_WITH_DEF [3]
HISTORY:
version 2 W. Landsman May, 1989
modified to work under Unix, D. Neill, ACC, Feb 1991.
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
Converted to IDL V5.0 W. Landsman September 1997
Assume since V5.5, W. Landsman September 2006
[Previous]
[Next]
NAME:
DB_TITLES
PURPOSE:
Print database name and title. Called by DBHELP
CALLING SEQUENCE:
db_titles, fnames, titles
INPUT:
fnames - string array of data base names
SIDE EFFECT:
Database name is printed along with the description in the .dbh file
CALLS: ***
FIND_WITH_DEF [1], FIND_WITH_DEF [2], FIND_WITH_DEF [3]
HISTORY:
version 2 W. Landsman May, 1989
modified to work under Unix, D. Neill, ACC, Feb 1991.
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
Converted to IDL V5.0 W. Landsman September 1997
Assume since V5.5, W. Landsman September 2006
[Previous]
[Next]
NAME:
DBBUILD
PURPOSE:
Build a database by appending new values for every item.
EXPLANATION:
The database must be opened for update (with DBOPEN) before calling
DBBUILD.
Users with IDL V6.1 or later might which to use the version of
DBBUILD in http://idlastro.gsfc.nasa.gov/ftp/v61/ which does not
use the EXECUTE() function and accepts up to 50 items.
CALLING SEQUENCE:
DBBUILD, [ v1, v2, v3, v4......v30, /NOINDEX, /SILENT, STATUS = ]
INPUTS:
v1,v2....v30 - vectors containing values for all items in the database.
V1 contains values for the first item, V2 for the second, etc.
The number of vectors supplied must equal the number of items
(excluding entry number) in the database. The number of elements
in each vector should be the same. A multiple valued item
should be dimensioned NVALUE by NENTRY, where NVALUE is the number
of values, and NENTRY is the number of entries.
OPTIONAL INPUT KEYWORDS:
/NOINDEX - If this keyword is supplied and non-zero then DBBUILD will
*not* create an indexed file. Useful to save time if
DBBUILD is to be called several times and the indexed file need
only be created on the last call
/SILENT - If the keyword SILENT is set and non-zero, then DBBUILD
will not print a message when the index files are generated
OPTIONAL OUTPUT KEYWORD:
STATUS - Returns a status code denoting whether the operation was
successful (1) or unsuccessful (0). Useful when DBBUILD is
called from within other applications.
CALLS: ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], S
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_CAMPAIGN, ADD_CDS_POINT, ADD_DATAWIN, ADD_DETAIL
ADD_EFFICIENCY, ADD_EFF_AREA, ADD_EXPER, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_INST_DLYD, ADD_LINELIST, ADD_MAIN, ADD_MIRSHIFT
ADD_NRT_RES, ADD_OTHER_OBS, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RESOURCE
ADD_RES_TYPE, ADD_TEL_MODE, ADD_TEL_SUBMODE, ADD_TILTCAL, ADD_T_STUDY
ADD_V_RASTER, ADD_V_STUDY, ADD_WAVECAL, ADD_WAVE_EFF, FLUSH_CATALOG, MOD_CAMPAIGN
REG_CDROM, SET_KAP_VERS, UPD_PLAN, UPD_SOHO_DET
db_save_linelist_entry_create [1], db_save_linelist_entry_create [2]
db_save_raster_entry_create [1], db_save_raster_entry_create [2]
db_save_study_entry_create [1], db_save_study_entry_create [2]
db_save_study_entry_create [3], db_save_study_entry_create [4]
eis_write_science_component_database_table [1]
eis_write_science_component_database_table [2]
eis_write_time_component_database_table [1]
eis_write_time_component_database_table [2]
EXAMPLE:
Suppose a database named STARS contains the four items NAME,RA,DEC, and
FLUX. Assume that one already has the four vectors containing the
values, and that the database definition (.DBD) file already exists.
IDL> !PRIV=2 ;Writing to database requires !PRIV=2
IDL> dbcreate,'stars',1,1 ;Create database (.DBF) & index (.DBX) file
IDL> dbopen,'stars',1 ;Open database for update
IDL> dbbuild,name,ra,dec,flux ;Write 4 vectors into the database
NOTES:
Do not call DBCREATE before DBBUILD if you want to append entries to
an existing database
DBBUILD checks that each value vector matches the idl type given in the
database definition (..dbd) file, and that character strings are the
proper length.
REVISION HISTORY:
Written W. Landsman March, 1989
Added /NOINDEX keyword W. Landsman November, 1992
User no longer need supply all items W. Landsman December, 1992
Added STATUS keyword, William Thompson, GSFC, 1 April 1994
Added /SILENT keyword, William Thompson, GSFC, October 1995
Allow up to 30 items, fix problem if first item was multiple value
W. Landsman GSFC, July 1996
Faster build of external databases on big endian machines
W. Landsman GSFC, November 1997
Converted to IDL V5.0 W. Landsman 24-Nov-1997
Use SIZE(/TNAME) for error mesage display W.Landsman July 2001
Fix message display error introduced July 2001 W. Landsman Oct. 2001
Make sure error message appears even if !QUIET is set W.L November 2006
[Previous]
[Next]
NAME:
DBBUILD
PURPOSE:
Build a database by appending new values for every item.
EXPLANATION:
The database must be opened for update (with DBOPEN) before calling
DBBUILD.
Users with IDL V6.1 or later might which to use the version of
DBBUILD in http://idlastro.gsfc.nasa.gov/ftp/v61/ which does not
use the EXECUTE() function and accepts up to 50 items.
CALLING SEQUENCE:
DBBUILD, [ v1, v2, v3, v4......v30, /NOINDEX, /SILENT, STATUS = ]
INPUTS:
v1,v2....v30 - vectors containing values for all items in the database.
V1 contains values for the first item, V2 for the second, etc.
The number of vectors supplied must equal the number of items
(excluding entry number) in the database. The number of elements
in each vector should be the same. A multiple valued item
should be dimensioned NVALUE by NENTRY, where NVALUE is the number
of values, and NENTRY is the number of entries.
OPTIONAL INPUT KEYWORDS:
/NOINDEX - If this keyword is supplied and non-zero then DBBUILD will
*not* create an indexed file. Useful to save time if
DBBUILD is to be called several times and the indexed file need
only be created on the last call
/SILENT - If the keyword SILENT is set and non-zero, then DBBUILD
will not print a message when the index files are generated
OPTIONAL OUTPUT KEYWORD:
STATUS - Returns a status code denoting whether the operation was
successful (1) or unsuccessful (0). Useful when DBBUILD is
called from within other applications.
CALLS: ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], S
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_CAMPAIGN, ADD_CDS_POINT, ADD_DATAWIN, ADD_DETAIL
ADD_EFFICIENCY, ADD_EFF_AREA, ADD_EXPER, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_INST_DLYD, ADD_LINELIST, ADD_MAIN, ADD_MIRSHIFT
ADD_NRT_RES, ADD_OTHER_OBS, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RESOURCE
ADD_RES_TYPE, ADD_TEL_MODE, ADD_TEL_SUBMODE, ADD_TILTCAL, ADD_T_STUDY
ADD_V_RASTER, ADD_V_STUDY, ADD_WAVECAL, ADD_WAVE_EFF, FLUSH_CATALOG, MOD_CAMPAIGN
REG_CDROM, SET_KAP_VERS, UPD_PLAN, UPD_SOHO_DET
db_save_linelist_entry_create [1], db_save_linelist_entry_create [2]
db_save_raster_entry_create [1], db_save_raster_entry_create [2]
db_save_study_entry_create [1], db_save_study_entry_create [2]
db_save_study_entry_create [3], db_save_study_entry_create [4]
eis_write_science_component_database_table [1]
eis_write_science_component_database_table [2]
eis_write_time_component_database_table [1]
eis_write_time_component_database_table [2]
EXAMPLE:
Suppose a database named STARS contains the four items NAME,RA,DEC, and
FLUX. Assume that one already has the four vectors containing the
values, and that the database definition (.DBD) file already exists.
IDL> !PRIV=2 ;Writing to database requires !PRIV=2
IDL> dbcreate,'stars',1,1 ;Create database (.DBF) & index (.DBX) file
IDL> dbopen,'stars',1 ;Open database for update
IDL> dbbuild,name,ra,dec,flux ;Write 4 vectors into the database
NOTES:
Do not call DBCREATE before DBBUILD if you want to append entries to
an existing database
DBBUILD checks that each value vector matches the idl type given in the
database definition (..dbd) file, and that character strings are the
proper length.
REVISION HISTORY:
Written W. Landsman March, 1989
Added /NOINDEX keyword W. Landsman November, 1992
User no longer need supply all items W. Landsman December, 1992
Added STATUS keyword, William Thompson, GSFC, 1 April 1994
Added /SILENT keyword, William Thompson, GSFC, October 1995
Allow up to 30 items, fix problem if first item was multiple value
W. Landsman GSFC, July 1996
Faster build of external databases on big endian machines
W. Landsman GSFC, November 1997
Converted to IDL V5.0 W. Landsman 24-Nov-1997
Use SIZE(/TNAME) for error mesage display W.Landsman July 2001
Fix message display error introduced July 2001 W. Landsman Oct. 2001
Make sure error message appears even if !QUIET is set W.L November 2006
[Previous]
[Next]
NAME:
DBCIRCLE
PURPOSE:
Find sources in a database within specified radius of specified center
EXPLANATION:
Database must include items named 'RA' (in hours) and 'DEC' (in degrees)
and must have previously been opened with DBOPEN
CALLING SEQUENCE:
list = DBCIRCLE( ra_cen, dec_cen, [radius, dis, sublist, /SILENT,
TO_B1950, /TO_J2000 ] )
INPUTS:
RA_CEN - Right ascension of the search center in decimal HOURS, scalar
DEC_CEN - Declination of the search center in decimal DEGREES, scalar
RA_CEN and DEC_CEN should be in the same equinox as the
currently opened catalog.
OPTIONAL INPUT:
RADIUS - Radius of the search field in arc minutes, scalar.
DBCIRCLE prompts for RADIUS if not supplied.
SUBLIST - Vector giving entry numbers in currently opened database
to be searched. Default is to search all entries
OUTPUTS:
LIST - Vector giving entry numbers in the currently opened catalog
which have positions within the specified search circle
LIST is set to -1 if no sources fall within the search circle
!ERR is set to the number sources found.
OPTIONAL OUTPUT
DIS - The distance in arcminutes of each entry specified by LIST
to the search center (given by RA_CEN and DEC_CEN)
CALLS: ***
BPRECESS, DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND [1], DBFIND [2]
DBFIND [3], DB_INFO [1], DB_INFO [2], DB_INFO [3], GCIRC, JPRECESS
CALLED BY:
DBTARGET [1], DBTARGET [2]
OPTIONAL KEYWORD INPUT:
/SILENT - If this keyword is set, then DBCIRCLE will not print the
number of entries found at the terminal
/TO_J2000 - If this keyword is set, then the entered coordinates are
assumed to be in equinox B1950, and will be converted to
J2000 before searching the database
/TO_B1950 - If this keyword is set, then the entered coordinates are
assumed to be in equinox J2000, and will be converted to
B1950 before searching the database
NOTE: The user must determine on his own whether the database
is in B1950 or J2000 coordinates.
METHOD:
A DBFIND search is first performed on a square area of given radius.
The list is the restricted to a circular area by using GCIRC to
compute the distance of each object to the field center.
EXAMPLE:
Find all Hipparcos stars within 40' of the nucleus of M33
(at J2000 1h 33m 50.9s 30d 39' 36.7'')
IDL> dbopen,'hipparcos'
IDL> list = dbcircle( ten(1,33,50.9), ten(3,39,36.7), 40)
PROCEDURE CALLS:
BPRECESS, DBFIND(), DBEXT, DB_INFO(), GCIRC, JPRECESS
REVISION HISTORY:
Written W. Landsman STX January 1990
Fixed search when crossing 0h July 1990
Spiffed up code a bit October, 1991
Converted to IDL V5.0 W. Landsman September 1997
Leave DIS vector unchanged if no entries found W. Landsman July 1999
Use maximum declination, rather than declination at field center to
correct RA for latitude effect W. Landsman September 1999
[Previous]
[Next]
NAME:
DBCIRCLE
PURPOSE:
Find sources in a database within specified radius of specified center
EXPLANATION:
Database must include items named 'RA' (in hours) and 'DEC' (in degrees)
and must have previously been opened with DBOPEN
CALLING SEQUENCE:
list = DBCIRCLE( ra_cen, dec_cen, [radius, dis, sublist, /SILENT,
TO_B1950, /TO_J2000 ] )
INPUTS:
RA_CEN - Right ascension of the search center in decimal HOURS, scalar
DEC_CEN - Declination of the search center in decimal DEGREES, scalar
RA_CEN and DEC_CEN should be in the same equinox as the
currently opened catalog.
OPTIONAL INPUT:
RADIUS - Radius of the search field in arc minutes, scalar.
DBCIRCLE prompts for RADIUS if not supplied.
SUBLIST - Vector giving entry numbers in currently opened database
to be searched. Default is to search all entries
OUTPUTS:
LIST - Vector giving entry numbers in the currently opened catalog
which have positions within the specified search circle
LIST is set to -1 if no sources fall within the search circle
!ERR is set to the number sources found.
OPTIONAL OUTPUT
DIS - The distance in arcminutes of each entry specified by LIST
to the search center (given by RA_CEN and DEC_CEN)
CALLS: ***
BPRECESS, DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND [1], DBFIND [2]
DBFIND [3], DB_INFO [1], DB_INFO [2], DB_INFO [3], GCIRC, JPRECESS
CALLED BY:
DBTARGET [1], DBTARGET [2]
OPTIONAL KEYWORD INPUT:
/SILENT - If this keyword is set, then DBCIRCLE will not print the
number of entries found at the terminal
/TO_J2000 - If this keyword is set, then the entered coordinates are
assumed to be in equinox B1950, and will be converted to
J2000 before searching the database
/TO_B1950 - If this keyword is set, then the entered coordinates are
assumed to be in equinox J2000, and will be converted to
B1950 before searching the database
NOTE: The user must determine on his own whether the database
is in B1950 or J2000 coordinates.
METHOD:
A DBFIND search is first performed on a square area of given radius.
The list is the restricted to a circular area by using GCIRC to
compute the distance of each object to the field center.
EXAMPLE:
Find all Hipparcos stars within 40' of the nucleus of M33
(at J2000 1h 33m 50.9s 30d 39' 36.7'')
IDL> dbopen,'hipparcos'
IDL> list = dbcircle( ten(1,33,50.9), ten(3,39,36.7), 40)
PROCEDURE CALLS:
BPRECESS, DBFIND(), DBEXT, DB_INFO(), GCIRC, JPRECESS
REVISION HISTORY:
Written W. Landsman STX January 1990
Fixed search when crossing 0h July 1990
Spiffed up code a bit October, 1991
Converted to IDL V5.0 W. Landsman September 1997
Leave DIS vector unchanged if no entries found W. Landsman July 1999
Use maximum declination, rather than declination at field center to
correct RA for latitude effect W. Landsman September 1999
[Previous]
[Next]
NAME:
DBCLOSE
PURPOSE:
procedure to close a data base file
CALLING SEQUENCE:
dbclose
INPUTS:
None
OUTPUTS
None
CALLS: ***
DB_INFO [1], DB_INFO [2], DB_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2]
HOST_TO_IEEE [3], HOST_TO_IEEE [4]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_CAMPAIGN, ADD_CDS_POINT, ADD_DATAWIN, ADD_DETAIL
ADD_EFFICIENCY, ADD_EFF_AREA, ADD_EXPER, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_INST_DLYD, ADD_LINELIST, ADD_MAIN, ADD_MIRSHIFT
ADD_NRT_RES, ADD_OTHER_OBS, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RESOURCE
ADD_RES_TYPE, ADD_TEL_MODE, ADD_TEL_SUBMODE, ADD_TILTCAL, ADD_T_STUDY
ADD_V_RASTER, ADD_V_STUDY, ADD_WAVECAL, ADD_WAVE_EFF, CHECK_INTEG, CHK_T_STUDY
CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE
CLR_TEL_SUBMODE, CP_GET_HISTORY, CP_GET_MNEMONIC, DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBDELETE [1], DBDELETE [2], DBDELETE [3], DBOPEN [1], DBOPEN [2]
DBOPEN [3], DBREPAIR, DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN
DEL_SOHO_DET, FIND_CDS_STUDIES, FIX_MAIN_TIMES, FLUSH_CATALOG, GET_ALT
GET_ANOMALY, GET_CAMPAIGN, GET_CDHS_DEXWIN, GET_CDHS_RASTER, GET_CDHS_SERIES
GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS, GET_DATAWIN, GET_DETAIL
GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG, GET_F_RASTER, GET_F_STUDY
GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN, GET_MIRSHIFT, GET_PLAN
GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET, GET_STUDY, GET_TILTCAL
GET_WAVECAL, GET_WAVE_EFF, LAST_KAP_VERS, LIST_ALT, LIST_ANOMALY, LIST_CAMPAIGN
LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL, LIST_DLYD_TIMES, LIST_DSN
LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER, LIST_F_STUDY, LIST_GSET
LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M, LIST_NRT_RES, LIST_OBJECT
LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM, LIST_RAW, LIST_RES_TYPE
LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_CAMPAIGN, MOD_EXPER, MOD_GSET
MOD_LINELIST, MOD_MAIN, MOD_V_RASTER, MOD_V_STUDY, PRG_ALT, PRG_ANOMALY, PRG_DETAIL
PRG_FLAG, PRG_PLAN, PRG_SOHO_DET, PURGE_CDHSSTATE, REG_CDROM, SEARCH_HXRBS_DB
SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET, WHAT_CDHS_STUDY, WHAT_USES
db_read_linelist_all [1], db_read_linelist_all [2]
db_read_linelist_entry [1], db_read_linelist_entry [2]
db_read_raster_all [1], db_read_raster_all [2], db_read_raster_entry [1]
db_read_raster_entry [2], db_read_study_all [1], db_read_study_all [2]
db_save_linelist_entry_create [1], db_save_linelist_entry_create [2]
db_save_linelist_entry_update [1], db_save_linelist_entry_update [2]
db_save_raster_entry_create [1], db_save_raster_entry_create [2]
db_save_raster_entry_update [1], db_save_raster_entry_update [2]
db_save_study_entry_create [1], db_save_study_entry_create [2]
db_save_study_entry_create [3], db_save_study_entry_create [4]
db_save_study_entry_update [1], db_save_study_entry_update [2]
eis_get_esdb_details [1], eis_get_esdb_details [2]
eis_get_science_details [1], eis_get_science_details [2]
eis_get_science_details [3], eis_get_science_details [4]
eis_get_science_entry [1], eis_get_science_entry [2]
eis_get_science_raster_entry [1], eis_get_science_raster_entry [2]
eis_get_study_raster_entry [1], eis_get_study_raster_entry [2]
eis_get_technical_study_rasters [1], eis_get_technical_study_rasters [2]
eis_get_timeline_details [1], eis_get_timeline_details [2]
eis_linelist_gui [1], eis_linelist_gui [2], eis_raster_gui [1]
eis_raster_gui [2], eis_study_gui [1], eis_study_gui [2]
eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
eis_write_science_component_database_table [1]
eis_write_science_component_database_table [2]
eis_write_time_component_database_table [1]
eis_write_time_component_database_table [2]
SIDE EFFECTS:
the data base files currently opened are closed
PROCEDURE CALLS:
DB_INFO(), HOST_TO_IEEE
HISTORY:
version 2 D. Lindler Oct. 1987
For IDL version 2 August 1990
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBCLOSE
PURPOSE:
procedure to close a data base file
CALLING SEQUENCE:
dbclose
INPUTS:
None
OUTPUTS
None
CALLS: ***
DB_INFO [1], DB_INFO [2], DB_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2]
HOST_TO_IEEE [3], HOST_TO_IEEE [4]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_CAMPAIGN, ADD_CDS_POINT, ADD_DATAWIN, ADD_DETAIL
ADD_EFFICIENCY, ADD_EFF_AREA, ADD_EXPER, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_INST_DLYD, ADD_LINELIST, ADD_MAIN, ADD_MIRSHIFT
ADD_NRT_RES, ADD_OTHER_OBS, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RESOURCE
ADD_RES_TYPE, ADD_TEL_MODE, ADD_TEL_SUBMODE, ADD_TILTCAL, ADD_T_STUDY
ADD_V_RASTER, ADD_V_STUDY, ADD_WAVECAL, ADD_WAVE_EFF, CHECK_INTEG, CHK_T_STUDY
CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE
CLR_TEL_SUBMODE, CP_GET_HISTORY, CP_GET_MNEMONIC, DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBDELETE [1], DBDELETE [2], DBDELETE [3], DBOPEN [1], DBOPEN [2]
DBOPEN [3], DBREPAIR, DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN
DEL_SOHO_DET, FIND_CDS_STUDIES, FIX_MAIN_TIMES, FLUSH_CATALOG, GET_ALT
GET_ANOMALY, GET_CAMPAIGN, GET_CDHS_DEXWIN, GET_CDHS_RASTER, GET_CDHS_SERIES
GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS, GET_DATAWIN, GET_DETAIL
GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG, GET_F_RASTER, GET_F_STUDY
GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN, GET_MIRSHIFT, GET_PLAN
GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET, GET_STUDY, GET_TILTCAL
GET_WAVECAL, GET_WAVE_EFF, LAST_KAP_VERS, LIST_ALT, LIST_ANOMALY, LIST_CAMPAIGN
LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL, LIST_DLYD_TIMES, LIST_DSN
LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER, LIST_F_STUDY, LIST_GSET
LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M, LIST_NRT_RES, LIST_OBJECT
LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM, LIST_RAW, LIST_RES_TYPE
LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_CAMPAIGN, MOD_EXPER, MOD_GSET
MOD_LINELIST, MOD_MAIN, MOD_V_RASTER, MOD_V_STUDY, PRG_ALT, PRG_ANOMALY, PRG_DETAIL
PRG_FLAG, PRG_PLAN, PRG_SOHO_DET, PURGE_CDHSSTATE, REG_CDROM, SEARCH_HXRBS_DB
SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET, WHAT_CDHS_STUDY, WHAT_USES
db_read_linelist_all [1], db_read_linelist_all [2]
db_read_linelist_entry [1], db_read_linelist_entry [2]
db_read_raster_all [1], db_read_raster_all [2], db_read_raster_entry [1]
db_read_raster_entry [2], db_read_study_all [1], db_read_study_all [2]
db_save_linelist_entry_create [1], db_save_linelist_entry_create [2]
db_save_linelist_entry_update [1], db_save_linelist_entry_update [2]
db_save_raster_entry_create [1], db_save_raster_entry_create [2]
db_save_raster_entry_update [1], db_save_raster_entry_update [2]
db_save_study_entry_create [1], db_save_study_entry_create [2]
db_save_study_entry_create [3], db_save_study_entry_create [4]
db_save_study_entry_update [1], db_save_study_entry_update [2]
eis_get_esdb_details [1], eis_get_esdb_details [2]
eis_get_science_details [1], eis_get_science_details [2]
eis_get_science_details [3], eis_get_science_details [4]
eis_get_science_entry [1], eis_get_science_entry [2]
eis_get_science_raster_entry [1], eis_get_science_raster_entry [2]
eis_get_study_raster_entry [1], eis_get_study_raster_entry [2]
eis_get_technical_study_rasters [1], eis_get_technical_study_rasters [2]
eis_get_timeline_details [1], eis_get_timeline_details [2]
eis_linelist_gui [1], eis_linelist_gui [2], eis_raster_gui [1]
eis_raster_gui [2], eis_study_gui [1], eis_study_gui [2]
eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
eis_write_science_component_database_table [1]
eis_write_science_component_database_table [2]
eis_write_time_component_database_table [1]
eis_write_time_component_database_table [2]
SIDE EFFECTS:
the data base files currently opened are closed
PROCEDURE CALLS:
DB_INFO(), HOST_TO_IEEE
HISTORY:
version 2 D. Lindler Oct. 1987
For IDL version 2 August 1990
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBCOMPARE
PURPOSE:
Display two entries in an IDL database side by side in a column format
CALLING SEQUENCE:
dbcompare, list1, list2, [items, TEXTOUT= , /DIFF]
INPUTS:
list1 - Integer scalar giving first entry number to be compared.
list2 - Integer scalar giving second entry number to be compared.
OPTIONAL INPUT-OUTPUT:
items - items to be compared, if not supplied then all items will be
compared. The items can be specified in any of the following ways:
form 1 scalar string giving item(s) as list of names
separated by commas
form 2 string array giving list of item names
form 3 string of form '$filename' giving name
of text file containing items (one item per line) line)
form 4 integer scalar giving single item number or
integer vector list of item numbers
form 5 Null string specifying interactive selection. This
is the default if 'items' is not supplied
form 6 '*' select all items (= default)
If items was undefined or a null string on input, then
on output it will contain the items interactively selected.
OPTIONAL INPUT KEYWORDS:
/DIFF - If this keyword is set and non-zero, then only the items
in the database that differ will be printed
TEXTOUT - Scalar Integer (1-7) Used to determine output device. See
TEXTOPEN for more info.
SYSTEM VARIABLES:
Output device controlled by non-standard system variable !TEXTOUT, if
TEXTOUT keyword is not used.
CALLS: ***
DBRD [1], DBRD [2], DBRD [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], TEXTCLOSE [1], TEXTCLOSE [2], TEXTCLOSE [3]
TEXTOPEN [1], TEXTOPEN [2], TEXTOPEN [3]
EXAMPLE:
Display entries 3624 and 3625 in column form showing only the items
that differ.
IDL> dbcompare,3624,3625,/diff
PROCEDURES USED:
DB_INFO(), DB_ITEM, DB_ITEM_INFO(), DBRD, DBXVAL()
TEXTOPEN, TEXTCLOSE
HISTORY:
Written, W. Landsman July 1996
Fix documentation, add Syntax display W. Landsman November 1998
Replace DATATYPE() with size(/TNAME) W. Landsman November 2001
Assume since V5.5, remove VMS call W. Landsman September 2006
[Previous]
[Next]
NAME:
DBCOMPARE
PURPOSE:
Display two entries in an IDL database side by side in a column format
CALLING SEQUENCE:
dbcompare, list1, list2, [items, TEXTOUT= , /DIFF]
INPUTS:
list1 - Integer scalar giving first entry number to be compared.
list2 - Integer scalar giving second entry number to be compared.
OPTIONAL INPUT-OUTPUT:
items - items to be compared, if not supplied then all items will be
compared. The items can be specified in any of the following ways:
form 1 scalar string giving item(s) as list of names
separated by commas
form 2 string array giving list of item names
form 3 string of form '$filename' giving name
of text file containing items (one item per line) line)
form 4 integer scalar giving single item number or
integer vector list of item numbers
form 5 Null string specifying interactive selection. This
is the default if 'items' is not supplied
form 6 '*' select all items (= default)
If items was undefined or a null string on input, then
on output it will contain the items interactively selected.
OPTIONAL INPUT KEYWORDS:
/DIFF - If this keyword is set and non-zero, then only the items
in the database that differ will be printed
TEXTOUT - Scalar Integer (1-7) Used to determine output device. See
TEXTOPEN for more info.
SYSTEM VARIABLES:
Output device controlled by non-standard system variable !TEXTOUT, if
TEXTOUT keyword is not used.
CALLS: ***
DBRD [1], DBRD [2], DBRD [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], TEXTCLOSE [1], TEXTCLOSE [2], TEXTCLOSE [3]
TEXTOPEN [1], TEXTOPEN [2], TEXTOPEN [3]
EXAMPLE:
Display entries 3624 and 3625 in column form showing only the items
that differ.
IDL> dbcompare,3624,3625,/diff
PROCEDURES USED:
DB_INFO(), DB_ITEM, DB_ITEM_INFO(), DBRD, DBXVAL()
TEXTOPEN, TEXTCLOSE
HISTORY:
Written, W. Landsman July 1996
Fix documentation, add Syntax display W. Landsman November 1998
Replace DATATYPE() with size(/TNAME) W. Landsman November 2001
Assume since V5.5, remove VMS call W. Landsman September 2006
[Previous]
[Next]
NAME:
DBCOMPRESS
PURPOSE:
Compress a .dbf database file after a call to DBDELETE
EXPLANATION:
The procedure DBDELETE will remove specified entries from a database
but it will not free the unused space. DBCOMPRESS will compress
the .dbf file so that it only contains valid entries.
CALLING SEQUENCE:
DBCOMPRESS, dbname
INPUT PARAMETERS:
dbname - Name of the database to be compressed, scalar string
NOTES:
(1) Will not compress the index (.dbx) file. The size of the .dbx file
is controlled by the MaxEntries value in the database definition
(.dbd) file
(2) The updated .dbf file is written in the current directory.
This may need to be moved into the ZDBASE directory.
PROCEDURE CALLS:
DBOPEN, DB_INFO(), FIND_WITH_DEF()
REVISION HISTORY:
Written, W. Landsman Raytheon STX May 1998
Converted to IDL V5.0 June 1998
CALLS:
CALLED BY
FLUSH_CATALOG, PRG_DETAIL, PRG_PLAN
[Previous]
[Next]
NAME:
DBCREATE
PURPOSE:
Create a new data base (.dbf), index (.dbx) or description (.dbh) file
EXPLANATION:
A database definition (.dbd) file must already exist.
The default directory must be a ZDBASE: directory.
CALLING SEQUENCE:
dbcreate, name,[ newindex, newdb, maxitems] [,/EXTERNAL, MAXENTRY=]
INPUTS:
name- name of the data base (with no qualifier), scalar string.
The description will be read from the file "NAME".dbd
OPTIONAL INPUTS:
newindex - if non-zero then a new index file is created,
otherwise it is assumed that changes do not affect the
index file. (default=0)
newdb - if non-zero then a new data base file (.dbf) will
be created. Otherwise changes are assumed not to affect
the file's present format.
maxitems - maximum number of items in data base.
If not supplied then the number of items is
limited to 200.
OUTPUTS:
NONE.
OPTIONAL INPUT KEYWORDS:
external - If set, then the database is written with an external data
representation. This allows the database files to be used on
any computer platform, e.g. through NFS mounts, but some
overhead is added to reading the files. The default is to
write the data in the native format of the computer being used.
This keyword is only paid attention to if NEWDB or NEWINDEX
are nonzero. Otherwise, the database is opened to find
out if it uses external representation or not.
Extreme caution should be used if this keyword is used with
only NEWINDEX set to a nonzero value. This mode is allowed so
that databases written on machines which already use the
external data representation format, e.g. Sun workstations, to
be marked external so that other machines can read them.
MAXENTRY - positive integer giving the maximum number of entries in the
database (needed to adjust the size of the index file). This
keyword can be used to supercede the #maxentries line in the
.dbd file (the larger of the two numbers will be used).
PROCEDURE CALLS:
GETTOK(), FIND_WITH_DEF(), HOST_TO_IEEE, ZPARCHECK
CALLED BY:
FLUSH_CATALOG, PRG_DETAIL, PRG_PLAN
RESTRICTIONS:
If newdb=0 is not specified, the changes to the .dbd file can
not alter the length of the records in the data base file.
and may not alter positions of current fields in the file.
permissible changes are:
1) utilization of spares to create a item or field
2) change in field name(s)
3) respecification of index items
4) changes in default print formats
5) change in data base title
6) changes in pointer specification to other data
data bases
!priv must be 2 or greater to execute this routine.
CALLS: ***
FIND_WITH_DEF [1], FIND_WITH_DEF [2], FIND_WITH_DEF [3], GETTOK [1], GETTOK [2]
GETTOK [3], GETTOK [4], HOST_TO_IEEE [1], HOST_TO_IEEE [2], HOST_TO_IEEE [3]
HOST_TO_IEEE [4], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
SIDE EFFECTS:
data base description file ZDBASE:name.dbh is created
and optionally ZDBASE:name.dbf (data file) and
ZDBASE.dbx (index file) if it is a new data base.
REVISION HISTORY:
D. Lindler, GSFC/HRS, October 1987
Modified: Version 1, William Thompson, GSFC, 29 March 1994
Version 2, William Thompson, GSFC/CDS (ARC), 28 May 1994
Added EXTERNAL keyword.
Version 4, William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
8/14/95 JKF/ACC - allow EXTERNAL data for newindex OR newdb modes.
Make sure all databases closed before starting W. Landsman June 1997
Added new unsigned and 64 bit integer datatypes W. Landsman July 2001
Make sure to use lowercase filenames on Unix W. Landsman May 2006
Added MAXENTRY keyword W. Landsman July 2006
Assume since V5.5, remove obsolete keywords to OPEN W. Landsman Sep2006
[Previous]
[Next]
NAME:
DBCREATE
PURPOSE:
Create a new data base (.dbf), index (.dbx) or description (.dbh) file
EXPLANATION:
A database definition (.dbd) file must already exist.
The default directory must be a ZDBASE: directory.
CALLING SEQUENCE:
dbcreate, name,[ newindex, newdb, maxitems] [,/EXTERNAL, MAXENTRY=]
INPUTS:
name- name of the data base (with no qualifier), scalar string.
The description will be read from the file "NAME".dbd
OPTIONAL INPUTS:
newindex - if non-zero then a new index file is created,
otherwise it is assumed that changes do not affect the
index file. (default=0)
newdb - if non-zero then a new data base file (.dbf) will
be created. Otherwise changes are assumed not to affect
the file's present format.
maxitems - maximum number of items in data base.
If not supplied then the number of items is
limited to 200.
OUTPUTS:
NONE.
OPTIONAL INPUT KEYWORDS:
external - If set, then the database is written with an external data
representation. This allows the database files to be used on
any computer platform, e.g. through NFS mounts, but some
overhead is added to reading the files. The default is to
write the data in the native format of the computer being used.
This keyword is only paid attention to if NEWDB or NEWINDEX
are nonzero. Otherwise, the database is opened to find
out if it uses external representation or not.
Extreme caution should be used if this keyword is used with
only NEWINDEX set to a nonzero value. This mode is allowed so
that databases written on machines which already use the
external data representation format, e.g. Sun workstations, to
be marked external so that other machines can read them.
MAXENTRY - positive integer giving the maximum number of entries in the
database (needed to adjust the size of the index file). This
keyword can be used to supercede the #maxentries line in the
.dbd file (the larger of the two numbers will be used).
PROCEDURE CALLS:
GETTOK(), FIND_WITH_DEF(), HOST_TO_IEEE, ZPARCHECK
CALLED BY:
FLUSH_CATALOG, PRG_DETAIL, PRG_PLAN
RESTRICTIONS:
If newdb=0 is not specified, the changes to the .dbd file can
not alter the length of the records in the data base file.
and may not alter positions of current fields in the file.
permissible changes are:
1) utilization of spares to create a item or field
2) change in field name(s)
3) respecification of index items
4) changes in default print formats
5) change in data base title
6) changes in pointer specification to other data
data bases
!priv must be 2 or greater to execute this routine.
CALLS: ***
FIND_WITH_DEF [1], FIND_WITH_DEF [2], FIND_WITH_DEF [3], GETTOK [1], GETTOK [2]
GETTOK [3], GETTOK [4], HOST_TO_IEEE [1], HOST_TO_IEEE [2], HOST_TO_IEEE [3]
HOST_TO_IEEE [4], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
SIDE EFFECTS:
data base description file ZDBASE:name.dbh is created
and optionally ZDBASE:name.dbf (data file) and
ZDBASE.dbx (index file) if it is a new data base.
REVISION HISTORY:
D. Lindler, GSFC/HRS, October 1987
Modified: Version 1, William Thompson, GSFC, 29 March 1994
Version 2, William Thompson, GSFC/CDS (ARC), 28 May 1994
Added EXTERNAL keyword.
Version 4, William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
8/14/95 JKF/ACC - allow EXTERNAL data for newindex OR newdb modes.
Make sure all databases closed before starting W. Landsman June 1997
Added new unsigned and 64 bit integer datatypes W. Landsman July 2001
Make sure to use lowercase filenames on Unix W. Landsman May 2006
Added MAXENTRY keyword W. Landsman July 2006
Assume since V5.5, remove obsolete keywords to OPEN W. Landsman Sep2006
[Previous]
[Next]
NAME:
DBDELETE
PURPOSE:
Deletes specified entries from data base
CALLING SEQUENCE:
DBDELETE, list, [ name, /DEBUG ]
INPUTS:
list - list of entries to be deleted, scalar or vector
name - optional name of data base, scalar string. If not specified
then the data base file must be previously opened for update
by DBOPEN.
OPERATIONAL NOTES:
!PRIV must be at least 3 to execute.
CALLED BY:
ADD_DATAWIN, ADD_EXPER, ADD_F_STUDY, ADD_LINELIST, ADD_V_STUDY, CLR_INST_DLYD
CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE, CLR_TEL_SUBMODE
FLUSH_CATALOG, MOD_CAMPAIGN, PRG_ALT, PRG_ANOMALY, PRG_DETAIL, PRG_FLAG, PRG_PLAN
PRG_SOHO_DET, PURGE_CDHSSTATE
SIDE EFFECTS:
The data base file (ZDBASE:name.dbf) is modified by removing the
specified entries and reordering the remaining entry numbers
accordingly (ie. if you delete entry 100, it will be replaced
by entry 101 and the database will contain 1 less entry.
EXAMPLE:
Delete entries in a database STARS where RA=DEC = 0.0
IDL> !PRIV= 3 ;Set privileges
IDL> dbopen,'STARS',1 ;Open for update
IDL> list = dbfind('ra=0.0,dec=0.0') ;Obtain LIST vector
IDL> dbdelete, list ;Delete specified entries from db
NOTES:
The procedure is rather slow because the entire database is re-
created with the specified entries deleted.
CALLS: ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBPUT [1], DBPUT [2], DBPUT [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
OPTIONAL KEYWORD INPUT:
DEBUG - if this keyword is set and non-zero, then additional
diagnostics will be printed as each entry is deleted.
COMMON BLOCKS:
DBCOM
PROCEDURE CALLS:
DBINDEX, DB_INFO(), DBOPEN, DBPUT, ZPARCHECK
HISTORY
Version 2 D. Lindler July, 1989
Updated documentation W. Landsman December 1992
William Thompson, GSFC, 28 February 1995
Fixed bug when external representation used.
Fixed for case where second parameter supplied W. Landsman April 1996
Use keyword DEBUG rather than !DEBUG W. Landsman May 1997
Don't call DBINDEX if no indexed items W. Landsman May 2006
Use TRUNCATE_LUN if V5.6 or later W. Landsman Sep 2006
[Previous]
[Next]
NAME:
DBDELETE
PURPOSE:
Deletes specified entries from data base
CALLING SEQUENCE:
DBDELETE, list, [ name, /DEBUG ]
INPUTS:
list - list of entries to be deleted, scalar or vector
name - optional name of data base, scalar string. If not specified
then the data base file must be previously opened for update
by DBOPEN.
OPERATIONAL NOTES:
!PRIV must be at least 3 to execute.
CALLED BY:
ADD_DATAWIN, ADD_EXPER, ADD_F_STUDY, ADD_LINELIST, ADD_V_STUDY, CLR_INST_DLYD
CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE, CLR_TEL_SUBMODE
FLUSH_CATALOG, MOD_CAMPAIGN, PRG_ALT, PRG_ANOMALY, PRG_DETAIL, PRG_FLAG, PRG_PLAN
PRG_SOHO_DET, PURGE_CDHSSTATE
SIDE EFFECTS:
The data base file (ZDBASE:name.dbf) is modified by removing the
specified entries and reordering the remaining entry numbers
accordingly (ie. if you delete entry 100, it will be replaced
by entry 101 and the database will contain 1 less entry.
EXAMPLE:
Delete entries in a database STARS where RA=DEC = 0.0
IDL> !PRIV= 3 ;Set privileges
IDL> dbopen,'STARS',1 ;Open for update
IDL> list = dbfind('ra=0.0,dec=0.0') ;Obtain LIST vector
IDL> dbdelete, list ;Delete specified entries from db
NOTES:
The procedure is rather slow because the entire database is re-
created with the specified entries deleted.
CALLS: ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBPUT [1], DBPUT [2], DBPUT [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
OPTIONAL KEYWORD INPUT:
DEBUG - if this keyword is set and non-zero, then additional
diagnostics will be printed as each entry is deleted.
COMMON BLOCKS:
DBCOM
PROCEDURE CALLS:
DBINDEX, DB_INFO(), DBOPEN, DBPUT, ZPARCHECK
HISTORY
Version 2 D. Lindler July, 1989
Updated documentation W. Landsman December 1992
William Thompson, GSFC, 28 February 1995
Fixed bug when external representation used.
Fixed for case where second parameter supplied W. Landsman April 1996
Use keyword DEBUG rather than !DEBUG W. Landsman May 1997
Don't call DBINDEX if no indexed items W. Landsman May 2006
Use TRUNCATE_LUN if V5.6 or later W. Landsman Sep 2006
[Previous]
[Next]
NAME:
DBEDIT
PURPOSE:
Interactively edit specified fields in an IDL database.
EXPLANATION:
The value of each field is displayed, and the user has the option
of changing or keeping the value. Widgets will be used if they
are available.
CALLING SEQUENCE:
dbedit, list, [ items ]
INPUTS:
list - scalar or vector of database entry numbers. Set list = 0 to
interactively add a new entry to a database. Set list = -1 to edit
all entries.
OPTIONAL INPUTS:
items - list of items to be edited. If omitted, all fields can be
edited.
KEYWORDS:
BYTENUM = If set, treat byte variables as numbers instead of
characters.
CALLS: ***
ACKNOW_EVENT, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBRD [1], DBRD [2], DBRD [3], DBWRT [1], DBWRT [2]
DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], WIDEDIT, WIDGETEDIT_EVENT
XMANAGER, ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
COMMON BLOCKS:
DB_COM -- contains information about the opened database.
DBW_C -- contains information intrinsic to this program.
SIDE EFFECTS:
Will update the database files.
RESTRICTIIONS:
Database must be opened for update prior to running
this program. User must be running DBEDIT from an
account that has write privileges to the databases.
If one is editing an indexed item, then after all edits are complete,
DBINDEX will be called to reindex the entire item. This may
be time consuming.
Cannot be used to edit items with multiple values
EXAMPLE:
Suppose one had new parallaxes for all stars fainter than 5th magnitude
in the Yale Bright Star Catalog and wanted to update the PRLAX and
PRLAX_CODE fields with these new numbers
IDL> !priv=2
IDL> dbopen, 'yale_bs', 1 ;Open catalog for update
IDL> list = dbfind( 'v>5') ;Find fainter than 5th magnitude
IDL> dbedit, list, 'prlax, prlax_code' ;Manual entry of new values
PROCEDURE:
(1) Use the cursor and point to the value you want to edit.
(2) Type the new field value over the old field value.
(3) When you are done changing all of the field values for each entry
save the entry to the databases by pressing 'SAVE ENTRY TO DATABASES'.
Here all of the values will be checked to see if they are the correct
data type. If a field value is not of the correct data type, it will
not be saved.
Use the buttons "PREV ENTRY" and "NEXT ENTRY" to move between entry
numbers. You must save each entry before going on to another entry in
order for your changes to be saved.
Pressing "RESET THIS ENTRY" will remove any unsaved changes to the
current entry.
REVISION HISTORY:
Adapted from Landsman's DBEDIT
added widgets, Melissa Marsh, HSTX, August 1993
do not need to press return after entering each entry,
fixed layout problem on SUN,
Melissa Marsh, HSTX, January 1994
Only updates the fields which are changed. Joel Offenberg, HSTX, Mar 94
Corrected test for changed fields Wayne Landsman HSTX, Mar 94
Removed a couple of redundant statements W. Landsman HSTX Jan 96
Converted to IDL V5.0 W. Landsman September 1997
Replace DATAYPE() with size(/TNAME) W. Landsman November 2001
Work for entry numbers > 32767 W. Landsman December 2001
Added /BYTENUM William Thompson 13-Mar-2006
Use DIALOG_MESSAGE for error messages W. Landsman April 2006
Assume since V5.5, remove VMS support W. Landsman Sep 2006
[Previous]
[Next]
NAME:
DBEDIT
PURPOSE:
Interactively edit specified fields in an IDL database.
EXPLANATION:
The value of each field is displayed, and the user has the option
of changing or keeping the value. Widgets will be used if they
are available.
CALLING SEQUENCE:
dbedit, list, [ items ]
INPUTS:
list - scalar or vector of database entry numbers. Set list = 0 to
interactively add a new entry to a database. Set list = -1 to edit
all entries.
OPTIONAL INPUTS:
items - list of items to be edited. If omitted, all fields can be
edited.
KEYWORDS:
BYTENUM = If set, treat byte variables as numbers instead of
characters.
CALLS: ***
ACKNOW_EVENT, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBRD [1], DBRD [2], DBRD [3], DBWRT [1], DBWRT [2]
DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], WIDEDIT, WIDGETEDIT_EVENT
XMANAGER, ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
COMMON BLOCKS:
DB_COM -- contains information about the opened database.
DBW_C -- contains information intrinsic to this program.
SIDE EFFECTS:
Will update the database files.
RESTRICTIIONS:
Database must be opened for update prior to running
this program. User must be running DBEDIT from an
account that has write privileges to the databases.
If one is editing an indexed item, then after all edits are complete,
DBINDEX will be called to reindex the entire item. This may
be time consuming.
Cannot be used to edit items with multiple values
EXAMPLE:
Suppose one had new parallaxes for all stars fainter than 5th magnitude
in the Yale Bright Star Catalog and wanted to update the PRLAX and
PRLAX_CODE fields with these new numbers
IDL> !priv=2
IDL> dbopen, 'yale_bs', 1 ;Open catalog for update
IDL> list = dbfind( 'v>5') ;Find fainter than 5th magnitude
IDL> dbedit, list, 'prlax, prlax_code' ;Manual entry of new values
PROCEDURE:
(1) Use the cursor and point to the value you want to edit.
(2) Type the new field value over the old field value.
(3) When you are done changing all of the field values for each entry
save the entry to the databases by pressing 'SAVE ENTRY TO DATABASES'.
Here all of the values will be checked to see if they are the correct
data type. If a field value is not of the correct data type, it will
not be saved.
Use the buttons "PREV ENTRY" and "NEXT ENTRY" to move between entry
numbers. You must save each entry before going on to another entry in
order for your changes to be saved.
Pressing "RESET THIS ENTRY" will remove any unsaved changes to the
current entry.
REVISION HISTORY:
Adapted from Landsman's DBEDIT
added widgets, Melissa Marsh, HSTX, August 1993
do not need to press return after entering each entry,
fixed layout problem on SUN,
Melissa Marsh, HSTX, January 1994
Only updates the fields which are changed. Joel Offenberg, HSTX, Mar 94
Corrected test for changed fields Wayne Landsman HSTX, Mar 94
Removed a couple of redundant statements W. Landsman HSTX Jan 96
Converted to IDL V5.0 W. Landsman September 1997
Replace DATAYPE() with size(/TNAME) W. Landsman November 2001
Work for entry numbers > 32767 W. Landsman December 2001
Added /BYTENUM William Thompson 13-Mar-2006
Use DIALOG_MESSAGE for error messages W. Landsman April 2006
Assume since V5.5, remove VMS support W. Landsman Sep 2006
[Previous]
[Next]
NAME:
DBEDIT_BASIC
PURPOSE:
Subroutine of DBEDIT_BASIC to edit a database on a dumb terminal.
EXPLANATION:
Interactively edit specified fields in a database. The
value of each field is displayed, and the user has the option
of changing or keeping the value.
CALLING SEQUENCE:
dbedit_basic, list, [ items ]
INPUTS:
list - scalar or vector of database entry numbers. Set LIST=0
to interactively add a new entry to a database.
OPTIONAL INPUTS
items - list of items to be edited. If not supplied, then the
value of every field will be displayed.
NOTES:
(1) Database must be opened for update (dbopen,<dbname>,1) before
calling DBEDIT_BASIC. User must have write privileges on the database
files.
(2) User gets a second chance to look at edited values, before
they are actually written to the database
PROMPTS:
The item values for each entry to be edited are first displayed
User is the asked "EDIT VALUES IN THIS ENTRY (Y(es), N(o), or Q(uit))?
If user answers 'Y' or hits RETURN, then each item is displayed
with its current value, which the user can update. If user answered
'N' then DBEDIT_BASIC skips to the next entry. If user answers 'Q'
then DBEDIT will exit, saving all previous changes.
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBPRINT [1], DBPRINT [2], DBPRINT [3], DBRD [1]
DBRD [2], DBRD [3], DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2]
DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
DBEDIT [1], DBEDIT [2], DBEDIT [3]
EXAMPLE:
Suppose V magnitudes (V_MAG) in a database STARS with unknown values
were assigned a value of 99.9. Once the true values become known, the
database can be edited
IDL> !PRIV=2 & dbopen,'STARS',1 ;Open database for update
IDL> list = dbfind('V_MAG=99.9') ;Get list of bad V_MAG values
IDL> dbedit,list,'V_MAG' ;Interactively insert good V_MAG values
REVISION HISTORY:
Written W. Landsman STX April, 1989
Rename DBEDIT_BASIC from DBEDIT July, 1993
Converted to IDL V5.0 W. Landsman September 1997
Change DATATYPE() to size(/TNAME) W. Landsman November 2001
[Previous]
[Next]
NAME:
DBEDIT_BASIC
PURPOSE:
Subroutine of DBEDIT_BASIC to edit a database on a dumb terminal.
EXPLANATION:
Interactively edit specified fields in a database. The
value of each field is displayed, and the user has the option
of changing or keeping the value.
CALLING SEQUENCE:
dbedit_basic, list, [ items ]
INPUTS:
list - scalar or vector of database entry numbers. Set LIST=0
to interactively add a new entry to a database.
OPTIONAL INPUTS
items - list of items to be edited. If not supplied, then the
value of every field will be displayed.
NOTES:
(1) Database must be opened for update (dbopen,<dbname>,1) before
calling DBEDIT_BASIC. User must have write privileges on the database
files.
(2) User gets a second chance to look at edited values, before
they are actually written to the database
PROMPTS:
The item values for each entry to be edited are first displayed
User is the asked "EDIT VALUES IN THIS ENTRY (Y(es), N(o), or Q(uit))?
If user answers 'Y' or hits RETURN, then each item is displayed
with its current value, which the user can update. If user answered
'N' then DBEDIT_BASIC skips to the next entry. If user answers 'Q'
then DBEDIT will exit, saving all previous changes.
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DBPRINT [1], DBPRINT [2], DBPRINT [3], DBRD [1]
DBRD [2], DBRD [3], DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2]
DBXPUT [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
DBEDIT [1], DBEDIT [2], DBEDIT [3]
EXAMPLE:
Suppose V magnitudes (V_MAG) in a database STARS with unknown values
were assigned a value of 99.9. Once the true values become known, the
database can be edited
IDL> !PRIV=2 & dbopen,'STARS',1 ;Open database for update
IDL> list = dbfind('V_MAG=99.9') ;Get list of bad V_MAG values
IDL> dbedit,list,'V_MAG' ;Interactively insert good V_MAG values
REVISION HISTORY:
Written W. Landsman STX April, 1989
Rename DBEDIT_BASIC from DBEDIT July, 1993
Converted to IDL V5.0 W. Landsman September 1997
Change DATATYPE() to size(/TNAME) W. Landsman November 2001
[Previous]
[Next]
NAME:
DBEXT
PURPOSE:
Extract values of up to 12 items from an IDL database
EXPLANATION:
Procedure to extract values of up to 12 items from
data base file, and place into IDL variables
CALLING SEQUENCE:
dbext,list,items,v1,[v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12]
INPUTS:
list - list of entry numbers to be printed, vector or scalar
If list = -1, then all entries will be extracted.
list may be converted to a vector by DBEXT
items - standard item list specification. See DBPRINT for
the 6 different ways that items may be specified.
OUTPUTS:
v1...v12 - the vectors of values for up to 12 items.
CALLS: ***
DBEXT_DBF [1], DBEXT_DBF [2], DBEXT_DBF [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1], DB_ITEM_INFO [2]
DB_ITEM_INFO [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_DATAWIN, ADD_DETAIL, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_LINELIST, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RES_TYPE
ADD_T_STUDY, ADD_V_RASTER, ADD_V_STUDY, CHECK_INTEG, CHK_DATAWIN, CHK_F_RASTER
CHK_F_STUDY, CHK_LINELIST, CHK_V_RASTER, CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES
CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE, CLR_TEL_SUBMODE, CP_GET_HISTORY
CP_GET_MNEMONIC, DBCIRCLE [1], DBCIRCLE [2], DBFIND [1], DBFIND [2], DBFIND [3]
DBGET [1], DBGET [2], DBGET [3], DBMATCH [1], DBMATCH [2], DBMATCH [3], DBREPAIR
DBSORT [1], DBSORT [2], DBSORT [3], DBUPDATE [1], FIND_CDS_STUDIES, FIX_MAIN_TIMES
FIX_OBS_SEQ, FLUSH_CATALOG, GET_ALT, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN
GET_MIRSHIFT, GET_PLAN, GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET
GET_STUDY, GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT
LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OBJECT, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM
LIST_RAW, LIST_RES_TYPE, LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_EXPER
PRG_DETAIL, PRG_PLAN, PURGE_CDHSSTATE, SEARCH_HXRBS_DB, UPD_PLAN, UPD_SOHO_DET
WHAT_USES, eis_get_timeline_details [1], eis_get_timeline_details [2]
EXAMPLE:
Extract all RA and DEC values from the currently opened database, and
place into the IDL vectors, IDLRA and IDLDEC.
IDL> DBEXT,-1,'RA,DEC',idlra,idldec
HISTORY
version 2 D. Lindler NOV. 1987
check for INDEXED items W. Landsman Feb. 1989
Converted to IDL V5.0 W. Landsman September 1997
Avoid EXECUTE() call for V6.1 or later W. Landsman December 2006
[Previous]
[Next]
Project : SOHO - CDS
Name :
DBEXT
Purpose :
Extract values of up to 12 items from data base file.
Explanation :
Procedure to extract values of up to 12 items from
data base file, and place into IDL variables
Use :
dbext,list,items,v1,[v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_DATAWIN, ADD_DETAIL, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_LINELIST, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RES_TYPE
ADD_T_STUDY, ADD_V_RASTER, ADD_V_STUDY, CHECK_INTEG, CHK_DATAWIN, CHK_F_RASTER
CHK_F_STUDY, CHK_LINELIST, CHK_V_RASTER, CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES
CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE, CLR_TEL_SUBMODE, CP_GET_HISTORY
CP_GET_MNEMONIC, DBCIRCLE [1], DBCIRCLE [2], DBFIND [1], DBFIND [2], DBFIND [3]
DBGET [1], DBGET [2], DBGET [3], DBMATCH [1], DBMATCH [2], DBMATCH [3], DBREPAIR
DBSORT [1], DBSORT [2], DBSORT [3], DBUPDATE [1], FIND_CDS_STUDIES, FIX_MAIN_TIMES
FIX_OBS_SEQ, FLUSH_CATALOG, GET_ALT, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN
GET_MIRSHIFT, GET_PLAN, GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET
GET_STUDY, GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT
LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OBJECT, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM
LIST_RAW, LIST_RES_TYPE, LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_EXPER
PRG_DETAIL, PRG_PLAN, PURGE_CDHSSTATE, SEARCH_HXRBS_DB, UPD_PLAN, UPD_SOHO_DET
WHAT_USES, eis_get_timeline_details [1], eis_get_timeline_details [2]
EXAMPLE: Extract all RA and DEC values from the currently opened
database, and place into the IDL vectors, IDLRA and IDLDEC.
IDL> DBEXT,-1,'RA,DEC',idlra,idldec
Inputs :
list - list of entry numbers to be printed, vector or scalar
If list = -1, then all entries will be extracted.
list may be converted to a vector by DBEXT
items - standard item list specification. See DBPRINT for
the 6 different ways that items may be specified.
Opt. Inputs : None.
Outputs :
v1...v12 - the vectors of values for up to 12 items.
Opt. Outputs: None.
Keywords : None.
Calls : ***
DBEXT_DBF [1], DBEXT_DBF [2], DBEXT_DBF [3], DBFIX, DBINDEX [1], DBINDEX [2]
DBINDEX [3], DBRD [1], DBRD [2], DBRD [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3]
DBUPDATE [4], DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], DPRINT, IS_IEEE_BIG [1]
IS_IEEE_BIG [2], TRIM, ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
Common : None.
Restrictions: None.
Side effects: None.
Category : Utilities, Database
Prev. Hist. :
version 2 D. Lindler NOV. 1987
check for INDEXED items W. Landsman Feb. 1989
Written : D. Lindler, GSFC/HRS, November 1987
Modified : Version 1, William Thompson, GSFC, 29 March 1994
Incorporated into CDS library
Version : Version 1, 29 March 1994
Version 2, 17 Oct 2001 - added check for duplicate entries
[Previous]
[Next]
NAME:
DBEXT
PURPOSE:
Extract values of up to 12 items from an IDL database
EXPLANATION:
Procedure to extract values of up to 12 items from
data base file, and place into IDL variables
CALLING SEQUENCE:
dbext,list,items,v1,[v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12]
INPUTS:
list - list of entry numbers to be printed, vector or scalar
If list = -1, then all entries will be extracted.
list may be converted to a vector by DBEXT
items - standard item list specification. See DBPRINT for
the 6 different ways that items may be specified.
OUTPUTS:
v1...v12 - the vectors of values for up to 12 items.
CALLS: ***
DBEXT_DBF [1], DBEXT_DBF [2], DBEXT_DBF [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1], DB_ITEM_INFO [2]
DB_ITEM_INFO [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_DATAWIN, ADD_DETAIL, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_LINELIST, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RES_TYPE
ADD_T_STUDY, ADD_V_RASTER, ADD_V_STUDY, CHECK_INTEG, CHK_DATAWIN, CHK_F_RASTER
CHK_F_STUDY, CHK_LINELIST, CHK_V_RASTER, CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES
CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE, CLR_TEL_SUBMODE, CP_GET_HISTORY
CP_GET_MNEMONIC, DBCIRCLE [1], DBCIRCLE [2], DBFIND [1], DBFIND [2], DBFIND [3]
DBGET [1], DBGET [2], DBGET [3], DBMATCH [1], DBMATCH [2], DBMATCH [3], DBREPAIR
DBSORT [1], DBSORT [2], DBSORT [3], DBUPDATE [1], FIND_CDS_STUDIES, FIX_MAIN_TIMES
FIX_OBS_SEQ, FLUSH_CATALOG, GET_ALT, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN
GET_MIRSHIFT, GET_PLAN, GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET
GET_STUDY, GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT
LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OBJECT, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM
LIST_RAW, LIST_RES_TYPE, LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_EXPER
PRG_DETAIL, PRG_PLAN, PURGE_CDHSSTATE, SEARCH_HXRBS_DB, UPD_PLAN, UPD_SOHO_DET
WHAT_USES, eis_get_timeline_details [1], eis_get_timeline_details [2]
EXAMPLE:
Extract all RA and DEC values from the currently opened database, and
place into the IDL vectors, IDLRA and IDLDEC.
IDL> DBEXT,-1,'RA,DEC',idlra,idldec
HISTORY
version 2 D. Lindler NOV. 1987
check for INDEXED items W. Landsman Feb. 1989
Converted to IDL V5.0 W. Landsman September 1997
Avoid EXECUTE() call for V6.1 or later W. Landsman December 2006
[Previous]
[Next]
NAME:
DBEXT_DBF
PURPOSE:
Subroutine of DBEXT to extract values of up to 18 items from a database
EXPLANATION:
This is a subroutine of DBEXT, which is the routine a user should
normally use.
CALLING SEQUENCE:
dbext_dbf,list,dbno,sbyte,nbytes,idltype,nval,v1,[ v2,v3,v4,v5,v6,v7,
v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18 ITEM_DBNO = ]
INPUTS:
list - list of entry numbers to extract desired items. It is the
entry numbers in the primary data base unless dbno is greater
than or equal to -1. In that case it is the entry number in
the specified data base.
dbno - number of the opened db file
if set to -1 then all data bases are included
sbyte - starting byte in the entry. If single data base then it must
be the starting byte for that data base only and not the
concatenation of db records
nbytes - number of bytes in the entry
idltype - idl data type of each item to be extracted
nval - number of values per entry of each item to be extracted
OUTPUTS:
v1...v18 - the vectors of values for up to 18 items
OPTIONAL INPUT KEYWORD:
item_dbno - A vector of the individual database numbers for each item.
Simplifies the code for linked databases
PROCEDURE CALLS:
DB_INFO(), DB_ITEM_INFO(), DBRD, DBXVAL(), IS_IEEE_BIG(), IEEE_TO_HOST
HISTORY
version 1 D. Lindler Nov. 1987
Extract multiple valued entries W. Landsman May 1989
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
Work with multiple element string items W. Landsman August 1995
Increase speed for external databases on IEEE machines WBL August 1996
IEEE conversion implemented on blocks of entries using BIG
Added keyword ITEM_DBNO R. Schwartz, GSFC/SDAC, August 1996
Return a vector even if only 1 value W. Thompson October 1996
Change variable name of BYTESWAP to BSWAP W. Thompson Mar 1997
Use /OVERWRITE with reform W. Landsman May 1997
Converted to IDL V5.0 W. Landsman September 1997
Increase maximum number of items to 18 W. Landsman November 1999
2 May 2003, W. Thompson, Use DBXVAL with BSWAP instead of IEEE_TO_HOST.
Avoid EXECUTE() for V6.1 or later W. Landsman Jan 2007
CALLS:
CALLED BY
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBUPDATE [1]
[Previous]
[Next]
NAME:
DBEXT_DBF
PURPOSE:
Subroutine of DBEXT to extract values of up to 18 items from a database
EXPLANATION:
This is a subroutine of DBEXT, which is the routine a user should
normally use.
CALLING SEQUENCE:
dbext_dbf,list,dbno,sbyte,nbytes,idltype,nval,v1,[ v2,v3,v4,v5,v6,v7,
v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18 ITEM_DBNO = ]
INPUTS:
list - list of entry numbers to extract desired items. It is the
entry numbers in the primary data base unless dbno is greater
than or equal to -1. In that case it is the entry number in
the specified data base.
dbno - number of the opened db file
if set to -1 then all data bases are included
sbyte - starting byte in the entry. If single data base then it must
be the starting byte for that data base only and not the
concatenation of db records
nbytes - number of bytes in the entry
idltype - idl data type of each item to be extracted
nval - number of values per entry of each item to be extracted
OUTPUTS:
v1...v18 - the vectors of values for up to 18 items
OPTIONAL INPUT KEYWORD:
item_dbno - A vector of the individual database numbers for each item.
Simplifies the code for linked databases
PROCEDURE CALLS:
DB_INFO(), DB_ITEM_INFO(), DBRD, DBXVAL(), IS_IEEE_BIG(), IEEE_TO_HOST
HISTORY
version 1 D. Lindler Nov. 1987
Extract multiple valued entries W. Landsman May 1989
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
Work with multiple element string items W. Landsman August 1995
Increase speed for external databases on IEEE machines WBL August 1996
IEEE conversion implemented on blocks of entries using BIG
Added keyword ITEM_DBNO R. Schwartz, GSFC/SDAC, August 1996
Return a vector even if only 1 value W. Thompson October 1996
Change variable name of BYTESWAP to BSWAP W. Thompson Mar 1997
Use /OVERWRITE with reform W. Landsman May 1997
Converted to IDL V5.0 W. Landsman September 1997
Increase maximum number of items to 18 W. Landsman November 1999
2 May 2003, W. Thompson, Use DBXVAL with BSWAP instead of IEEE_TO_HOST.
Avoid EXECUTE() for V6.1 or later W. Landsman Jan 2007
CALLS:
CALLED BY
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBINDEX [1], DBINDEX [2], DBINDEX [3]
DBUPDATE [1]
[Previous]
[Next]
NAME:
DBEXT_IND
PURPOSE:
routine to read a indexed item values from index file
CALLING SEQUENCE:
dbext_ind,list,item,dbno,values
INPUTS:
list - list of entry numbers to extract values for
(if it is a scalar, values for all entries are extracted)
item - item to extract
dbno - number of the opened data base
OUTPUT:
values - vector of values returned as function value
CALLS: ***
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], IEEE_TO_HOST [1]
IEEE_TO_HOST [2], IEEE_TO_HOST [3], IEEE_TO_HOST [4]
CALLED BY:
DBFIND [1], DBFIND [2], DBFIND [3]
HISTORY:
version 1 D. Lindler Feb 88
Faster processing of string values W. Landsman April, 1992
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
Converted to IDL V5.0 W. Landsman September 1997
Allow multiple valued (nonstring) index items W. Landsman November 2000
Use 64bit integer index for large databases W. Landsman February 2001
Fix sublisting of multiple valued index items W. Landsamn March 2001
[Previous]
[Next]
NAME:
DBEXT_IND
PURPOSE:
routine to read a indexed item values from index file
CALLING SEQUENCE:
dbext_ind,list,item,dbno,values
INPUTS:
list - list of entry numbers to extract values for
(if it is a scalar, values for all entries are extracted)
item - item to extract
dbno - number of the opened data base
OUTPUT:
values - vector of values returned as function value
CALLS: ***
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], IEEE_TO_HOST [1]
IEEE_TO_HOST [2], IEEE_TO_HOST [3], IEEE_TO_HOST [4]
CALLED BY:
DBFIND [1], DBFIND [2], DBFIND [3]
HISTORY:
version 1 D. Lindler Feb 88
Faster processing of string values W. Landsman April, 1992
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
Converted to IDL V5.0 W. Landsman September 1997
Allow multiple valued (nonstring) index items W. Landsman November 2000
Use 64bit integer index for large databases W. Landsman February 2001
Fix sublisting of multiple valued index items W. Landsamn March 2001
[Previous]
[Next]
NAME:
DBFIND()
PURPOSE:
Search data base for entries with specified characteristics
EXPLANATION:
Function to search data base for entries with specified
search characteristics.
CALLING SEQUENCE:
result = dbfind(spar,[ listin, /SILENT, /FULLSTRING, ERRMSG=, Count = ])
INPUTS:
spar - search_parameters (string)...each search parameter
is of the form:
option 1) min_val < item_name < max_val
option 2) item_name = value
option 3) item_name = [value_1, value_10]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_DATAWIN, ADD_DETAIL, ADD_EXPER, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_LINELIST, ADD_PLAN, ADD_T_STUDY, ADD_V_RASTER, ADD_V_STUDY
CHECK_INTEG, CHK_DATAWIN, CHK_F_RASTER, CHK_F_STUDY, CHK_LINELIST, CHK_T_STUDY
CHK_V_RASTER, CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE
CLR_TEL_MODE, CLR_TEL_SUBMODE, CP_GET_HISTORY, CP_GET_MNEMONIC, DBCIRCLE [1]
DBCIRCLE [2], DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN, DEL_SOHO_DET
FIND_CDS_STUDIES, GET_ALT, GET_ANOMALY, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_LINELIST, GET_MAIN, GET_MIRSHIFT, GET_PLAN
GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET, GET_STUDY, GET_TILTCAL
GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT, LIST_ANOMALY
LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_RAW, LIST_SOHO_DET
LIST_V_RASTER, LIST_V_STUDY, MOD_CAMPAIGN, MOD_DETAIL, MOD_EXPER, MOD_GSET
MOD_LINELIST, MOD_MAIN, MOD_V_RASTER, MOD_V_STUDY, PRG_ALT, PRG_ANOMALY, PRG_DETAIL
PRG_FLAG, PRG_PLAN, PRG_SOHO_DET, REG_CDROM, SEARCH_HXRBS_DB, SET_KAP_VERS
TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET, WHAT_USES, db_save_study_entry_update [1]
db_save_study_entry_update [2], eis_get_engineering_state_list [1]
eis_get_engineering_state_list [2], eis_get_science_entry [1]
eis_get_science_entry [2], eis_get_science_raster_entry [1]
eis_get_science_raster_entry [2], eis_get_study_raster_entry [1]
eis_get_study_raster_entry [2], eis_get_timeline_entries [1]
eis_get_timeline_entries [2], eis_linelist_gui [1], eis_linelist_gui [2]
eis_raster_gui [1], eis_raster_gui [2], eis_study_gui [1], eis_study_gui [2]
eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
Note: option 3 is also the slowest.
option 4) item_name > value
option 5) item_name < value
option 6) item_name = value(tolerance) ;eg. temp=25.0(5.2)
option 7) item_name ;must be non-zero
Multiple search parameters are separated by a comma.
eg. 'cam_no=2,14<ra<20'
Note: < is interpreted as less than or equal.
> is interpreted as greater than or equal.
RA and DEC keyfields are stored as floating point numbers
in the data base may be entered as HH:MM:SEC and
DEG:MIN:SEC. Where:
HH:MM:SEC equals HH + MM/60.0 + SEC/3600.
DEG:MIN:SEC equals DEG + MIN/60.0 + SEC/3600.
For example:
40:34:10.5 < dec < 43:25:19 , 8:22:1.0 < ra < 8:23:23.0
Specially encoded date/time in the data base may
be entered by CCYY/DAY:hr:min:sec which is
interpreted as
CCYY*1000+DAY+hr/24.0+min/24.0/60.+sec/24.0/3600.
If a two digit year is supplied and YY GE 40 then it is
understood to refer to year 1900 +YY; if YY LT 40 then it is
understood to refer to year 2000 +YY
For example
1985/201:10:35:30<date_time<1985/302:10:33:33.4
would specify all entries between:
year 1985 day 201 at 10:35:30 to
day 302 at 10:33:33.4
The date/time may also be encoded as:
DD-MMM-YEAR HH::MM:SS.SS
eg. 12-JUL-86 10:23:33.45
(this is the format of system variable !stime)
Multiple search parameters may be stored in a string
array (one parameter per array element) instead of
concatenating them with commas in a single string.
Example:
input_array = strarr(2)
input_array[0] = '14<ra<16' ; 14-16 hrs of ra.
input_array[1] = '8<dec<20' ; + 8-20 deg. decl.
OPTIONAL INPUT:
listin - gives list of entries to be searched. If not supplied or
set to -1 then all entries are searched.
OUTPUT:
List of ENTRY numbers satisfying search characteristics
is returned as the function value.
OPTIONAL INPUT KEYWORDS:
/SILENT - If the keyword SILENT is set and non-zero, then DBFIND
will not print the number of entries found.
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
ERRMSG = If defined and passed, then any error messages will
be returned to the user in this parameter rather
than depending on the MESSAGE routine in IDL. If no
errors are encountered, then a null string is
returned. In order to use this feature, ERRMSG must
be defined first, e.g.
ERRMSG = ''
DB_ITEM, ERRMSG=ERRMSG, ...
IF ERRMSG NE '' THEN ...;
OPTIONAL OUTPUT KEYWORD:
COUNT - Integer scalar giving the number of valid matches
PROCEDURE CALLS:
DB_INFO, DB_ITEM, DB_ITEM_INFO, DBEXT, DBEXT_IND, DBFIND_ENTRY,
DBFIND_SORT, DBFPARSE, DBRD, DBSEARCH, ZPARCHECK,IS_IEEE_BIG
RESTRICTIONS:
The data base must be previously opened with DBOPEN.
CALLS: ***
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_IND [1], DBEXT_IND [2]
DBEXT_IND [3], DBFIND_ENTRY [1], DBFIND_ENTRY [2], DBFIND_ENTRY [3]
DBFIND_SORT [1], DBFIND_SORT [2], DBFIND_SORT [3], DBFPARSE [1], DBFPARSE [2]
DBFPARSE [3], DBRD [1], DBRD [2], DBRD [3], DBSEARCH [1], DBSEARCH [2], DBSEARCH [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], ZPARCHECK [1]
ZPARCHECK [2], ZPARCHECK [3]
SIDE EFFECTS:
The obsolete system variable !ERR is set to number of entries found
REVISION HISTORY:
Written : D. Lindler, GSFC/HRS, November 1987
Version 2, Wayne Landsman, GSFC/UIT (STX), 1 April 1994
Added FULLSTRING keyword.
Version 3, William Thompson, GSFC, 1 April 1994
Added check for empty database
Version 4, William Thompson, GSFC, 5 April 1994
Changed so that !ERR is zero when database is empty,
and LISTIN is returned, based on discussion with Wayne
Landsman.
Version 5, Wayne Landsman, GSFC/UIT (STX), 26 May 1994
Added error message when database is empty.
Version 6, William Thompson, GSFC, 14 March 1995
Added FULLSTRING keyword to DBFIND_SORT call
Version 7, Richard Schwartz, GSFC/SDAC 23 August 1996
Move external to host conversion from DBRD to
operation on extracted values only.
Version 8, William Thompson, GSFC, 3 December 1996
Renamed BYTESWAP variable to BSWAP--appeared to be
conflicting with function of same name.
Version 9, William Thompson, GSFC, 17-Mar-1997
Added keyword ERRMSG
Version 10, July, 1997 W. Landsman, added CATCH errors
Converted to IDL V5.0 W. Landsman October 1997
Update documentation for new Y2K compliant DBFPARSE W. Landsman Nov 1998
Suppress empty database message with /SILENT, W. Landsman Jan 1999
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Added new unsigned & 64bit datatypes W. Landsman July 2001
[Previous]
[Next]
NAME:
DBFIND()
PURPOSE:
Search data base for entries with specified characteristics
EXPLANATION:
Function to search data base for entries with specified
search characteristics.
CALLING SEQUENCE:
result = dbfind(spar,[ listin, /SILENT, /FULLSTRING, ERRMSG=, Count = ])
INPUTS:
spar - search_parameters (string)...each search parameter
is of the form:
option 1) min_val < item_name < max_val
option 2) item_name = value
option 3) item_name = [value_1, value_10]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_DATAWIN, ADD_DETAIL, ADD_EXPER, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_LINELIST, ADD_PLAN, ADD_T_STUDY, ADD_V_RASTER, ADD_V_STUDY
CHECK_INTEG, CHK_DATAWIN, CHK_F_RASTER, CHK_F_STUDY, CHK_LINELIST, CHK_T_STUDY
CHK_V_RASTER, CHK_V_STUDY, CLR_INST_DLYD, CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE
CLR_TEL_MODE, CLR_TEL_SUBMODE, CP_GET_HISTORY, CP_GET_MNEMONIC, DBCIRCLE [1]
DBCIRCLE [2], DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN, DEL_SOHO_DET
FIND_CDS_STUDIES, GET_ALT, GET_ANOMALY, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_LINELIST, GET_MAIN, GET_MIRSHIFT, GET_PLAN
GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET, GET_STUDY, GET_TILTCAL
GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT, LIST_ANOMALY
LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_RAW, LIST_SOHO_DET
LIST_V_RASTER, LIST_V_STUDY, MOD_CAMPAIGN, MOD_DETAIL, MOD_EXPER, MOD_GSET
MOD_LINELIST, MOD_MAIN, MOD_V_RASTER, MOD_V_STUDY, PRG_ALT, PRG_ANOMALY, PRG_DETAIL
PRG_FLAG, PRG_PLAN, PRG_SOHO_DET, REG_CDROM, SEARCH_HXRBS_DB, SET_KAP_VERS
TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET, WHAT_USES, db_save_study_entry_update [1]
db_save_study_entry_update [2], eis_get_engineering_state_list [1]
eis_get_engineering_state_list [2], eis_get_science_entry [1]
eis_get_science_entry [2], eis_get_science_raster_entry [1]
eis_get_science_raster_entry [2], eis_get_study_raster_entry [1]
eis_get_study_raster_entry [2], eis_get_timeline_entries [1]
eis_get_timeline_entries [2], eis_linelist_gui [1], eis_linelist_gui [2]
eis_raster_gui [1], eis_raster_gui [2], eis_study_gui [1], eis_study_gui [2]
eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
Note: option 3 is also the slowest.
option 4) item_name > value
option 5) item_name < value
option 6) item_name = value(tolerance) ;eg. temp=25.0(5.2)
option 7) item_name ;must be non-zero
Multiple search parameters are separated by a comma.
eg. 'cam_no=2,14<ra<20'
Note: < is interpreted as less than or equal.
> is interpreted as greater than or equal.
RA and DEC keyfields are stored as floating point numbers
in the data base may be entered as HH:MM:SEC and
DEG:MIN:SEC. Where:
HH:MM:SEC equals HH + MM/60.0 + SEC/3600.
DEG:MIN:SEC equals DEG + MIN/60.0 + SEC/3600.
For example:
40:34:10.5 < dec < 43:25:19 , 8:22:1.0 < ra < 8:23:23.0
Specially encoded date/time in the data base may
be entered by CCYY/DAY:hr:min:sec which is
interpreted as
CCYY*1000+DAY+hr/24.0+min/24.0/60.+sec/24.0/3600.
If a two digit year is supplied and YY GE 40 then it is
understood to refer to year 1900 +YY; if YY LT 40 then it is
understood to refer to year 2000 +YY
For example
1985/201:10:35:30<date_time<1985/302:10:33:33.4
would specify all entries between:
year 1985 day 201 at 10:35:30 to
day 302 at 10:33:33.4
The date/time may also be encoded as:
DD-MMM-YEAR HH::MM:SS.SS
eg. 12-JUL-86 10:23:33.45
(this is the format of system variable !stime)
Multiple search parameters may be stored in a string
array (one parameter per array element) instead of
concatenating them with commas in a single string.
Example:
input_array = strarr(2)
input_array[0] = '14<ra<16' ; 14-16 hrs of ra.
input_array[1] = '8<dec<20' ; + 8-20 deg. decl.
OPTIONAL INPUT:
listin - gives list of entries to be searched. If not supplied or
set to -1 then all entries are searched.
OUTPUT:
List of ENTRY numbers satisfying search characteristics
is returned as the function value.
OPTIONAL INPUT KEYWORDS:
/SILENT - If the keyword SILENT is set and non-zero, then DBFIND
will not print the number of entries found.
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
ERRMSG = If defined and passed, then any error messages will
be returned to the user in this parameter rather
than depending on the MESSAGE routine in IDL. If no
errors are encountered, then a null string is
returned. In order to use this feature, ERRMSG must
be defined first, e.g.
ERRMSG = ''
DB_ITEM, ERRMSG=ERRMSG, ...
IF ERRMSG NE '' THEN ...;
OPTIONAL OUTPUT KEYWORD:
COUNT - Integer scalar giving the number of valid matches
PROCEDURE CALLS:
DB_INFO, DB_ITEM, DB_ITEM_INFO, DBEXT, DBEXT_IND, DBFIND_ENTRY,
DBFIND_SORT, DBFPARSE, DBRD, DBSEARCH, ZPARCHECK,IS_IEEE_BIG
RESTRICTIONS:
The data base must be previously opened with DBOPEN.
CALLS: ***
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_IND [1], DBEXT_IND [2]
DBEXT_IND [3], DBFIND_ENTRY [1], DBFIND_ENTRY [2], DBFIND_ENTRY [3]
DBFIND_SORT [1], DBFIND_SORT [2], DBFIND_SORT [3], DBFPARSE [1], DBFPARSE [2]
DBFPARSE [3], DBRD [1], DBRD [2], DBRD [3], DBSEARCH [1], DBSEARCH [2], DBSEARCH [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], ZPARCHECK [1]
ZPARCHECK [2], ZPARCHECK [3]
SIDE EFFECTS:
The obsolete system variable !ERR is set to number of entries found
REVISION HISTORY:
Written : D. Lindler, GSFC/HRS, November 1987
Version 2, Wayne Landsman, GSFC/UIT (STX), 1 April 1994
Added FULLSTRING keyword.
Version 3, William Thompson, GSFC, 1 April 1994
Added check for empty database
Version 4, William Thompson, GSFC, 5 April 1994
Changed so that !ERR is zero when database is empty,
and LISTIN is returned, based on discussion with Wayne
Landsman.
Version 5, Wayne Landsman, GSFC/UIT (STX), 26 May 1994
Added error message when database is empty.
Version 6, William Thompson, GSFC, 14 March 1995
Added FULLSTRING keyword to DBFIND_SORT call
Version 7, Richard Schwartz, GSFC/SDAC 23 August 1996
Move external to host conversion from DBRD to
operation on extracted values only.
Version 8, William Thompson, GSFC, 3 December 1996
Renamed BYTESWAP variable to BSWAP--appeared to be
conflicting with function of same name.
Version 9, William Thompson, GSFC, 17-Mar-1997
Added keyword ERRMSG
Version 10, July, 1997 W. Landsman, added CATCH errors
Converted to IDL V5.0 W. Landsman October 1997
Update documentation for new Y2K compliant DBFPARSE W. Landsman Nov 1998
Suppress empty database message with /SILENT, W. Landsman Jan 1999
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Added new unsigned & 64bit datatypes W. Landsman July 2001
[Previous]
[Next]
NAME:
DBFIND_ENTRY
PURPOSE:
Subroutine of DBFIND to perform an entry number search
EXPLANATION:
This is a subroutine of dbfind and is not a standalone procedure
It performs a entry number search.
CALLING SEQUENCE:
dbfind_entry, type, svals, nentries, values, [COUNT = ]
INPUTS:
type - type of search (output from dbfparse)
svals - search values (output from dbfparse)
values - array of values to search
OUTPUT:
good - indices of good values
OPTIONAL OUTPUT KEYWORD:
Count - integer scalar giving the number of valid matches
SIDE EFFECTS"
The obsolete system variable !err is set to number of good values
REVISION HISTORY:
D. Lindler July,1987
Fixed test for final entry number W. Landsman Sept. 95
Converted to IDL V5.0 W. Landsman September 1997
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Better checking of out of range values W. Landsman February 2002
CALLED BY
DBFIND [1], DBFIND [2], DBFIND [3]
[Previous]
[Next]
NAME:
DBFIND_ENTRY
PURPOSE:
Subroutine of DBFIND to perform an entry number search
EXPLANATION:
This is a subroutine of dbfind and is not a standalone procedure
It performs a entry number search.
CALLING SEQUENCE:
dbfind_entry, type, svals, nentries, values, [COUNT = ]
INPUTS:
type - type of search (output from dbfparse)
svals - search values (output from dbfparse)
values - array of values to search
OUTPUT:
good - indices of good values
OPTIONAL OUTPUT KEYWORD:
Count - integer scalar giving the number of valid matches
SIDE EFFECTS"
The obsolete system variable !err is set to number of good values
REVISION HISTORY:
D. Lindler July,1987
Fixed test for final entry number W. Landsman Sept. 95
Converted to IDL V5.0 W. Landsman September 1997
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Better checking of out of range values W. Landsman February 2002
CALLED BY
DBFIND [1], DBFIND [2], DBFIND [3]
[Previous]
[Next]
NAME:
DBFIND_SORT
PURPOSE:
Subroutine of DBFIND to perform a search using sorted values
EXPLANATION:
This is a subroutine of dbfind and is not a standalone procedure
It is used to limit the search using sorted values V5.2 or later!
CALLING SEQUENCE:
dbfind_sort, it, type, svals, list, [/FULLSTRING, COUNT = ]
INPUT:
it - item number, scalar
type - type of search (output from dbfparse)
svals - search values (output from dbfparse)
INPUT/OUTPUT:
list - found entries
OPTIONAL INPUT KEYWORD:
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
OPTIONAL OUTPUT KEYWORD
Count - Integer scalar giving the number of matches found
SYSTEM VARIABLES:
The obsolete system variable !err is set to number of good values
!ERR = -2 for an invalid search
REVISION HISTORY:
D. Lindler July,1987
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
William Thompson, GSFC, 14 March 1995 Added keyword FULLSTRING
Converted to IDL V5.0 W. Landsman September 1997
Minimize use of obsolete !ERR variable W. Landsman February 2000
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Use 64 bit integers V5.2 or later
Include new IDL unsigned & 64 bit integer datatypes W.Landsman July 2001
Make sure returned list vector is LONG W. Landsman August 2001
CALLS:
CALLED BY
DBFIND [1], DBFIND [2], DBFIND [3], DBGET [1], DBGET [2], DBGET [3], DBMATCH [1]
DBMATCH [2], DBMATCH [3]
[Previous]
[Next]
NAME:
DBFIND_SORT
PURPOSE:
Subroutine of DBFIND to perform a search using sorted values
EXPLANATION:
This is a subroutine of dbfind and is not a standalone procedure
It is used to limit the search using sorted values V5.2 or later!
CALLING SEQUENCE:
dbfind_sort, it, type, svals, list, [/FULLSTRING, COUNT = ]
INPUT:
it - item number, scalar
type - type of search (output from dbfparse)
svals - search values (output from dbfparse)
INPUT/OUTPUT:
list - found entries
OPTIONAL INPUT KEYWORD:
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
OPTIONAL OUTPUT KEYWORD
Count - Integer scalar giving the number of matches found
SYSTEM VARIABLES:
The obsolete system variable !err is set to number of good values
!ERR = -2 for an invalid search
REVISION HISTORY:
D. Lindler July,1987
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
William Thompson, GSFC, 14 March 1995 Added keyword FULLSTRING
Converted to IDL V5.0 W. Landsman September 1997
Minimize use of obsolete !ERR variable W. Landsman February 2000
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Use 64 bit integers V5.2 or later
Include new IDL unsigned & 64 bit integer datatypes W.Landsman July 2001
Make sure returned list vector is LONG W. Landsman August 2001
CALLS:
CALLED BY
DBFIND [1], DBFIND [2], DBFIND [3], DBGET [1], DBGET [2], DBGET [3], DBMATCH [1]
DBMATCH [2], DBMATCH [3]
[Previous]
[Next]
NAME:
DBFPARSE
PURPOSE:
Parse the search string supplied to DBFIND. Not a standalone routine
CALLING SEQUENCE:
DBFPARSE, [ spar, items, stype, values ]
INPUTS:
spar - search parameter specification, scalar string
OUTPUTS:
items - list of items to search on
stype - search type, numeric scalar
0 item=values(j,0)
-1 item>values(j,0)
-2 item<values(j,1)
-3 values(j,0)<item<values(j,1)
-4 item is non zero
-5 item=values(j,0) within tolerance values(j,1)
0< items in list values(j,i) for i=0,stype-1
values - search values, 20 x 10 string array, can parse a string
with up to 20 items specifications, each item can have 10
values
REVISION HISTORY:
D. Lindler NOV, 1987
Check for valid numeric values before assuming a date string
W. Landsman July, 1993
Accept four digit years when in ccyy/doy format W. Landsman October 1998
Don't do DATE/Time test for string items W. Landsman July 2006
CALLS:
CALLED BY
DBFIND [1], DBFIND [2], DBFIND [3]
[Previous]
[Next]
NAME:
DBFPARSE
PURPOSE:
Parse the search string supplied to DBFIND. Not a standalone routine
CALLING SEQUENCE:
DBFPARSE, [ spar, items, stype, values ]
INPUTS:
spar - search parameter specification, scalar string
OUTPUTS:
items - list of items to search on
stype - search type, numeric scalar
0 item=values(j,0)
-1 item>values(j,0)
-2 item<values(j,1)
-3 values(j,0)<item<values(j,1)
-4 item is non zero
-5 item=values(j,0) within tolerance values(j,1)
0< items in list values(j,i) for i=0,stype-1
values - search values, 20 x 10 string array, can parse a string
with up to 20 items specifications, each item can have 10
values
REVISION HISTORY:
D. Lindler NOV, 1987
Check for valid numeric values before assuming a date string
W. Landsman July, 1993
Accept four digit years when in ccyy/doy format W. Landsman October 1998
Don't do DATE/Time test for string items W. Landsman July 2006
CALLS:
CALLED BY
DBFIND [1], DBFIND [2], DBFIND [3]
[Previous]
[Next]
NAME:
DBGET
PURPOSE:
Find entry numbers which contain specified values of a given item.
EXPLANATION:
DBGET() is useful as an alternative to DBFIND() when the desired
search values are not easily expressed as a string.
CALLING SEQUENCE:
list = dbget( item, values, [ listin ], /SILENT, /FULLSTRING )
INPUTS:
item - Item name or number
values - scalar or vector containing item values to search for.
OPTIONAL INPUTS:
listin - list of entries to be searched. If not supplied, or
set to -1, then all entries are searched
OUTPUT:
list - vector giving the entry number of entries containing desired
item values. The number of elements in LIST may be different
from that of VALUE, since a value might be located zero, once,
or many times in the database. Use the function DBMATCH if a
one to one correspondence is desired between VALUES and LIST.
OPTIONAL INPUT KEYWORDS:
/SILENT - If this keyword is set, then DBGET will not display
the number of entries found
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
OPTIONAL OUTPUT KEYWORD:
COUNT - Integer scalar giving the number of valid matches
CALLS: ***
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND_SORT [1], DBFIND_SORT [2]
DBFIND_SORT [3], DBSEARCH [1], DBSEARCH [2], DBSEARCH [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3]
RESTRICTIONS:
When linked databases are opened together, DBGET can only be used to
search on items in the primary database.
EXAMPLE:
Get info on selected HD stars in Bright Star catalogue
IDL> dbopen, 'YALE_BS'
IDL> hdno = [1141,2363,3574,4128,6192,6314,6668] ;Desired HD numbers
IDL> list = dbget( 'HD', hdno ) ;Get corresponding entry numbers
SYSTEM VARIABLES:
The obsolete system variable !ERR is set to number of entries found
REVISION HISTORY:
Written, W. Landsman STX February, 1989
William Thompson, GSFC, 14 March 1995 Added keyword FULLSTRING
Converted to IDL V5.0 W. Landsman September 1997
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Fix bug introduced March 2000 W. Landsman November 2000
[Previous]
[Next]
NAME:
DBGET
PURPOSE:
Find entry numbers which contain specified values of a given item.
EXPLANATION:
DBGET() is useful as an alternative to DBFIND() when the desired
search values are not easily expressed as a string.
CALLING SEQUENCE:
list = dbget( item, values, [ listin ], /SILENT, /FULLSTRING )
INPUTS:
item - Item name or number
values - scalar or vector containing item values to search for.
OPTIONAL INPUTS:
listin - list of entries to be searched. If not supplied, or
set to -1, then all entries are searched
OUTPUT:
list - vector giving the entry number of entries containing desired
item values. The number of elements in LIST may be different
from that of VALUE, since a value might be located zero, once,
or many times in the database. Use the function DBMATCH if a
one to one correspondence is desired between VALUES and LIST.
OPTIONAL INPUT KEYWORDS:
/SILENT - If this keyword is set, then DBGET will not display
the number of entries found
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
OPTIONAL OUTPUT KEYWORD:
COUNT - Integer scalar giving the number of valid matches
CALLS: ***
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND_SORT [1], DBFIND_SORT [2]
DBFIND_SORT [3], DBSEARCH [1], DBSEARCH [2], DBSEARCH [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3]
RESTRICTIONS:
When linked databases are opened together, DBGET can only be used to
search on items in the primary database.
EXAMPLE:
Get info on selected HD stars in Bright Star catalogue
IDL> dbopen, 'YALE_BS'
IDL> hdno = [1141,2363,3574,4128,6192,6314,6668] ;Desired HD numbers
IDL> list = dbget( 'HD', hdno ) ;Get corresponding entry numbers
SYSTEM VARIABLES:
The obsolete system variable !ERR is set to number of entries found
REVISION HISTORY:
Written, W. Landsman STX February, 1989
William Thompson, GSFC, 14 March 1995 Added keyword FULLSTRING
Converted to IDL V5.0 W. Landsman September 1997
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
Fix bug introduced March 2000 W. Landsman November 2000
[Previous]
[Next]
NAME:
DBHELP
PURPOSE:
List available databases or items in the currently open database
EXPLANATION:
Procedure to either list available databases (if no database is
currently open) or the items in the currently open database.
CALLING SEQUENCE:
dbhelp, [ flag , TEXTOUT=, /SORT ]
INPUT:
flag - (optional) if set to nonzero then item or database
descriptions are also printed
default=0
If flag is a string, then it is interpreted as the
name of a data base (if no data base is opened) or a name
of an item in the opened data base. In this case, help
is displayed only for the particular item or database
OUTPUTS:
None
OPTIONAL INPUT KEYWORDS:
TEXTOUT - Used to determine output device. If not present, the
value of !TEXTOUT system variable is used (see TEXTOPEN )
textout=0 Nowhere
textout=1 if a TTY then TERMINAL using /more option
otherwise standard (Unit=-1) output
textout=2 if a TTY then TERMINAL without /more option
otherwise standard (Unit=-1) output
textout=3 <program>.prt
textout=4 laser.tmp
textout=5 user must open file
textout=7 same as 3 but text is appended to <program>.prt
file if it already exists.
textout = filename (default extension of .prt)
/SORT - If set and non-zero, then the help items will be displayed
sorted alphabetically. If more than one database is open,
then this keyword does nothing.
METHOD:
If no data base is opened then a list of data bases are
printed, otherwise the items in the open data base are printed.
If a string is supplied for flag and a data base is opened
flag is assumed to be an item name. The information for that
item is printed along with contents in a optional file
zdbase:dbname_itemname.hlp
if a string is supplied for flag and no data base is opened,
then string is assumed to be the name of a data base file.
only information for that file is printed along with an
optional file zdbase:dbname.hlp.
PROCEDURES USED:
DB_INFO(),DB_ITEM_INFO(),FIND_WITH_DEF(), TEXTOPEN, TEXTCLOSE, UNIQ()
IDL VERSION:
V5.3 or later (uses vectorized FDECOMP)
CALLS: ***
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], FDECOMP [1], FDECOMP [2]
FDECOMP [3], FIND_WITH_DEF [1], FIND_WITH_DEF [2], FIND_WITH_DEF [3]
LIST_WITH_PATH [1], LIST_WITH_PATH [2], LIST_WITH_PATH [3], REM_DUP [1]
REM_DUP [2], REM_DUP [3], TEXTCLOSE [1], TEXTCLOSE [2], TEXTCLOSE [3]
TEXTOPEN [1], TEXTOPEN [2], TEXTOPEN [3]
HISTORY:
Version 2 D. Lindler Nov 1987 (new db format)
Faster printing of title desc. W. Landsman May 1989
Keyword textout added, J. Isensee, July, 1990
Modified to work on Unix, D. Neill, ACC, Feb 1991.
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
Remove duplicate database names Wayne Landsman December 1994
8/17/95 jkf/acc - force lowercase filenames for .hlp files.
Added /SORT keyword J. Sandoval/W. Landsman October 1998
V5.3 version use vectorized FDECOMP W. Landsman February 2001
Recognize 64 bit, unsigned integer datatypes W. Landsman September 2001
Fix display of number of bytes with /SORT W. Landsman February 2002
Assume since V5.2 W. Landsman February 2002
Assume since V5.5 W. Landsman
[Previous]
[Next]
NAME:
DBHELP
PURPOSE:
List available databases or items in the currently open database
EXPLANATION:
Procedure to either list available databases (if no database is
currently open) or the items in the currently open database.
CALLING SEQUENCE:
dbhelp, [ flag , TEXTOUT=, /SORT ]
INPUT:
flag - (optional) if set to nonzero then item or database
descriptions are also printed
default=0
If flag is a string, then it is interpreted as the
name of a data base (if no data base is opened) or a name
of an item in the opened data base. In this case, help
is displayed only for the particular item or database
OUTPUTS:
None
OPTIONAL INPUT KEYWORDS:
TEXTOUT - Used to determine output device. If not present, the
value of !TEXTOUT system variable is used (see TEXTOPEN )
textout=0 Nowhere
textout=1 if a TTY then TERMINAL using /more option
otherwise standard (Unit=-1) output
textout=2 if a TTY then TERMINAL without /more option
otherwise standard (Unit=-1) output
textout=3 <program>.prt
textout=4 laser.tmp
textout=5 user must open file
textout=7 same as 3 but text is appended to <program>.prt
file if it already exists.
textout = filename (default extension of .prt)
/SORT - If set and non-zero, then the help items will be displayed
sorted alphabetically. If more than one database is open,
then this keyword does nothing.
METHOD:
If no data base is opened then a list of data bases are
printed, otherwise the items in the open data base are printed.
If a string is supplied for flag and a data base is opened
flag is assumed to be an item name. The information for that
item is printed along with contents in a optional file
zdbase:dbname_itemname.hlp
if a string is supplied for flag and no data base is opened,
then string is assumed to be the name of a data base file.
only information for that file is printed along with an
optional file zdbase:dbname.hlp.
PROCEDURES USED:
DB_INFO(),DB_ITEM_INFO(),FIND_WITH_DEF(), TEXTOPEN, TEXTCLOSE, UNIQ()
IDL VERSION:
V5.3 or later (uses vectorized FDECOMP)
CALLS: ***
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], FDECOMP [1], FDECOMP [2]
FDECOMP [3], FIND_WITH_DEF [1], FIND_WITH_DEF [2], FIND_WITH_DEF [3]
LIST_WITH_PATH [1], LIST_WITH_PATH [2], LIST_WITH_PATH [3], REM_DUP [1]
REM_DUP [2], REM_DUP [3], TEXTCLOSE [1], TEXTCLOSE [2], TEXTCLOSE [3]
TEXTOPEN [1], TEXTOPEN [2], TEXTOPEN [3]
HISTORY:
Version 2 D. Lindler Nov 1987 (new db format)
Faster printing of title desc. W. Landsman May 1989
Keyword textout added, J. Isensee, July, 1990
Modified to work on Unix, D. Neill, ACC, Feb 1991.
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
Remove duplicate database names Wayne Landsman December 1994
8/17/95 jkf/acc - force lowercase filenames for .hlp files.
Added /SORT keyword J. Sandoval/W. Landsman October 1998
V5.3 version use vectorized FDECOMP W. Landsman February 2001
Recognize 64 bit, unsigned integer datatypes W. Landsman September 2001
Fix display of number of bytes with /SORT W. Landsman February 2002
Assume since V5.2 W. Landsman February 2002
Assume since V5.5 W. Landsman
[Previous]
[Next]
NAME:
DBINDEX
PURPOSE:
Procedure to create index file for data base
CALLING SEQUENCE:
dbindex, [ items ]
OPTIONAL INPUT:
items - names or numbers of items to be index -- if not supplied,
then all indexed fields will be processed.
OUTPUT:
Index file <name>.dbx is created on disk location ZDBASE:
OPERATIONAL NOTES:
(1) Data base must have been previously opened for update
by DBOPEN
(2) Only 18 items can be indexed at one time. If the database has
more than 18 items, then two separate calls to DBINDEX are needed.
PROCEDURES CALLED:
DBINDEX_BLK, DB_INFO(), DB_ITEM, DB_ITEM_INFO(), IEEE_TO_HOST,
IS_IEEE_BIG()
CALLS: ***
BSORT [1], BSORT [2], BSORT [3], BSORT [4], DBEXT_DBF [1], DBEXT_DBF [2]
DBEXT_DBF [3], DBINDEX_BLK [1], DBINDEX_BLK [2], DBINDEX_BLK [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2]
HOST_TO_IEEE [3], HOST_TO_IEEE [4], IEEE_TO_HOST [1], IEEE_TO_HOST [2]
IEEE_TO_HOST [3], IEEE_TO_HOST [4]
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBDELETE [1], DBDELETE [2], DBDELETE [3]
DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2]
DBEDIT_BASIC [3], DBEXT [2], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3]
DBUPDATE [4], FLUSH_CATALOG, PRG_DETAIL, PRG_PLAN
HISTORY:
version 2 D. Lindler Nov 1987 (new db format)
W. Landsman added optional items parameter Feb 1989
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
Test if machine is bigendian W. Landsman May, 1996
Change variable name of BYTESWAP to BSWAP W. Thompson Mar, 1997
Increased number of fields to 15 W. Landsman June, 1997
Increase number of items to 18 W. Landsman November 1999
Allow multiple valued (nonstring) index items W. Landsman November 2000
Use 64 bit integers for V5.2 or later W. Landsman February 2001
Do not use EXECUTE() for V6.1 or later, improve efficiency
W. Landsman December 2006
Automatically enlarge .dbx file if needed, fix major bug in last
update W. Landsman Dec 2006
[Previous]
[Next]
NAME:
DBINDEX
PURPOSE:
Procedure to create index file for data base
CALLING SEQUENCE:
dbindex, [ items ]
OPTIONAL INPUT:
items - names or numbers of items to be index -- if not supplied,
then all indexed fields will be processed.
OUTPUT:
Index file <name>.dbx is created on disk location ZDBASE:
OPERATIONAL NOTES:
(1) Data base must have been previously opened for update
by DBOPEN
(2) Only 18 items can be indexed at one time. If the database has
more than 18 items, then two separate calls to DBINDEX are needed.
PROCEDURES CALLED:
DBINDEX_BLK, DB_INFO(), DB_ITEM, DB_ITEM_INFO(), IEEE_TO_HOST,
IS_IEEE_BIG()
CALLS: ***
BSORT [1], BSORT [2], BSORT [3], BSORT [4], DBEXT_DBF [1], DBEXT_DBF [2]
DBEXT_DBF [3], DBINDEX_BLK [1], DBINDEX_BLK [2], DBINDEX_BLK [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2]
HOST_TO_IEEE [3], HOST_TO_IEEE [4], IEEE_TO_HOST [1], IEEE_TO_HOST [2]
IEEE_TO_HOST [3], IEEE_TO_HOST [4]
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBDELETE [1], DBDELETE [2], DBDELETE [3]
DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1], DBEDIT_BASIC [2]
DBEDIT_BASIC [3], DBEXT [2], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3]
DBUPDATE [4], FLUSH_CATALOG, PRG_DETAIL, PRG_PLAN
HISTORY:
version 2 D. Lindler Nov 1987 (new db format)
W. Landsman added optional items parameter Feb 1989
William Thompson, GSFC/CDS (ARC), 30 May 1994
Added support for external (IEEE) data format
Test if machine is bigendian W. Landsman May, 1996
Change variable name of BYTESWAP to BSWAP W. Thompson Mar, 1997
Increased number of fields to 15 W. Landsman June, 1997
Increase number of items to 18 W. Landsman November 1999
Allow multiple valued (nonstring) index items W. Landsman November 2000
Use 64 bit integers for V5.2 or later W. Landsman February 2001
Do not use EXECUTE() for V6.1 or later, improve efficiency
W. Landsman December 2006
Automatically enlarge .dbx file if needed, fix major bug in last
update W. Landsman Dec 2006
[Previous]
[Next]
NAME:
DBINDEX_BLK
PURPOSE:
Subroutine of DBINDEX to create associated variable of correct datatype
EXPLANATION:
DBINDEX_BLK will offset into the file by a specified amount in
preparation for writing to the file. V5.2 or later
CALLING SEQUENCE:
res = dbindex_blk(unit, nb, bsz, ofb, dtype)
INPUTS:
unit The unit number assigned to the file.
nb The number of blocks to offset into the file.
bsz The size of each block, in bytes, to offset into the file.
ofb The offset into the block, in bytes.
dtype The IDL datatype as defined in the SIZE function
OUTPUTS:
res The returned variable. This is an associated variable.
CALLED BY:
DBINDEX [1], DBINDEX [2], DBINDEX [3], DBWRT [1], DBWRT [2], DBWRT [3]
RESTRICTIONS:
The file must have been previously opened.
MODIFICATION HISTORY:
Written by Michael R. Greason, STX, 14 June 1990.
Converted to IDL V5.0 W. Landsman September 1997
Use 64 bit integer for very large databases W. Landsman February 2001
Added new unsigned & 64bit integer datatypes W. Landsman July 2001
[Previous]
[Next]
NAME:
DBINDEX_BLK
PURPOSE:
Subroutine of DBINDEX to create associated variable of correct datatype
EXPLANATION:
DBINDEX_BLK will offset into the file by a specified amount in
preparation for writing to the file. V5.2 or later
CALLING SEQUENCE:
res = dbindex_blk(unit, nb, bsz, ofb, dtype)
INPUTS:
unit The unit number assigned to the file.
nb The number of blocks to offset into the file.
bsz The size of each block, in bytes, to offset into the file.
ofb The offset into the block, in bytes.
dtype The IDL datatype as defined in the SIZE function
OUTPUTS:
res The returned variable. This is an associated variable.
CALLED BY:
DBINDEX [1], DBINDEX [2], DBINDEX [3], DBWRT [1], DBWRT [2], DBWRT [3]
RESTRICTIONS:
The file must have been previously opened.
MODIFICATION HISTORY:
Written by Michael R. Greason, STX, 14 June 1990.
Converted to IDL V5.0 W. Landsman September 1997
Use 64 bit integer for very large databases W. Landsman February 2001
Added new unsigned & 64bit integer datatypes W. Landsman July 2001
[Previous]
[Next]
NAME:
DBL2ARRAY
PURPOSE:
Convert a 64 bit flag word to a byte array of 1's and 0's.
CATEGORY:
SMM Catalog
CALLING SEQUENCE:
result = DBL2ARRAY(DBL=DBL)
CALLED BY:
SMMCAT
CALLS TO:
none
INPUTS:
DBL Double precision word array containing 64 bit flags to convert
OPTIONAL INPUTS:
none
OUTPUTS:
Returns a byte array (64 x n_elements(dbl)) containing 1s or 0s
corresponding to the bits of DBL.
OPTIONAL OUTPUTS:
none
COMMON BLOCKS:
none
SIDE EFFECTS:
none
RESTRICTIONS:
none
PROCEDURE:
Convert double values into 2 by n long array, and identify which
bits are set.
MODIFICATION HISTORY:
Mar 15, 1994 - Kim Tolbert (HSTX)
May '94 - Elaine Einfalt (HSTX) - Changed procedure into function
- Added array input
- Removed ONFLAGS return variable
[Previous]
[Next]
NAME:
DBMATCH
PURPOSE:
Find the entry number in a database for each element of item values
EXPLANATION:
DBMATCH() is especially useful for finding a one-to-one
correspondence between entries in different databases, and thus to
create the vector needed for database pointers.
CALLING SEQUENCE:
list = DBMATCH( item, values, [ listin, /FULLSTRING ] )
INPUTS:
ITEM - Item name or number, scalar
VALUES - scalar or vector containing item values to search for.
OPTIONAL INPUTS:
LISTIN - list of entries to be searched. If not supplied, or
set to -1, then all entries are searched
OUTPUT:
LIST - vector of entry numbers with the same number of elements as
VALUES. Contains a value of 0 wherever the corresponding item
value was not found.
OPTIONAL INPUT:
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
NOTES:
DBMATCH is meant to be used for items which do not have duplicate values
in a database (e.g. catalog numbers). If more than one entry is found
for a particular item value, then only the first one is stored in LIST.
When linked databases are opened together, DBMATCH can only be
used to search on items in the primary database.
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBFIND_SORT [1], DBFIND_SORT [2], DBFIND_SORT [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3]
CALLED BY:
ADD_DATAWIN, ADD_F_RASTER, ADD_LINELIST, ADD_RES_TYPE, ADD_V_RASTER, ADD_V_STUDY
CHK_T_STUDY
EXAMPLE:
Make a vector which points from entries in the Yale Bright Star catalog
to those in the Hipparcos catalog, using the HD number
IDL> dbopen, 'yale_bs' ;Open the Yale Bright star catalog
IDL> dbext, -1, 'HD', hd ;Get the HD numbers
IDL> dbopen, 'hipparcos' ;Open the Hipparcos catalog
IDL> list = dbmatch( 'HD', HD) ;Get entries in Hipparcos catalog
;corresponding to each HD number.
PROCEDURE CALLS:
DB_ITEM, DB_ITEM_INFO(), DBEXT, DBFIND_SORT()
REVISION HISTORY:
Written, W. Landsman STX February, 1990
Fixed error when list in parameter used May, 1992
Faster algorithm with sorted item when listin parameter supplied
Added keyword FULLSTRING,check for empty database, William Thompson,
GSFC, 15 March 1995
Work for more than 32767 values, added CATCH W. Landsman July 1997
Converted to IDL V5.0 W. Landsman 25-Nov-1997
Change some loop variables to type LONG, W. Landsman July 1999
Remove loop for substring searches (faster) W. landsman August 1999
Replace DATATYPE() with size(/TNAME) W. Landsman November 2001
Fixed typo when search on sorted items W. Landsman February 2002
[Previous]
[Next]
NAME:
DBMATCH
PURPOSE:
Find the entry number in a database for each element of item values
EXPLANATION:
DBMATCH() is especially useful for finding a one-to-one
correspondence between entries in different databases, and thus to
create the vector needed for database pointers.
CALLING SEQUENCE:
list = DBMATCH( item, values, [ listin, /FULLSTRING ] )
INPUTS:
ITEM - Item name or number, scalar
VALUES - scalar or vector containing item values to search for.
OPTIONAL INPUTS:
LISTIN - list of entries to be searched. If not supplied, or
set to -1, then all entries are searched
OUTPUT:
LIST - vector of entry numbers with the same number of elements as
VALUES. Contains a value of 0 wherever the corresponding item
value was not found.
OPTIONAL INPUT:
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
NOTES:
DBMATCH is meant to be used for items which do not have duplicate values
in a database (e.g. catalog numbers). If more than one entry is found
for a particular item value, then only the first one is stored in LIST.
When linked databases are opened together, DBMATCH can only be
used to search on items in the primary database.
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBFIND_SORT [1], DBFIND_SORT [2], DBFIND_SORT [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3]
CALLED BY:
ADD_DATAWIN, ADD_F_RASTER, ADD_LINELIST, ADD_RES_TYPE, ADD_V_RASTER, ADD_V_STUDY
CHK_T_STUDY
EXAMPLE:
Make a vector which points from entries in the Yale Bright Star catalog
to those in the Hipparcos catalog, using the HD number
IDL> dbopen, 'yale_bs' ;Open the Yale Bright star catalog
IDL> dbext, -1, 'HD', hd ;Get the HD numbers
IDL> dbopen, 'hipparcos' ;Open the Hipparcos catalog
IDL> list = dbmatch( 'HD', HD) ;Get entries in Hipparcos catalog
;corresponding to each HD number.
PROCEDURE CALLS:
DB_ITEM, DB_ITEM_INFO(), DBEXT, DBFIND_SORT()
REVISION HISTORY:
Written, W. Landsman STX February, 1990
Fixed error when list in parameter used May, 1992
Faster algorithm with sorted item when listin parameter supplied
Added keyword FULLSTRING,check for empty database, William Thompson,
GSFC, 15 March 1995
Work for more than 32767 values, added CATCH W. Landsman July 1997
Converted to IDL V5.0 W. Landsman 25-Nov-1997
Change some loop variables to type LONG, W. Landsman July 1999
Remove loop for substring searches (faster) W. landsman August 1999
Replace DATATYPE() with size(/TNAME) W. Landsman November 2001
Fixed typo when search on sorted items W. Landsman February 2002
[Previous]
[Next]
NAME:
DBOPEN
PURPOSE:
Routine to open an IDL database
CALLING SEQUENCE:
dbopen, name, update
INPUTS:
name - (Optional) name or names of the data base files to open.
It has one of the following forms:
'name' -open single data base file
'name1,name2,...,nameN' - open N files which are
connected via pointers.
'name,*' -Open the data base with all data
bases connected via pointers
'' -Interactively allow selection of
the data base files.
If not supplied then '' is assumed.
name may optionally be a string array with one name
per element.
update - (Optional) Integer flag specifing openning for update.
0 - Open for read only
1 - Open for update
2 - Open index file for update only
!PRIV must be 2 or greater to open a file for update.
If a file is opened for update only a single data base
can be specified.
OUTPUTS:
none
KEYWORDS:
UNAVAIL - If present, a "database doesn't exit" flag is returned
through it. 0 = the database exists and was opened (if
no other errors arose). 1 = the database doesn't exist.
Also if present, the error message for non-existent databases
is suppressed. The action, however, remains the same.
CALLS: ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
FDECOMP [1], FDECOMP [2], FDECOMP [3], FIND_WITH_DEF [1], FIND_WITH_DEF [2]
FIND_WITH_DEF [3], GETTOK [1], GETTOK [2], GETTOK [3], GETTOK [4]
IEEE_TO_HOST [1], IEEE_TO_HOST [2], IEEE_TO_HOST [3], IEEE_TO_HOST [4]
LIST_WITH_PATH [1], LIST_WITH_PATH [2], LIST_WITH_PATH [3], SCREEN_SELECT [1]
SCREEN_SELECT [2], SCREEN_SELECT [3], ZPARCHECK [1], ZPARCHECK [2]
ZPARCHECK [3]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_CAMPAIGN, ADD_CDS_POINT, ADD_DATAWIN, ADD_DETAIL
ADD_EFFICIENCY, ADD_EFF_AREA, ADD_EXPER, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_INST_DLYD, ADD_LINELIST, ADD_MAIN, ADD_MIRSHIFT
ADD_NRT_RES, ADD_OTHER_OBS, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RESOURCE
ADD_RES_TYPE, ADD_TEL_MODE, ADD_TEL_SUBMODE, ADD_TILTCAL, ADD_T_STUDY
ADD_V_RASTER, ADD_V_STUDY, ADD_WAVECAL, ADD_WAVE_EFF, CHECK_INTEG, CHK_DATAWIN
CHK_F_RASTER, CHK_F_STUDY, CHK_LINELIST, CHK_T_STUDY, CHK_V_RASTER, CHK_V_STUDY
CLR_INST_DLYD, CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE
CLR_TEL_SUBMODE, CP_GET_HISTORY, CP_GET_MNEMONIC, DBCOMPRESS, DBDELETE [1]
DBDELETE [2], DBDELETE [3], DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBREPAIR, DEL_ALT, DEL_ANOMALY, DEL_DETAIL
DEL_FLAG, DEL_PLAN, DEL_SOHO_DET, EIS_LIST_EXPER [1], EIS_LIST_EXPER [2]
EIS_LIST_MAIN [1], EIS_LIST_MAIN [2], FIND_CDS_STUDIES, FIX_MAIN_TIMES
FIX_OBS_SEQ, FLUSH_CATALOG, GET_ALT, GET_ANOMALY, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN
GET_MIRSHIFT, GET_PLAN, GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET
GET_STUDY, GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT
LIST_ANOMALY, LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OBJECT, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM
LIST_RAW, LIST_RES_TYPE, LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_CAMPAIGN
MOD_DETAIL, MOD_EXPER, MOD_GSET, MOD_LINELIST, MOD_MAIN, MOD_V_RASTER, MOD_V_STUDY
PRG_ALT, PRG_ANOMALY, PRG_DETAIL, PRG_FLAG, PRG_PLAN, PRG_SOHO_DET, PURGE_CDHSSTATE
REG_CDROM, SEARCH_HXRBS_DB, SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET
WHAT_CDHS_STUDY, WHAT_USES, db_read_linelist_all [1], db_read_linelist_all [2]
db_read_linelist_entry [1], db_read_linelist_entry [2]
db_read_raster_all [1], db_read_raster_all [2], db_read_raster_entry [1]
db_read_raster_entry [2], db_read_study_all [1], db_read_study_all [2]
db_save_linelist_entry_create [1], db_save_linelist_entry_create [2]
db_save_linelist_entry_update [1], db_save_linelist_entry_update [2]
db_save_raster_entry_create [1], db_save_raster_entry_create [2]
db_save_raster_entry_update [1], db_save_raster_entry_update [2]
db_save_study_entry_create [1], db_save_study_entry_create [2]
db_save_study_entry_create [3], db_save_study_entry_create [4]
db_save_study_entry_update [1], db_save_study_entry_update [2]
eis_delete_timeline_entry [1], eis_delete_timeline_entry [2]
eis_get_timeline_entries [1], eis_get_timeline_entries [2]
eis_import_study_gui, eis_linelist_gui [1], eis_linelist_gui [2]
eis_open_db [1], eis_open_db [2], eis_raster_gui [1], eis_raster_gui [2]
eis_save_imported_linelist, eis_save_imported_raster, eis_study_gui [1]
eis_study_gui [2], eis_update_timeline_entry [1]
eis_update_timeline_entry [2], eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
eis_write_science_component_database_table [1]
eis_write_science_component_database_table [2]
SIDE EFFECTS:
The .DBF and .dbx files are opened using unit numbers obtained by
GET_LUN. Descriptions of the files are placed in the common block
DB_COM.
HISTORY:
For IDL Version 2 W. Landsman May 1990 -- Will require further
modfication once SCREEN_SELECT is working
Modified to work under Unix, D. Neill, ACC, Feb 1991.
UNAVAIL keyword added. M. Greason, Hughes STX, Feb 1993.
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
8/29/95 JKF/ACC - forces lowercase for input database names.
W. Landsman, Use CATCH to catch errors July, 1997
W. Landsman Use vector call to FDECOMP, STRSPLIT() Sep 2006
W. Landsman Remove obsolete keywords to OPEN Sep 2006
[Previous]
[Next]
NAME:
DBOPEN
PURPOSE:
Routine to open an IDL database
CALLING SEQUENCE:
dbopen, name, update
INPUTS:
name - (Optional) name or names of the data base files to open.
It has one of the following forms:
'name' -open single data base file
'name1,name2,...,nameN' - open N files which are
connected via pointers.
'name,*' -Open the data base with all data
bases connected via pointers
'' -Interactively allow selection of
the data base files.
If not supplied then '' is assumed.
name may optionally be a string array with one name
per element.
update - (Optional) Integer flag specifing openning for update.
0 - Open for read only
1 - Open for update
2 - Open index file for update only
!PRIV must be 2 or greater to open a file for update.
If a file is opened for update only a single data base
can be specified.
OUTPUTS:
none
KEYWORDS:
UNAVAIL - If present, a "database doesn't exit" flag is returned
through it. 0 = the database exists and was opened (if
no other errors arose). 1 = the database doesn't exist.
Also if present, the error message for non-existent databases
is suppressed. The action, however, remains the same.
CALLS: ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
FDECOMP [1], FDECOMP [2], FDECOMP [3], FIND_WITH_DEF [1], FIND_WITH_DEF [2]
FIND_WITH_DEF [3], GETTOK [1], GETTOK [2], GETTOK [3], GETTOK [4]
IEEE_TO_HOST [1], IEEE_TO_HOST [2], IEEE_TO_HOST [3], IEEE_TO_HOST [4]
LIST_WITH_PATH [1], LIST_WITH_PATH [2], LIST_WITH_PATH [3], SCREEN_SELECT [1]
SCREEN_SELECT [2], SCREEN_SELECT [3], ZPARCHECK [1], ZPARCHECK [2]
ZPARCHECK [3]
CALLED BY:
ADD_ALT, ADD_ANOMALY, ADD_CAMPAIGN, ADD_CDS_POINT, ADD_DATAWIN, ADD_DETAIL
ADD_EFFICIENCY, ADD_EFF_AREA, ADD_EXPER, ADD_EXP_COMM, ADD_FLAG, ADD_F_RASTER
ADD_F_STUDY, ADD_GSET, ADD_INST_DLYD, ADD_LINELIST, ADD_MAIN, ADD_MIRSHIFT
ADD_NRT_RES, ADD_OTHER_OBS, ADD_PLAN, ADD_PROGRAM, ADD_RAW, ADD_RESOURCE
ADD_RES_TYPE, ADD_TEL_MODE, ADD_TEL_SUBMODE, ADD_TILTCAL, ADD_T_STUDY
ADD_V_RASTER, ADD_V_STUDY, ADD_WAVECAL, ADD_WAVE_EFF, CHECK_INTEG, CHK_DATAWIN
CHK_F_RASTER, CHK_F_STUDY, CHK_LINELIST, CHK_T_STUDY, CHK_V_RASTER, CHK_V_STUDY
CLR_INST_DLYD, CLR_NRT_RES, CLR_OTHER_OBS, CLR_RESOURCE, CLR_TEL_MODE
CLR_TEL_SUBMODE, CP_GET_HISTORY, CP_GET_MNEMONIC, DBCOMPRESS, DBDELETE [1]
DBDELETE [2], DBDELETE [3], DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBREPAIR, DEL_ALT, DEL_ANOMALY, DEL_DETAIL
DEL_FLAG, DEL_PLAN, DEL_SOHO_DET, EIS_LIST_EXPER [1], EIS_LIST_EXPER [2]
EIS_LIST_MAIN [1], EIS_LIST_MAIN [2], FIND_CDS_STUDIES, FIX_MAIN_TIMES
FIX_OBS_SEQ, FLUSH_CATALOG, GET_ALT, GET_ANOMALY, GET_CAMPAIGN, GET_CDHS_DEXWIN
GET_CDHS_RASTER, GET_CDHS_SERIES, GET_CDHS_VDSWIN, GET_CDS_PNTCAL, GET_COMPRESS
GET_DATAWIN, GET_DETAIL, GET_EFFICIENCY, GET_EFF_AREA, GET_EXPER, GET_FLAG
GET_F_RASTER, GET_F_STUDY, GET_GSET, GET_INSTRUMENT, GET_LINELIST, GET_MAIN
GET_MIRSHIFT, GET_PLAN, GET_PROGRAM, GET_RASTER, GET_RAW, GET_RAW_FIL, GET_SOHO_DET
GET_STUDY, GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, IMDBASE, LAST_KAP_VERS, LIST_ALT
LIST_ANOMALY, LIST_CAMPAIGN, LIST_CDROM, LIST_COM_TIMES, LIST_DATAWIN, LIST_DETAIL
LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER, LIST_EXP_COMM, LIST_FLAG, LIST_F_RASTER
LIST_F_STUDY, LIST_GSET, LIST_INST_DLYD, LIST_LINELIST, LIST_MAIN, LIST_MDI_M
LIST_NRT_RES, LIST_OBJECT, LIST_OTHER_OBS, LIST_OTHER_RES, LIST_PLAN, LIST_PROGRAM
LIST_RAW, LIST_RES_TYPE, LIST_SOHO_DET, LIST_V_RASTER, LIST_V_STUDY, MOD_CAMPAIGN
MOD_DETAIL, MOD_EXPER, MOD_GSET, MOD_LINELIST, MOD_MAIN, MOD_V_RASTER, MOD_V_STUDY
PRG_ALT, PRG_ANOMALY, PRG_DETAIL, PRG_FLAG, PRG_PLAN, PRG_SOHO_DET, PURGE_CDHSSTATE
REG_CDROM, SEARCH_HXRBS_DB, SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET
WHAT_CDHS_STUDY, WHAT_USES, db_read_linelist_all [1], db_read_linelist_all [2]
db_read_linelist_entry [1], db_read_linelist_entry [2]
db_read_raster_all [1], db_read_raster_all [2], db_read_raster_entry [1]
db_read_raster_entry [2], db_read_study_all [1], db_read_study_all [2]
db_save_linelist_entry_create [1], db_save_linelist_entry_create [2]
db_save_linelist_entry_update [1], db_save_linelist_entry_update [2]
db_save_raster_entry_create [1], db_save_raster_entry_create [2]
db_save_raster_entry_update [1], db_save_raster_entry_update [2]
db_save_study_entry_create [1], db_save_study_entry_create [2]
db_save_study_entry_create [3], db_save_study_entry_create [4]
db_save_study_entry_update [1], db_save_study_entry_update [2]
eis_delete_timeline_entry [1], eis_delete_timeline_entry [2]
eis_get_timeline_entries [1], eis_get_timeline_entries [2]
eis_import_study_gui, eis_linelist_gui [1], eis_linelist_gui [2]
eis_open_db [1], eis_open_db [2], eis_raster_gui [1], eis_raster_gui [2]
eis_save_imported_linelist, eis_save_imported_raster, eis_study_gui [1]
eis_study_gui [2], eis_update_timeline_entry [1]
eis_update_timeline_entry [2], eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
eis_write_science_component_database_table [1]
eis_write_science_component_database_table [2]
SIDE EFFECTS:
The .DBF and .dbx files are opened using unit numbers obtained by
GET_LUN. Descriptions of the files are placed in the common block
DB_COM.
HISTORY:
For IDL Version 2 W. Landsman May 1990 -- Will require further
modfication once SCREEN_SELECT is working
Modified to work under Unix, D. Neill, ACC, Feb 1991.
UNAVAIL keyword added. M. Greason, Hughes STX, Feb 1993.
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
8/29/95 JKF/ACC - forces lowercase for input database names.
W. Landsman, Use CATCH to catch errors July, 1997
W. Landsman Use vector call to FDECOMP, STRSPLIT() Sep 2006
W. Landsman Remove obsolete keywords to OPEN Sep 2006
[Previous]
[Next]
NAME:
DBPRINT
PURPOSE:
Procedure to print specified items from a list of database entries
CALLING SEQUENCE:
dbprint, list, [items, FORMS= , TEXTOUT= , /AdjustFormat, /NoHeader]
INPUTS:
list - list of entry numbers to be printed, vector or scalar
if list = -1, then all entries will be printed.
An error message is returned if any entry number is larger
than the number of entries in the database
OPTIONAL INPUT-OUTPUT:
items - items to be printed, specified in any of the following ways:
form 1 scalar string giving item(s) as list of names
separated by commas
form 2 string array giving list of item names
form 3 string of form '$filename' giving name
of text file containing items (one item per
line)
form 4 integer scalar giving single item number or
integer vector list of item numbers
form 5 Null string specifying interactive selection. This
is the default if 'items' is not supplied
form 6 '*' select all items, printout will be in
table format.
If items was undefined or a null string on input, then
on output it will contain the items interactively selected.
OPTIONAL INPUT KEYWORDS:
/ADJUSTFORMAT - If set, then the format length for string items will
be adjusted to the maximum length for the entries to be printed.
This option will slow down DBPRINT because it requires the
string items be extracted and their maximum length determined
prior to any printing. However, it enables the display of
string items without any truncation or wasted space.
FORMS - The number of printed lines per page. If forms is not
present, output assumed to be in PORTRAIT form, and
a heading and 47 lines are printed on each page, with
a page eject between each page. For LANDSCAPE form with
headings on each page, and a page eject between pages, set
forms = 34. For a heading only on the first page, and no
page eject, set forms = 0. This is the default for output
to the terminal.
TEXTOUT - Integer (0-7) or string used to determine output device (see
TEXTOPEN for more info). If not present, the !TEXTOUT system
variable is used.
textout=0 Nowhere
textout=1 if a TTY then TERMINAL using /more option
otherwise standard (Unit=-1) output
textout=2 if a TTY then TERMINAL without /more option
otherwise standard (Unit=-1) output
textout=3 dbprint.prt (file)
textout=4 laser.tmp
textout=5 user must open file
textout=7 same as 3 but text is appended to <program>.prt
textout = filename (default extension of .prt)
/NOHEADER - If this keyword is set, then the column headers will not
be printed
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBRD [1], DBRD [2], DBRD [3], DBTITLE [1]
DBTITLE [2], DBTITLE [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], FIND_WITH_DEF [1], FIND_WITH_DEF [2]
FIND_WITH_DEF [3], TEXTCLOSE [1], TEXTCLOSE [2], TEXTCLOSE [3], TEXTOPEN [1]
TEXTOPEN [2], TEXTOPEN [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3], IMDBASE
EXAMPLE:
The following example shows how a multiple valued item DATAMAX can be
printed as separate columns. In the WFPC2 target database, DATAMAX
is an item with 4 values, one for each of the 4 chips
IDL> dbopen,'wflog'
IDL> dbprint,list,'entry,datamax(0),datamax(1),datamax(2),datamax(3)'
SYSTEM VARIABLES:
Output device controlled by non-standard system varaible !TEXTOUT, if
TEXTOUT keyword is not used.
NOTES:
Users may want to adjust the default lines_per_page value given at
the beginning of the program for their own particular printer.
PROCEDURE CALLS:
db_info(), db_item_info(), dbtitle(), dbxval(), textopen, textclose
zparcheck
HISTORY:
version 2 D. Lindler Nov. 1987 (new db format)
Test if user pressed 'Q' in response to /MORE W. Landsman Sep 1991
Apply STRTRIM to free form (table) output W. Landsman Dec 1992
Test for string value of TEXTOUT W. Landsman Feb 1994
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
W. Landsman, GSFC, July, 1997, Use CATCH to catch errors
Removed STRTRIM in table format output to handle byte values April 1999
Fixed occasional problem when /NOHEADER is supplied Sep. 1999
Only byteswap when necessary for improved performance Feb. 2000
Change loop index for table listing to type LONG W. Landsman Aug 2000
Entry vector can be any integer type W. Landsman Aug. 2001
Replace DATATYPE() with size(/TNAME) W. Landsman Nov. 2001
No page eject for TEXTOUT =5 W. Landsman Nov. 2001
No initial page eject W. Landsman Jan. 2002
Added AdjustFormat keyword W. Landsman Sep. 2002
Assume since V5.3 (STRJOIN) W. Landsman Feb. 2004
Fix display on GUI terminals W. Landsman March 2006
Remove VMS statements W. Landsman Sep 2006
Remove EXECUTE statement W. Landsman Jan 2007
[Previous]
[Next]
NAME:
DBPRINT
PURPOSE:
Procedure to print specified items from a list of database entries
CALLING SEQUENCE:
dbprint, list, [items, FORMS= , TEXTOUT= , /AdjustFormat, /NoHeader]
INPUTS:
list - list of entry numbers to be printed, vector or scalar
if list = -1, then all entries will be printed.
An error message is returned if any entry number is larger
than the number of entries in the database
OPTIONAL INPUT-OUTPUT:
items - items to be printed, specified in any of the following ways:
form 1 scalar string giving item(s) as list of names
separated by commas
form 2 string array giving list of item names
form 3 string of form '$filename' giving name
of text file containing items (one item per
line)
form 4 integer scalar giving single item number or
integer vector list of item numbers
form 5 Null string specifying interactive selection. This
is the default if 'items' is not supplied
form 6 '*' select all items, printout will be in
table format.
If items was undefined or a null string on input, then
on output it will contain the items interactively selected.
OPTIONAL INPUT KEYWORDS:
/ADJUSTFORMAT - If set, then the format length for string items will
be adjusted to the maximum length for the entries to be printed.
This option will slow down DBPRINT because it requires the
string items be extracted and their maximum length determined
prior to any printing. However, it enables the display of
string items without any truncation or wasted space.
FORMS - The number of printed lines per page. If forms is not
present, output assumed to be in PORTRAIT form, and
a heading and 47 lines are printed on each page, with
a page eject between each page. For LANDSCAPE form with
headings on each page, and a page eject between pages, set
forms = 34. For a heading only on the first page, and no
page eject, set forms = 0. This is the default for output
to the terminal.
TEXTOUT - Integer (0-7) or string used to determine output device (see
TEXTOPEN for more info). If not present, the !TEXTOUT system
variable is used.
textout=0 Nowhere
textout=1 if a TTY then TERMINAL using /more option
otherwise standard (Unit=-1) output
textout=2 if a TTY then TERMINAL without /more option
otherwise standard (Unit=-1) output
textout=3 dbprint.prt (file)
textout=4 laser.tmp
textout=5 user must open file
textout=7 same as 3 but text is appended to <program>.prt
textout = filename (default extension of .prt)
/NOHEADER - If this keyword is set, then the column headers will not
be printed
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBRD [1], DBRD [2], DBRD [3], DBTITLE [1]
DBTITLE [2], DBTITLE [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], FIND_WITH_DEF [1], FIND_WITH_DEF [2]
FIND_WITH_DEF [3], TEXTCLOSE [1], TEXTCLOSE [2], TEXTCLOSE [3], TEXTOPEN [1]
TEXTOPEN [2], TEXTOPEN [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3], IMDBASE
EXAMPLE:
The following example shows how a multiple valued item DATAMAX can be
printed as separate columns. In the WFPC2 target database, DATAMAX
is an item with 4 values, one for each of the 4 chips
IDL> dbopen,'wflog'
IDL> dbprint,list,'entry,datamax(0),datamax(1),datamax(2),datamax(3)'
SYSTEM VARIABLES:
Output device controlled by non-standard system varaible !TEXTOUT, if
TEXTOUT keyword is not used.
NOTES:
Users may want to adjust the default lines_per_page value given at
the beginning of the program for their own particular printer.
PROCEDURE CALLS:
db_info(), db_item_info(), dbtitle(), dbxval(), textopen, textclose
zparcheck
HISTORY:
version 2 D. Lindler Nov. 1987 (new db format)
Test if user pressed 'Q' in response to /MORE W. Landsman Sep 1991
Apply STRTRIM to free form (table) output W. Landsman Dec 1992
Test for string value of TEXTOUT W. Landsman Feb 1994
William Thompson, GSFC, 3 November 1994
Modified to allow ZDBASE to be a path string.
W. Landsman, GSFC, July, 1997, Use CATCH to catch errors
Removed STRTRIM in table format output to handle byte values April 1999
Fixed occasional problem when /NOHEADER is supplied Sep. 1999
Only byteswap when necessary for improved performance Feb. 2000
Change loop index for table listing to type LONG W. Landsman Aug 2000
Entry vector can be any integer type W. Landsman Aug. 2001
Replace DATATYPE() with size(/TNAME) W. Landsman Nov. 2001
No page eject for TEXTOUT =5 W. Landsman Nov. 2001
No initial page eject W. Landsman Jan. 2002
Added AdjustFormat keyword W. Landsman Sep. 2002
Assume since V5.3 (STRJOIN) W. Landsman Feb. 2004
Fix display on GUI terminals W. Landsman March 2006
Remove VMS statements W. Landsman Sep 2006
Remove EXECUTE statement W. Landsman Jan 2007
[Previous]
[Next]
NAME:
DBPUT
PURPOSE:
Procedure to place a new value for a specified item into
a data base file entry.
CALLING SEQUENCE:
dbput, item, val, entry
INPUTS:
item - item name or number
val - item value(s)
INPUT/OUTPUT:
entry - entry (byte array) or scalar entry number.
if entry is a scalar entry number then the data
base file will be updated. Otherwise the change
will be only made to the entry array which must
be written latter using DBWRT.
OPERATIONAL NOTES:
If entry is a scalar entry number or the input file name
is supplied, the entry in the data base will be updated
instead of a supplied entry variable. In this case, !priv
must be greater than 1.
CALLS: ***
DBRD [1], DBRD [2], DBRD [3], DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2]
DBXPUT [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
CALLED BY:
DBDELETE [1], DBDELETE [2], DBDELETE [3], db_save_linelist_entry_update [1]
db_save_linelist_entry_update [2], db_save_raster_entry_update [1]
db_save_raster_entry_update [2], db_save_study_entry_update [1]
db_save_study_entry_update [2], eis_delete_timeline_entry [1]
eis_delete_timeline_entry [2], eis_update_timeline_entry [1]
eis_update_timeline_entry [2], eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
EXAMPLE:
IDL> dbput,'WAVELEN',1215.6,entry
PROCEDURES USED:
DB_ITEM, DBRD, DBXPUT, DBWRT
HISTORY:
version 2 D. Lindler Feb 1988 (new db formats)
modified to convert blanks into zeros correctly D. Neill Jan 1991
Converted to IDL V5.0 W. Landsman September 1997
V5.2 version support unsigned, 64bit integers W. Landsman Sep. 2001
[Previous]
[Next]
NAME:
DBPUT
PURPOSE:
Procedure to place a new value for a specified item into
a data base file entry.
CALLING SEQUENCE:
dbput, item, val, entry
INPUTS:
item - item name or number
val - item value(s)
INPUT/OUTPUT:
entry - entry (byte array) or scalar entry number.
if entry is a scalar entry number then the data
base file will be updated. Otherwise the change
will be only made to the entry array which must
be written latter using DBWRT.
OPERATIONAL NOTES:
If entry is a scalar entry number or the input file name
is supplied, the entry in the data base will be updated
instead of a supplied entry variable. In this case, !priv
must be greater than 1.
CALLS: ***
DBRD [1], DBRD [2], DBRD [3], DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2]
DBXPUT [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
CALLED BY:
DBDELETE [1], DBDELETE [2], DBDELETE [3], db_save_linelist_entry_update [1]
db_save_linelist_entry_update [2], db_save_raster_entry_update [1]
db_save_raster_entry_update [2], db_save_study_entry_update [1]
db_save_study_entry_update [2], eis_delete_timeline_entry [1]
eis_delete_timeline_entry [2], eis_update_timeline_entry [1]
eis_update_timeline_entry [2], eis_update_timeline_science_entry [1]
eis_update_timeline_science_entry [2]
EXAMPLE:
IDL> dbput,'WAVELEN',1215.6,entry
PROCEDURES USED:
DB_ITEM, DBRD, DBXPUT, DBWRT
HISTORY:
version 2 D. Lindler Feb 1988 (new db formats)
modified to convert blanks into zeros correctly D. Neill Jan 1991
Converted to IDL V5.0 W. Landsman September 1997
V5.2 version support unsigned, 64bit integers W. Landsman Sep. 2001
[Previous]
[Next]
NAME:
DBRD
PURPOSE:
procedure to read an entry from a data base file or from
linked multiple databases.
CALLING SEQUENCE:
dbrd, enum, entry, [available, dbno, /NoConvert]
INPUTS:
enum - entry number to read, integer scalar
OUTPUT:
entry - byte array containing the entry
OPTIONAL OUTPUT:
available - byte array with length equal to number of data
bases opened. available(i) eq 1 if an entry (pointed
to) is available. It always equals 1 for the first
data base, otherwise it is an error condition.
OPTIONAL INPUT:
dbno - specification of the data base number to return. If
supplied, only the record for the requested data base
number is returned in entry. Normally this input should
not be supplied. dbno is numbered for 0 to n-1 and gives
the number of the data base opened. The data bases are
numbered in the order supplied to dbopen. If dbno is supplied
then the entry number refers to that data base and not the
primary or first data base. If set to -1, then it means all
data bases opened (same as not supplying it)
OPTIONAL INPUT KEYWORD:
noconvert - if set then don't convert external to host format.
Assumes that calling program will take care of this
requirement.
OPERATIONAL NOTES:
If multiple data base files are opened, the records are
concatenated with each other
HISTORY
version 2 D. Lindler Nov. 1987
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
Version 3, Richard Schwartz, GSFC/SDAC, 23-Aug-1996
Add noconvert keyword
Converted to IDL V5.0 W. Landsman September 1997
Version 4, 2 May 2003, W. Thompson
Use BSWAP keyword to DBXVAL instead of calling IEEE_TO_HOST.
CALLS:
CALLED BY
DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBEXT [2], DBEXT_DBF [1], DBEXT_DBF [2]
DBEXT_DBF [3], DBFIND [1], DBFIND [2], DBFIND [3], DBPRINT [1], DBPRINT [2]
DBPRINT [3], DBPUT [1], DBPUT [2], DBPUT [3], DBUPDATE [1], DBUPDATE [2]
DBUPDATE [3], DBUPDATE [4], DBVAL [1], DBVAL [2], DBVAL [3]
eis_get_as_string_arry [1], eis_get_as_string_arry [2]
[Previous]
[Next]
NAME:
DBRD
PURPOSE:
procedure to read an entry from a data base file or from
linked multiple databases.
CALLING SEQUENCE:
dbrd, enum, entry, [available, dbno, /NoConvert]
INPUTS:
enum - entry number to read, integer scalar
OUTPUT:
entry - byte array containing the entry
OPTIONAL OUTPUT:
available - byte array with length equal to number of data
bases opened. available(i) eq 1 if an entry (pointed
to) is available. It always equals 1 for the first
data base, otherwise it is an error condition.
OPTIONAL INPUT:
dbno - specification of the data base number to return. If
supplied, only the record for the requested data base
number is returned in entry. Normally this input should
not be supplied. dbno is numbered for 0 to n-1 and gives
the number of the data base opened. The data bases are
numbered in the order supplied to dbopen. If dbno is supplied
then the entry number refers to that data base and not the
primary or first data base. If set to -1, then it means all
data bases opened (same as not supplying it)
OPTIONAL INPUT KEYWORD:
noconvert - if set then don't convert external to host format.
Assumes that calling program will take care of this
requirement.
OPERATIONAL NOTES:
If multiple data base files are opened, the records are
concatenated with each other
HISTORY
version 2 D. Lindler Nov. 1987
William Thompson, GSFC/CDS (ARC), 1 June 1994
Added support for external (IEEE) representation.
Version 3, Richard Schwartz, GSFC/SDAC, 23-Aug-1996
Add noconvert keyword
Converted to IDL V5.0 W. Landsman September 1997
Version 4, 2 May 2003, W. Thompson
Use BSWAP keyword to DBXVAL instead of calling IEEE_TO_HOST.
CALLS:
CALLED BY
DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBEXT [2], DBEXT_DBF [1], DBEXT_DBF [2]
DBEXT_DBF [3], DBFIND [1], DBFIND [2], DBFIND [3], DBPRINT [1], DBPRINT [2]
DBPRINT [3], DBPUT [1], DBPUT [2], DBPUT [3], DBUPDATE [1], DBUPDATE [2]
DBUPDATE [3], DBUPDATE [4], DBVAL [1], DBVAL [2], DBVAL [3]
eis_get_as_string_arry [1], eis_get_as_string_arry [2]
[Previous]
[Next]
Project : SOHO - CDS
Name : DBREPAIR
Purpose : Repairs problem with IEEE format databases.
Category : Utilities, database
Explanation : Version 1 of DB_ENT2EXT contained a bug where only the first
element in an array was converted from IEEE to host format.
DB_ENT2EXT contained the same bug, so that the problem only
manifested itself when one tried to read data on one machine
that was written on another one with a different native format.
This procedure reads in a database which had been written
incorrectly, and repairs it. The following conditions must be
met for a database file to require repair:
1. The database must have been created with the /EXTERNAL
switch set in the call to DBCREATE.
2. The database must have been written on a machine who's
native format is either not IEEE or uses a different byte
order. For example, the native format on Sun workstations
is the same as the external format, so databases created on
Sun's are okay. However, DEC Alpha/OSF workstations use
IEEE format, but the bytes are reversed, so data files
written on Alphas need to be repaired.
3. At least one of the items in the database must be an array.
The problem only manifests itself with arrays. For
example, a line in the .dbd file like
WIN_DEF(4) I*2 Window definition
is an array, because of the (4). Byte and string arrays
are not affected, and do not exhibit this problem.
Syntax : DBREPAIR, DBNAME
Examples : !PRIV = 4
DBREPAIR, 'datawin2'
Inputs : DBNAME = Name of the data base file to repair.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3]
DB_ENT2HOST [1], DB_ENT2HOST [2], DB_ENT2HOST [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3]
Common : DB_COM
Restrictions: This routine must only be applied to databases requiring
repair. Using it on a correctly formatted database will damage
it. To work properly, this routine must be used on the same
kind of computer that was used to originally write the data.
Because of the dangers of corrupting a database, it is strongly
suggested that this routine be run against a copy of the
database, rather than the original. Change to the directory
containing the copy, and run IDL from there.
!PRIV must be 4 or greater to repair a file.
Side effects: None.
Prev. Hist. : None.
History : Version 1, 15-Sep-1995, William Thompson, GSFC
Contact : WTHOMPSON
[Previous]
[Next]
NAME:
DBSEARCH
PURPOSE:
Subroutine of DBFIND() to search a vector for specified values
CALLING SEQUENCE:
dbsearch, type, svals, values, good, [ /FULLSTRING, COUNT = ]
INPUT:
type - type of search (output from dbfparse)
svals - search values (output from dbfparse)
values - array of values to search
OUTPUT:
good - indices of good values
OPTIONAL INPUT KEYWORD:
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
OPTIONAL OUTPUT KEYWORD:
COUNT - Integer scalar giving the number of valid matches
CALLED BY:
DBFIND [1], DBFIND [2], DBFIND [3], DBFIND_SORT [1], DBFIND_SORT [2]
DBFIND_SORT [3], DBGET [1], DBGET [2], DBGET [3]
SIDE EFFECTS:
The obsolete system variable !ERR is set to number of good values
REVISION HISTORY:
D. Lindler July,1987
Converted to IDL V5.0 W. Landsman September 1997
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
[Previous]
[Next]
NAME:
DBSEARCH
PURPOSE:
Subroutine of DBFIND() to search a vector for specified values
CALLING SEQUENCE:
dbsearch, type, svals, values, good, [ /FULLSTRING, COUNT = ]
INPUT:
type - type of search (output from dbfparse)
svals - search values (output from dbfparse)
values - array of values to search
OUTPUT:
good - indices of good values
OPTIONAL INPUT KEYWORD:
/FULLSTRING - By default, one has a match if a search string is
included in any part of a database value (substring match).
But if /FULLSTRING is set, then all characters in the database
value must match the search string (excluding leading and
trailing blanks). Both types of string searches are case
insensitive.
OPTIONAL OUTPUT KEYWORD:
COUNT - Integer scalar giving the number of valid matches
CALLED BY:
DBFIND [1], DBFIND [2], DBFIND [3], DBFIND_SORT [1], DBFIND_SORT [2]
DBFIND_SORT [3], DBGET [1], DBGET [2], DBGET [3]
SIDE EFFECTS:
The obsolete system variable !ERR is set to number of good values
REVISION HISTORY:
D. Lindler July,1987
Converted to IDL V5.0 W. Landsman September 1997
Added COUNT keyword, deprecate !ERR W. Landsman March 2000
[Previous]
[Next]
NAME:
DBSORT
PURPOSE:
Routine to sort list of entries in data base
CALLING SEQUENCE:
result = dbsort( list, items , [ REVERSE = ])
INPUTS:
list - list of entry numbers to sort
-1 to sort all entries
items - list of items to sort (up to 9 items)
OUTPUT:
result - numeric vector giving input list sorted by items
CALLS: ***
BSORT [1], BSORT [2], BSORT [3], BSORT [4], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
GET_CAMPAIGN, GET_CDS_PNTCAL, GET_EFFICIENCY, GET_EFF_AREA, GET_MIRSHIFT
GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, LIST_ALT, LIST_ANOMALY, LIST_CAMPAIGN
LIST_CDROM, LIST_COM_TIMES, LIST_DETAIL, LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER
LIST_FLAG, LIST_INST_DLYD, LIST_MAIN, LIST_MDI_M, LIST_NRT_RES, LIST_OTHER_OBS
LIST_OTHER_RES, LIST_PLAN, LIST_SOHO_DET, MOD_CAMPAIGN, PURGE_CDHSSTATE
OPTIONAL KEYWORD INPUT:
REVERSE - scalar or vector with the same number of elements as the
the number of items to sort. If the corresponding element of REVERSE
is non-zero then that item is sorted in descending rather than
ascending order.
EXAMPLE:
Sort an astronomical catalog with RA as primary sort, and declination
as secondary sort (used when RA values are equal)
IDL> NEWLIST = DBSORT( -1, 'RA,DEC' )
If for some reason, one wanted the DEC sorted in descending order, but
the RA in ascending order
IDL> NEWLIST = DBSORT( -1, 'RA,DEC', REV = [ 0, 1 ] )
METHOD:
The list is sorted such that each item is sorted into
asscending order starting with the last item.
COMMON BLOCKS:
DBCOM
PROCEDURES USED:
ZPARCHECK, BSORT, DBEXT, DB_ITEM
HISTORY
VERSION 1 D. Lindler Oct. 86
Added REVERSE keyword W. Landsman August, 1991
Avoid use of EXECUTE() for V6.1 or later W. Landsman Dec 2006
[Previous]
[Next]
NAME:
DBSORT
PURPOSE:
Routine to sort list of entries in data base
CALLING SEQUENCE:
result = dbsort( list, items , [ REVERSE = ])
INPUTS:
list - list of entry numbers to sort
-1 to sort all entries
items - list of items to sort (up to 9 items)
OUTPUT:
result - numeric vector giving input list sorted by items
CALLS: ***
BSORT [1], BSORT [2], BSORT [3], BSORT [4], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
GET_CAMPAIGN, GET_CDS_PNTCAL, GET_EFFICIENCY, GET_EFF_AREA, GET_MIRSHIFT
GET_TILTCAL, GET_WAVECAL, GET_WAVE_EFF, LIST_ALT, LIST_ANOMALY, LIST_CAMPAIGN
LIST_CDROM, LIST_COM_TIMES, LIST_DETAIL, LIST_DLYD_TIMES, LIST_DSN, LIST_EXPER
LIST_FLAG, LIST_INST_DLYD, LIST_MAIN, LIST_MDI_M, LIST_NRT_RES, LIST_OTHER_OBS
LIST_OTHER_RES, LIST_PLAN, LIST_SOHO_DET, MOD_CAMPAIGN, PURGE_CDHSSTATE
OPTIONAL KEYWORD INPUT:
REVERSE - scalar or vector with the same number of elements as the
the number of items to sort. If the corresponding element of REVERSE
is non-zero then that item is sorted in descending rather than
ascending order.
EXAMPLE:
Sort an astronomical catalog with RA as primary sort, and declination
as secondary sort (used when RA values are equal)
IDL> NEWLIST = DBSORT( -1, 'RA,DEC' )
If for some reason, one wanted the DEC sorted in descending order, but
the RA in ascending order
IDL> NEWLIST = DBSORT( -1, 'RA,DEC', REV = [ 0, 1 ] )
METHOD:
The list is sorted such that each item is sorted into
asscending order starting with the last item.
COMMON BLOCKS:
DBCOM
PROCEDURES USED:
ZPARCHECK, BSORT, DBEXT, DB_ITEM
HISTORY
VERSION 1 D. Lindler Oct. 86
Added REVERSE keyword W. Landsman August, 1991
Avoid use of EXECUTE() for V6.1 or later W. Landsman Dec 2006
[Previous]
[Next]
NAME:
DBTARGET
PURPOSE:
Find sources in a database within specified radius of specified target
EXPLANATION:
Uses QuerySimbad to translate target name to RA and Dec, and then uses
DBCIRCLE() to find any entries within specified radius. Database must
include items named 'RA' (in hours) and 'DEC' (in degrees) and must
have previously been opened with DBOPEN
Requires IDL V5.4 or later, Unix and Windows only
CALLING SEQUENCE:
list = DBTARGET(target, [radius, sublist, /SILENT, DIS= ,/TO_B1950 ] )
INPUTS:
TARGET - A scalar string giving an astronomical target name, which
will be translated into J2000 celestial coordinates by QuerySimbad
OPTIONAL INPUT:
RADIUS - Radius of the search field in arc minutes, scalar.
Default is 5 arc minutes
SUBLIST - Vector giving entry numbers in currently opened database
to be searched. Default is to search all entries
OUTPUTS:
LIST - Vector giving entry numbers in the currently opened catalog
which have positions within the specified search circle
LIST is set to -1 if no sources fall within the search circle
!ERR is set to the number sources found.
OPTIONAL OUTPUT
DIS - The distance in arcminutes of each entry specified by LIST
to the search center specified by the target.
CALLS: ***
DBCIRCLE [1], DBCIRCLE [2], QUERYSIMBAD
OPTIONAL KEYWORD INPUT:
/SILENT - If this keyword is set, then DBTARGET will not print the
number of entries found at the terminal
/TO_B1950 - If this keyword is set, then the SIMBAD J2000 coordinates
are converted to B1950 before searching the database
NOTE: The user must determine on his own whether the database
is in B1950 or J2000 coordinates.
EXAMPLE:
(1) Use the HST_CATALOG database to find all HST observations within
5' (the default) of M33
IDL> dbopen,'hst_catalog'
IDL> list = dbtarget('M33')
(2) As above but restrict targets within 2' of the nucleus using the
WFPC2 camara
IDL> dbopen,'hst_catalog'
IDL> sublist = dbfind('config=WFPC2')
IDL> list = dbtarget('M33',2,sublist)
PROCEDURE CALLS:
QuerySimbad, DBCIRCLE()
REVISION HISTORY:
Written W. Landsman SSAI September 2002
[Previous]
[Next]
NAME:
DBTARGET
PURPOSE:
Find sources in a database within specified radius of specified target
EXPLANATION:
Uses QuerySimbad to translate target name to RA and Dec, and then uses
DBCIRCLE() to find any entries within specified radius. Database must
include items named 'RA' (in hours) and 'DEC' (in degrees) and must
have previously been opened with DBOPEN
Requires IDL V5.4 or later, Unix and Windows only
CALLING SEQUENCE:
list = DBTARGET(target, [radius, sublist, /SILENT, DIS= ,/TO_B1950 ] )
INPUTS:
TARGET - A scalar string giving an astronomical target name, which
will be translated into J2000 celestial coordinates by QuerySimbad
OPTIONAL INPUT:
RADIUS - Radius of the search field in arc minutes, scalar.
Default is 5 arc minutes
SUBLIST - Vector giving entry numbers in currently opened database
to be searched. Default is to search all entries
OUTPUTS:
LIST - Vector giving entry numbers in the currently opened catalog
which have positions within the specified search circle
LIST is set to -1 if no sources fall within the search circle
!ERR is set to the number sources found.
OPTIONAL OUTPUT
DIS - The distance in arcminutes of each entry specified by LIST
to the search center specified by the target.
CALLS: ***
DBCIRCLE [1], DBCIRCLE [2], QUERYSIMBAD
OPTIONAL KEYWORD INPUT:
/SILENT - If this keyword is set, then DBTARGET will not print the
number of entries found at the terminal
/TO_B1950 - If this keyword is set, then the SIMBAD J2000 coordinates
are converted to B1950 before searching the database
NOTE: The user must determine on his own whether the database
is in B1950 or J2000 coordinates.
EXAMPLE:
(1) Use the HST_CATALOG database to find all HST observations within
5' (the default) of M33
IDL> dbopen,'hst_catalog'
IDL> list = dbtarget('M33')
(2) As above but restrict targets within 2' of the nucleus using the
WFPC2 camara
IDL> dbopen,'hst_catalog'
IDL> sublist = dbfind('config=WFPC2')
IDL> list = dbtarget('M33',2,sublist)
PROCEDURE CALLS:
QuerySimbad, DBCIRCLE()
REVISION HISTORY:
Written W. Landsman SSAI September 2002
[Previous]
[Next]
NAME:
DBTITLE
PURPOSE:
function to create title line for routine dbprint
CALLING SEQUENCE:
result = dbtitle( c, f )
INPUTS:
c = string array of titles for each item
f = field length of each item
OUTPUT:
header string returned as function value
OPERATIONAL NOTES:
this is a subroutine of DBPRINT.
CALLED BY:
DBPRINT [1], DBPRINT [2], DBPRINT [3]
HISTORY:
version 1 D. Lindler Sept 86
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBTITLE
PURPOSE:
function to create title line for routine dbprint
CALLING SEQUENCE:
result = dbtitle( c, f )
INPUTS:
c = string array of titles for each item
f = field length of each item
OUTPUT:
header string returned as function value
OPERATIONAL NOTES:
this is a subroutine of DBPRINT.
CALLED BY:
DBPRINT [1], DBPRINT [2], DBPRINT [3]
HISTORY:
version 1 D. Lindler Sept 86
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBUPDATE
PURPOSE:
Update columns of data in a database -- inverse of DBEXT
EXPLANATION:
Database must be open for update before calling DBUPDATE
CALLING SEQUENCE:
dbupdate, list, items, v1, [ v2, v3, v4......v14 ]
INPUTS:
list - entries in database to be updated, scalar or vector
If list=-1 then all entries will be updated
items -standard list of items that will be updated.
v1,v2....v14 - vectors containing values for specified items. The
number of vectors supplied must equal the number of items
specified. The number of elements in each vector should be
the same.
CALLS: ***
DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBEXT_DBF [1], DBEXT_DBF [2]
DBEXT_DBF [3], DBFIX, DBINDEX [1], DBINDEX [2], DBINDEX [3], DBRD [1], DBRD [2]
DBRD [3], DBWRT [1], DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3]
DB_ITEM_INFO [1], DB_ITEM_INFO [2], DB_ITEM_INFO [3], DPRINT, IS_IEEE_BIG [1]
IS_IEEE_BIG [2], TRIM, ZPARCHECK [1], ZPARCHECK [2], ZPARCHECK [3]
CALLED BY:
ADD_ANOMALY, DBEXT [2], DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN
DEL_SOHO_DET, MOD_CAMPAIGN, MOD_DETAIL, MOD_EXPER, MOD_GSET, MOD_LINELIST, MOD_MAIN
MOD_V_RASTER, MOD_V_STUDY, SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET
EXAMPLES:
A database STAR contains RA and DEC in radians, convert to degrees
IDL> !PRIV=2 & dbopen,'STAR',1 ;Open database for update
IDL> dbext,-1,'RA,DEC',ra,dec ;Extract RA and DEC, all entries
IDL> ra = ra*!RADEG & dec=dec*!RADEG ;Convert to degrees
IDL> dbupdate,-1,'RA,DEC',ra,dec ;Update database with new values
NOTES:
It is quicker to update several items simultaneously rather than use
repeated calls to DBUPDATE.
It is possible to update multiple valued items. In this case, the
input vector should be of dimension (NVAL,NLIST) where NVAL is the
number of values per item, and NLIST is the number of entries to be
updated. This vector will be temporarily transposed by DBUPDATE but
will be restored before DBUPDATE exits.
REVISION HISTORY
Written W. Landsman STX March, 1989
Work for multiple valued items May, 1991
String arrays no longer need to be fixed length December 1992
Transpose multiple array items back on output December 1993
Added check for corrupted database entries, Zarro, GSFC, 9 September 1996
Faster update of external databases on big endian machines November 1997
[Previous]
[Next]
NAME:
DBUPDATE
PURPOSE:
Update columns of data in a database -- inverse of DBEXT
EXPLANATION:
Database must be open for update before calling DBUPDATE
CALLING SEQUENCE:
dbupdate, list, items, v1, [ v2, v3, v4......v14 ]
INPUTS:
list - entries in database to be updated, scalar or vector
If list=-1 then all entries will be updated
items -standard list of items that will be updated.
v1,v2....v14 - vectors containing values for specified items. The
number of vectors supplied must equal the number of items
specified. The number of elements in each vector should be
the same.
CALLS: ***
DBINDEX [1], DBINDEX [2], DBINDEX [3], DBRD [1], DBRD [2], DBRD [3], DBWRT [1]
DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], S
CALLED BY:
ADD_ANOMALY, DBEXT [2], DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN
DEL_SOHO_DET, MOD_CAMPAIGN, MOD_DETAIL, MOD_EXPER, MOD_GSET, MOD_LINELIST, MOD_MAIN
MOD_V_RASTER, MOD_V_STUDY, SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET
OPTIONAL KEYWORD INPUT:
/NOINDEX - If set, then DBUPDATE will not update the index file. This
keyword is useful to save if additional updates will occur,
and the index file need only be updated on the last call.
EXAMPLES:
A database STAR contains RA and DEC in radians, convert to degrees
IDL> !PRIV=2 & dbopen,'STAR',1 ;Open database for update
IDL> dbext,-1,'RA,DEC',ra,dec ;Extract RA and DEC, all entries
IDL> ra = ra*!RADEG & dec=dec*!RADEG ;Convert to degrees
IDL> dbupdate,-1,'RA,DEC',ra,dec ;Update database with new values
NOTES:
It is quicker to update several items simultaneously rather than use
repeated calls to DBUPDATE.
It is possible to update multiple valued items. In this case, the
input vector should be of dimension (NVAL,NLIST) where NVAL is the
number of values per item, and NLIST is the number of entries to be
updated. This vector will be temporarily transposed by DBUPDATE but
will be restored before DBUPDATE exits.
REVISION HISTORY
Written W. Landsman STX March, 1989
Work for multiple valued items May, 1991
String arrays no longer need to be fixed length December 1992
Transpose multiple array items back on output December 1993
Faster update of external databases on big endian machines November 1997
Converted to IDL V5.0 W. Landsman 24-Nov-1997
Added /NOINDEX keyword W. Landsman July 2001
[Previous]
[Next]
NAME:
DBUPDATE
PURPOSE:
Update columns of data in a database -- inverse of DBEXT
EXPLANATION:
Database must be open for update before calling DBUPDATE
CALLING SEQUENCE:
dbupdate, list, items, v1, [ v2, v3, v4......v14 ]
INPUTS:
list - entries in database to be updated, scalar or vector
If list=-1 then all entries will be updated
items -standard list of items that will be updated.
v1,v2....v14 - vectors containing values for specified items. The
number of vectors supplied must equal the number of items
specified. The number of elements in each vector should be
the same.
CALLS: ***
DBINDEX [1], DBINDEX [2], DBINDEX [3], DBRD [1], DBRD [2], DBRD [3], DBWRT [1]
DBWRT [2], DBWRT [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], S
CALLED BY:
ADD_ANOMALY, DBEXT [2], DEL_ALT, DEL_ANOMALY, DEL_DETAIL, DEL_FLAG, DEL_PLAN
DEL_SOHO_DET, MOD_CAMPAIGN, MOD_DETAIL, MOD_EXPER, MOD_GSET, MOD_LINELIST, MOD_MAIN
MOD_V_RASTER, MOD_V_STUDY, SET_KAP_VERS, TP_DISP_RAST, UPD_PLAN, UPD_SOHO_DET
OPTIONAL KEYWORD INPUT:
/NOINDEX - If set, then DBUPDATE will not update the index file. This
keyword is useful to save if additional updates will occur,
and the index file need only be updated on the last call.
EXAMPLES:
A database STAR contains RA and DEC in radians, convert to degrees
IDL> !PRIV=2 & dbopen,'STAR',1 ;Open database for update
IDL> dbext,-1,'RA,DEC',ra,dec ;Extract RA and DEC, all entries
IDL> ra = ra*!RADEG & dec=dec*!RADEG ;Convert to degrees
IDL> dbupdate,-1,'RA,DEC',ra,dec ;Update database with new values
NOTES:
It is quicker to update several items simultaneously rather than use
repeated calls to DBUPDATE.
It is possible to update multiple valued items. In this case, the
input vector should be of dimension (NVAL,NLIST) where NVAL is the
number of values per item, and NLIST is the number of entries to be
updated. This vector will be temporarily transposed by DBUPDATE but
will be restored before DBUPDATE exits.
REVISION HISTORY
Written W. Landsman STX March, 1989
Work for multiple valued items May, 1991
String arrays no longer need to be fixed length December 1992
Transpose multiple array items back on output December 1993
Faster update of external databases on big endian machines November 1997
Converted to IDL V5.0 W. Landsman 24-Nov-1997
Added /NOINDEX keyword W. Landsman July 2001
[Previous]
[Next]
NAME:
DBVAL
PURPOSE:
procedure to extract value(s) of the specified item from
a data base file entry.
CALLING SEQUENCE:
result = dbval( entry, item )
INPUTS:
entry - byte array containing the entry, or a scalar entry number
item - name (string) or number (integer) of the item
OUTPUT:
the value(s) will be returned as the function value
CALLS: ***
DBRD [1], DBRD [2], DBRD [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_ITEM [1]
DB_ITEM [2], DB_ITEM [3]
CALLED BY:
db_read_linelist_all [1], db_read_linelist_all [2]
db_read_linelist_entry [1], db_read_linelist_entry [2]
db_read_raster_all [1], db_read_raster_all [2], db_read_raster_entry [1]
db_read_raster_entry [2], db_read_study_all [1], db_read_study_all [2]
eis_get_esdb_details [1], eis_get_esdb_details [2]
eis_get_science_details [1], eis_get_science_details [2]
eis_get_science_details [3], eis_get_science_details [4]
eis_get_technical_study_rasters [1], eis_get_technical_study_rasters [2]
EXAMPLE:
Extract a flux vector from entry 28 of the database FARUV
==> flux = dbval(28,'FLUX')
HISTORY:
version 2 D. Lindler Nov, 1987 (new db format)
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBVAL
PURPOSE:
procedure to extract value(s) of the specified item from
a data base file entry.
CALLING SEQUENCE:
result = dbval( entry, item )
INPUTS:
entry - byte array containing the entry, or a scalar entry number
item - name (string) or number (integer) of the item
OUTPUT:
the value(s) will be returned as the function value
CALLS: ***
DBRD [1], DBRD [2], DBRD [3], DBXVAL [1], DBXVAL [2], DBXVAL [3], DB_ITEM [1]
DB_ITEM [2], DB_ITEM [3]
CALLED BY:
db_read_linelist_all [1], db_read_linelist_all [2]
db_read_linelist_entry [1], db_read_linelist_entry [2]
db_read_raster_all [1], db_read_raster_all [2], db_read_raster_entry [1]
db_read_raster_entry [2], db_read_study_all [1], db_read_study_all [2]
eis_get_esdb_details [1], eis_get_esdb_details [2]
eis_get_science_details [1], eis_get_science_details [2]
eis_get_science_details [3], eis_get_science_details [4]
eis_get_technical_study_rasters [1], eis_get_technical_study_rasters [2]
EXAMPLE:
Extract a flux vector from entry 28 of the database FARUV
==> flux = dbval(28,'FLUX')
HISTORY:
version 2 D. Lindler Nov, 1987 (new db format)
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBWRT
PURPOSE:
procedure to update or add a new entry to a data base
CALLING SEQUENCE:
dbwrt, entry, [ index, append, /NoConvert ]
INPUTS:
entry - entry record to be updated or added if first
item (entry number=0)
OPTIONAL INPUTS:
index - optional integer flag, if set to non zero then index
file is updated. (default=0, do not update index file)
(Updating the index file is time-consuming, and should
normally be done after all changes have been made.
append - optional integer flag, if set to non-zero the record
is appended as a new entry, regardless of what the
entry number in the record is. The entry number will
be reset to the next entry number in the file.
OUTPUTS:
data base file is updated.
If index is non-zero then the index file is updated.
OPTIONAL INPUT KEYWORD:
NoConvert - If set then don't convert to host format with an external
database. Useful when the calling program decides that
conversion isn't needed (i.e. on a big-endian machine), or
takes care of the conversion itself.
OPERATIONAL NOTES:
!PRIV must be greater than 1 to execute
CALLS: ***
BSORT [1], BSORT [2], BSORT [3], BSORT [4], DBINDEX_BLK [1], DBINDEX_BLK [2]
DBINDEX_BLK [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2]
DBXVAL [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2]
HOST_TO_IEEE [3], HOST_TO_IEEE [4], IEEE_TO_HOST [1], IEEE_TO_HOST [2]
IEEE_TO_HOST [3], IEEE_TO_HOST [4]
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBEDIT [1], DBEDIT [2], DBEDIT [3]
DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBEXT [2], DBPUT [1]
DBPUT [2], DBPUT [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4]
HISTORY:
version 2 D. Lindler Feb. 1988 (new db format)
converted to IDL Version 2. M. Greason, STX, June 1990.
William Thompson, GSFC/CDS (ARC), 28 May 1994
Added support for external (IEEE) representation.
Converted to IDL V5.0 W. Landsman 24-Nov-1997
[Previous]
[Next]
NAME:
DBWRT
PURPOSE:
procedure to update or add a new entry to a data base
CALLING SEQUENCE:
dbwrt, entry, [ index, append, /NoConvert ]
INPUTS:
entry - entry record to be updated or added if first
item (entry number=0)
OPTIONAL INPUTS:
index - optional integer flag, if set to non zero then index
file is updated. (default=0, do not update index file)
(Updating the index file is time-consuming, and should
normally be done after all changes have been made.
append - optional integer flag, if set to non-zero the record
is appended as a new entry, regardless of what the
entry number in the record is. The entry number will
be reset to the next entry number in the file.
OUTPUTS:
data base file is updated.
If index is non-zero then the index file is updated.
OPTIONAL INPUT KEYWORD:
NoConvert - If set then don't convert to host format with an external
database. Useful when the calling program decides that
conversion isn't needed (i.e. on a big-endian machine), or
takes care of the conversion itself.
OPERATIONAL NOTES:
!PRIV must be greater than 1 to execute
CALLS: ***
BSORT [1], BSORT [2], BSORT [3], BSORT [4], DBINDEX_BLK [1], DBINDEX_BLK [2]
DBINDEX_BLK [3], DBXPUT [1], DBXPUT [2], DBXPUT [3], DBXVAL [1], DBXVAL [2]
DBXVAL [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3], DB_INFO [1]
DB_INFO [2], DB_INFO [3], DB_ITEM [1], DB_ITEM [2], DB_ITEM [3], DB_ITEM_INFO [1]
DB_ITEM_INFO [2], DB_ITEM_INFO [3], HOST_TO_IEEE [1], HOST_TO_IEEE [2]
HOST_TO_IEEE [3], HOST_TO_IEEE [4], IEEE_TO_HOST [1], IEEE_TO_HOST [2]
IEEE_TO_HOST [3], IEEE_TO_HOST [4]
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBEDIT [1], DBEDIT [2], DBEDIT [3]
DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBEXT [2], DBPUT [1]
DBPUT [2], DBPUT [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4]
HISTORY:
version 2 D. Lindler Feb. 1988 (new db format)
converted to IDL Version 2. M. Greason, STX, June 1990.
William Thompson, GSFC/CDS (ARC), 28 May 1994
Added support for external (IEEE) representation.
Converted to IDL V5.0 W. Landsman 24-Nov-1997
[Previous]
[Next]
NAME:
DBXPUT
PURPOSE:
routine to replace value of an item in a data base entry
CALLING SEQUENCE:
dbxput, val, entry, idltype, sbyte, nbytes
INPUT:
val - value(s) to be placed into entry, string values might be
truncated to fit number of allowed bytes in item
entry - entry or entries to be updated
idltype - idl data type for item (1-7)
sbyte - starting byte in record
nbytes - total number of bytes in value added
OUTPUT:
entry - (updated)
OPERATIONAL NOTES:
This routine assumes that the calling procedure or user knows what he
or she is doing. String items are truncated or padded to the fixed
size specified by the database but otherwise no validity checks are
made.
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBEDIT [1], DBEDIT [2], DBEDIT [3]
DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBEXT [2], DBPUT [1]
DBPUT [2], DBPUT [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4]
DBWRT [1], DBWRT [2], DBWRT [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3]
DB_ENT2HOST [1], DB_ENT2HOST [2], DB_ENT2HOST [3]
HISTORY:
version 1, D. Lindler Aug, 1986
converted to IDL Version 2. M. Greason, STX, June 1990.
Work with multiple element string items W. Landsman August 1995
Really work with multiple element string items
R. Bergman/W. Landsman July 1996
Work with multiple entries, R. Schwartz, GSFC/SDAC August 1996
Use /overwrite with REFORM() W. Landsman May 1997
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBXPUT
PURPOSE:
routine to replace value of an item in a data base entry
CALLING SEQUENCE:
dbxput, val, entry, idltype, sbyte, nbytes
INPUT:
val - value(s) to be placed into entry, string values might be
truncated to fit number of allowed bytes in item
entry - entry or entries to be updated
idltype - idl data type for item (1-7)
sbyte - starting byte in record
nbytes - total number of bytes in value added
OUTPUT:
entry - (updated)
OPERATIONAL NOTES:
This routine assumes that the calling procedure or user knows what he
or she is doing. String items are truncated or padded to the fixed
size specified by the database but otherwise no validity checks are
made.
CALLED BY:
DBBUILD [1], DBBUILD [2], DBBUILD [3], DBEDIT [1], DBEDIT [2], DBEDIT [3]
DBEDIT_BASIC [1], DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBEXT [2], DBPUT [1]
DBPUT [2], DBPUT [3], DBUPDATE [1], DBUPDATE [2], DBUPDATE [3], DBUPDATE [4]
DBWRT [1], DBWRT [2], DBWRT [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3]
DB_ENT2HOST [1], DB_ENT2HOST [2], DB_ENT2HOST [3]
HISTORY:
version 1, D. Lindler Aug, 1986
converted to IDL Version 2. M. Greason, STX, June 1990.
Work with multiple element string items W. Landsman August 1995
Really work with multiple element string items
R. Bergman/W. Landsman July 1996
Work with multiple entries, R. Schwartz, GSFC/SDAC August 1996
Use /overwrite with REFORM() W. Landsman May 1997
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DBXVAL
PURPOSE:
Quickly return a value of the specified item number
EXPLANATION:
Procedure to quickly return a value of the specified item number
from the entry.
CALLING SEQUENCE:
result = dbxval( entry, idltype, nvalues, sbyte, nbytes )
INPUTS
entry - entry or entries from data base (bytarr)
idltype - idl data type (obtained with db_item_info)
nvalues - number of values to return (obtained with db_item)
sbyte - starting byte in the entry (obtained with db_item)
nbytes - number of bytes (needed only for string type)
(obtained with db_item)
OUTPUTS:
function value is value of the specified item in entry
KEYWORDS:
bswap - If set, then IEEE_TO_HOST is called.
CALLED BY:
DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBPRINT [1], DBPRINT [2], DBPRINT [3]
DBRD [1], DBRD [2], DBRD [3], DBVAL [1], DBVAL [2], DBVAL [3], DBWRT [1], DBWRT [2]
DBWRT [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3], DB_ENT2HOST [1]
DB_ENT2HOST [2], DB_ENT2HOST [3]
RESTRICTIONS:
To increase speed the routine assumes that entry and item are
valid and that the data base is already opened using dbopen.
REVISION HISTORY:
version 0 D. Lindler Nov. 1987 (for new db format)
Version 1, William Thompson, GSFC, 28 March 1994.
Incorporated into CDS library.
Version 2, Richard Schwartz, GSFC/SDAC, 23 August 1996
Allowed Entry to have 2 dimensions
Version 2.1, 22 Feb 1997, JK Feggans,
avoid reform for strings arrays.
Version 2.2 Use overwrite with REFORM(), W. Landsman, May 1997
Converted to IDL V5.0 W. Landsman September 1997
Work for multiple-valued strings W. Landsman October 2000
Add new 64bit & unsigned integer datatypes W.Landsman July 2001
Version 3, 2-May-2003, JK Feggans/Sigma, W.T. Thompson
Added BSWAP keyword to avoid floating errors on some platforms.
[Previous]
[Next]
NAME:
DBXVAL
PURPOSE:
Quickly return a value of the specified item number
EXPLANATION:
Procedure to quickly return a value of the specified item number
from the entry.
CALLING SEQUENCE:
result = dbxval( entry, idltype, nvalues, sbyte, nbytes )
INPUTS
entry - entry or entries from data base (bytarr)
idltype - idl data type (obtained with db_item_info)
nvalues - number of values to return (obtained with db_item)
sbyte - starting byte in the entry (obtained with db_item)
nbytes - number of bytes (needed only for string type)
(obtained with db_item)
OUTPUTS:
function value is value of the specified item in entry
KEYWORDS:
bswap - If set, then IEEE_TO_HOST is called.
CALLED BY:
DBCOMPARE [1], DBCOMPARE [2], DBEDIT [1], DBEDIT [2], DBEDIT [3], DBEDIT_BASIC [1]
DBEDIT_BASIC [2], DBEDIT_BASIC [3], DBPRINT [1], DBPRINT [2], DBPRINT [3]
DBRD [1], DBRD [2], DBRD [3], DBVAL [1], DBVAL [2], DBVAL [3], DBWRT [1], DBWRT [2]
DBWRT [3], DB_ENT2EXT [1], DB_ENT2EXT [2], DB_ENT2EXT [3], DB_ENT2HOST [1]
DB_ENT2HOST [2], DB_ENT2HOST [3]
RESTRICTIONS:
To increase speed the routine assumes that entry and item are
valid and that the data base is already opened using dbopen.
REVISION HISTORY:
version 0 D. Lindler Nov. 1987 (for new db format)
Version 1, William Thompson, GSFC, 28 March 1994.
Incorporated into CDS library.
Version 2, Richard Schwartz, GSFC/SDAC, 23 August 1996
Allowed Entry to have 2 dimensions
Version 2.1, 22 Feb 1997, JK Feggans,
avoid reform for strings arrays.
Version 2.2 Use overwrite with REFORM(), W. Landsman, May 1997
Converted to IDL V5.0 W. Landsman September 1997
Work for multiple-valued strings W. Landsman October 2000
Add new 64bit & unsigned integer datatypes W.Landsman July 2001
Version 3, 2-May-2003, JK Feggans/Sigma, W.T. Thompson
Added BSWAP keyword to avoid floating errors on some platforms.
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
DD
PURPOSE:
Display directory stack used by PD and PPD
EXPLANATION:
CALLING SEQUENCE:
DD
INPUTS:
None.
OPTIONAL INPUTS:
None.
OUTPUTS:
None.
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
None.
CALLS: ***
CDD
COMMON BLOCKS:
DIR_STACK: Contains the directory stack.
CDD: Common block used by CDD.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
CATEGORY:
PREVIOUS HISTORY:
Written January 10, 1995, Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
Version 2, Liyun Wang, GSFC/ARC, February 3, 1995
Renamed from SD to DD
VERSION:
Version 2, February 3, 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : DEC2BIN
Purpose : Convert integer decimal number to binary representation.
Explanation : The binary representation of a decimal number is calculated
and can be displayed or returned or both or neither.
Use : IDL> dec2bin, decimal [, binary, /quiet]
Inputs : decimal - the number to convert
Opt. Inputs : None
Outputs : See below
Opt. Outputs: binary - the binary representation of the input.
Keywords : quiet - unless given the binary number is printed to the
terminal
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3]
CALLED BY:
HEX2BIN, OPEN_CALFITS, WRITE_CALFITS
Restrictions: Input must be of byte, int or long type.
Side effects: When the input variable DECIMAL is an array, then the output
variable BINARY is also an array with the dimensions
(32,N_ELEMENTS(DECIMAL)) no matter what the dimensions of
DECIMAL are.
Category : Utils, Numerical
Prev. Hist. : None
Written : C D Pike, RAL, 7-Oct-93
Modified : Version 1, C D Pike, RAL, 7-Oct-93
Version 2, William Thompson, GSFC, 23 December 1994
Modified to work with arrays.
Version 3, William Thompson, GSFC, 24 June 2005
Change to use [] array notation
Version : Version 3, 24 June 2005
[Previous]
[Next]
Project : SOHO - CDS
Name : DEC2HEX
Purpose : Convert a non-negative decimal integer to a hex string.
Explanation :
Use : IDL> dec2hex,decimal [,hex, nchar=nchar, /quiet, /upper]
Inputs : decimal - non-negative decimal integer, scalar. All leading
blanks are removed.
Opt. Inputs : None
Outputs : See below
Opt. Outputs: hex - the hexadecimal representation of the number.
Keywords : quiet - if not present, the hex form will be output to the
terminal.
nchar - number of characters in the output hexadecimal string.
If not supplied, then the hex string will contain no
leading zeros.
upper - converts hex letters to uppercase for output
Calls : None
CALLED BY:
BIN2HEX, UNPACK_LZ_SCIENCE, WHAT_CDHS_STUDY
Restrictions: Input can only be non-negative integer number.
Side effects: None
Category : Util, numerical
Prev. Hist. : Written by W. Landsman, November, 1990
Written : CDS version by C D Pike, RAL, 7-Oct-93
Modified : Added /upper keyword, CDP, 20-Dec-1993
Trap negatives, CDP, 19-May-94
Version : Version 3, 19-May-94
[Previous]
[Next]
NAME:
dec2sun
PURPOSE:
Converts data written on a DEC machine to SUN format by swapping
bytes appropriately for the type of the input data. The data
on the DEC machine is assumed to be IEEE format with the byte
order reversed: this is *not* VAX format! The routine converts
between data from a DECStation and a Sun. Since both use IEEE
format, dec2sun will also convert from sun format to DEC format.
CATEGORY:
Byte-swapping
CALLING SEQUENCE:
dec2sun,a
INPUTS:
a = input variable which is to have its bytes swapped
OPTIONAL INPUT PARAMETERS:
none
KEYWORD PARAMETERS
none
OUTPUTS:
a = reformatted variable is passed back in the original variable
CALLED BY:
BFITS, F1, RFITS [1], RFITS [2], RFITS [3], ccd_hdr_info, gtt_mnem, jitter_gif_xyimg
list_tfi, make_into_bytarr, mdifocus2, mk_bad_pix_map_load, mk_list_image, mk_tfi
mk_trace_i0, nimg_in_tfr fnam [1], raw_list2pixmap, rd_ccdh_fil, rd_goes_fits
rd_hist_dbase [1], rd_hist_dbase [2], rd_hk [1], rd_hk [2], rd_soup, rdtfr
rdwrt [1], rdwrt [2], rdwrt [3], tfr_summary, tfr_summary2, timeline, topsdb [1]
topsdb [2], tr_build_img [1], tr_decode_head [1], tr_decode_head [2]
tr_wrt_fits_i1 [2], web_seq, wrt_fits [1], wrt_fits [2], yoh_ieee2vax [1]
yoh_ieee2vax [2], yoh_vax2ieee [1], yoh_vax2ieee [2]
COMMON BLOCKS:
None
SIDE EFFECTS:
None
RESTRICTIONS:
None
PROCEDURE:
Determines the type of the variable and swaps the bytes depending
on the type. If the variable is a structure, the tags are
recursively searched so that the bytes are swapped throughout
the structure.
MODIFICATION HISTORY:
T. Metcalf 5/20/91 Version 1.0
T. Metcalf Aug 1991: Added complex floating point Version 1.1
T. Metcalf Nov 1991: Converted vax2sun to dec2sun
29-Jun-94 (MDM) - Modified to preserve the dimensions when
working on double precision data
14-Nov-95 (MDM) - Modified to allow double precision array in
an structure array.
[Previous]
[Next]
Name: decode_gev
Purpose: decode gev structures (return event times in desired format)
Input Parameters:
gev - Goes Event (GEV) structure(s) (output of rd_gev, get_gev...)
Output Parameters:
gev_start - event start time list
gev_stop - event stop time list
gev_peak - event peak time list
Keyword Parameters:
above - if set, only return subset >= this GOES class
fstart - keyword synonym for gev_start
fstop - keyword synonym for gev_stop
fpeak - keyword synonym for gev_peak
class - (output) GOES XRay Class (string, such as C2.5, X9.1...)
noaa_ar - (output) return NOAA active region - string 'xxxxxx'
location - (output) heliographic location - string {N,S}nsdeg{E,W}ewdeg
found - (output flag) - true if at least one event returned
ss - (output) - SubScripts of decoded events (reflects
events matching ABOVE criteria if set)
out_style - desired SSW time format for output - default=CCSDS
[see anytim.pro for options, inc 'ecs','vms','ints'...
_extra - switch synonyms for OUT_STYLE - supports anytim.pro
format switches such as [/vms] [/ints] [/utc_ints] [/ecs]...
Calling Examples:
IN OUT OUT OUT
IDL> decode_gev, gevin, fstart, fstop, fpeak
IDL> decode_gev, gevin, fstart, fstop, fpeak, [,/ecs][,/ccsds][,/int]
SSWIDL Context Example:
Read goes events for desired time range, check/decode events
greater than specified level - plot lightcurve around
1st event window and read the corresponding trace catalog
gev=get_gev(time0, time1)
decode_gev,gev,fstart,fstop, fpeak, above='C1', found=found, ss=ss,/int
if found then begin ;(at least 1 event > C1)
fdur=ssw_deltat(fstop,ref=fstart,/minute) ; T(start->end)
start2peak=ssw_deltat(fpeak,ref=fstart,/minute) ; T(start->peak)
peak2end=ssw_deltat(fstop,ref=fpeak,/minute) ; T( peak->end)
time_window,[fstart(0),fstop(0)],t0,t1,min=30 ; event +/- 30 min
plot_goes,t0,t1 ; plot event window
trace_cat,fstart(0),fstop(0),tcat ; goes -> trace
[---- etc.... other event actions... ----]
endif
CALLS: ***
BOX_MESSAGE, anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
anytim2ints [1], anytim2ints [2], data_chk [1], data_chk [2], is_member [1]
is_member [2], required_tags
CALLED BY:
EIT_COPY, EIT_GBO, FILT_EVENTS, SXI_GBO, TRACE_COPY, TRACE_GBO, UPDATE_MM, flare_hist
ssw_gxd_remove_flares
History:
26-June-2000 - S.L.Freeland - simplify GEV:SSWDB cross reference
27-oct-2004 - S.L.Freeland - add NOAA_AR and LOCATION output keywords
3-dec-2004 - S.L.Freeland - fix typo in doc-header context example
15-aug-2005 - S.L.Freeland - fixup old ngdc derived (only integer classes avail)
[Previous]
[Next]
NAME:
DEF_DIRLIST
PURPOSE:
Define directory list using setenv or setlog
EXPLANATION:
Environment variables which point to a list of directories can
end up to be very long. In VMS this can be a problem, because logical
names cannot be longer than 256 characters. However, it is possible to
get around this in VMS by assigning multiple values to a single logical
name--a facility that does not exist in Unix.
This routine will define the environment variable as either a delimited
string, or as a series of values, whichever is most appropriate.
CALLING SEQUENCE:
DEF_DIRLIST, EVAR, VALUE
INPUTD:
EVAR = The name of the environment variable to define.
VALUE = The value to give to EVAR. This can be either a single,
delimited string, or it can be an array of directory names.
The routine will choose for itself how to use this to define the
environment variable.
CALLS: ***
SETLOG, strsplit
CALLED BY:
SET_CDS_SDB
EXAMPLES:
DIRS = FIND_ALL_DIR('+/data/fits')
DEF_DIRLIST, 'FITS_DATA', DIRS
PROCEDURE CALLS:
SETENV, STR_SEP()
Note: The intrinsic SETENV command is available under Unix & Windows
only. However, it is available as a Library procedure for VMS.
REVISION HISTORY:
Version 1, 06-Aug-1996, William Thompson, GSFC
Converted to IDL V5.0 June 1998 W. Landsman
Use STRSPLIT instead of STR_SEP if V5.3 or later W.L. July 2002
[Previous]
[Next]
Name: def_font
Purpose: return system dependent default fonts using system variable
Keyword Parameters:
init - switch, if set, return machine dependent defaults
button,label,slider,text, - widget type specific values
default - default (for all types)
slf, 19-june-92 (eventually should use defsysv for this)
slf, 22-oct-92 add case
slf, 30-apr-93 use system variable, added keywords, alpha case
slf, 23-feb-96 remove system variable references (SSW integration)
Zarro (ADNET/GSFC) 25-July-06 - made default font a blank string
CALLED BY:
xstepper [1], xstepper [2]
Restrictions:
[Previous]
[Next]
Project : SOHO-CDS
Name : DEF_MAP
Purpose : Define a basic 2x2 element image map
Category : imaging
Explanation :
Syntax : def_map,map
Examples :
Inputs : None
Opt. Inputs : None
Outputs : MAP = {data:data,xp:xp,yp:yp,time:time,id:id} (old format)
or {data:data,xc:xc,yc:yc,dx:dx,dy:dy,time:time,id:id}
where,
DATA = 2x2 image array
XP,YP = 2x2 cartesian coordinate arrays
XC,YC = image center coordinates
DX,DY = image pixel scales
ID = blank ID label
TIME = blank start time of image
Opt. Outputs: None
Keywords : OLD = use old format
DIM = data dimensions [nx,ny]
Common : None
Restrictions: None
Side effects: None
History : Written 22 October 1997, D. Zarro, SAC/GSFC
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Name: def_yssysv
Purpose: define system variables for Yohkoh SW
values are assigned elsewhere
Category:
swmaint, system, gen
Calling Sequence:
def_yssysv [,/loud] (generally part of idl startup)
CALLS: ***
anytim2ints [1], anytim2ints [2], str_copy_tags [1], str_copy_tags [2]
str_copy_tags [3], str_copy_tags [4]
CALLED BY:
restsys [1], restsys [2], savesys [1], savesys [2], ssw_setup_windows
Common Blocks:
def_yssysv_blk - private to track first call
History: slf, 21-dec-1992
slf, 23-feb-1993 ; anonomous to make_str for compatibility
; with older idl versions
slf, 9-mar-1993 ; back to named structures - will control
; compatibilty with restore files within
; this routine
slf, 30-mar-1993 ; add some new vars, error return to caller
slf, 21-apr-1993 ; add !ys_idlsys_temp/!ys_idlsys_init
slf, 22-apr-1993 ; removed !more tag from 21-apr (old idl prob)
slf, 12-Jan-1993 ; add !ys_deftape
slf, 20-Jan-1993 ; add !ys_sxt_ef
slf, 5-oct-1994 ; sxt pixel size
rdb, 23-Apr-1996 ; removed callss to anytim2ints
slf, 6-Aug-1997 ; added /LOUD keyword (default=quiet)
[Previous]
[Next]
Project : SOHO - CDS
Name : DEFAULT
Purpose : Supply default values for variables
Explanation : If the first parameter is not defined, it is
set to the value of the second parameter.
Use : DEFAULT,VARIABLE,DEFAULT_VALUE
Inputs : VARIABLE : The variable that could take on the default value
DEFAULT_VALUE : The default value.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : None.
CALLED BY:
APPLY_CDS_ADEF, Array_Despike, CDS_CORR_GRADIENT, CDS_LINEFIT_WRAP
CDS_REPAIR_TOP, CFIT, CFITSLIST, CFIT_BLOCK, CFIT_ERRDEMO, CLEAN_EXPOSURE
CWF_COMPONENT, CWF_FIT, CWF_STATUS, CWQ_CUBE, CWQ_DSPWAV [1], CWQ_IMAGE [1]
CWQ_SPECTR [1], CWQ_WINSEL [1], CW_CHECKBOX, CW_CUBEVEIW, CW_ENTERB, CW_FLIPSWITCH
CW_LOADCT, CW_MOUSE, CW_PLOTZ [1], CW_PSELECT, CW_PZOOM [1], DSPEXP, DSP_AUX, DSP_CUBE
DSP_MOVIE, DSP_POINT, DSP_WAV, Energy_res [2], F_MULTI_THERM, GT_SCANP, GT_SCANT
GT_SCANX, GT_SCANY, GT_SPECTRUM, GT_WINDATA, HANDLE_KILLER_HOOKUP
HESSI FRAMEWORK TEMPLATE CLASS [2], HESSI FRAMEWORK TEMPLATE CLASS [3]
HSI_ANNSEC_BPROJ [1], HSI_ANNSEC_BPROJ [3], HSI_ANNSEC_BPROJ_WEIGHT [1]
HSI_ANNSEC_BPROJ_WEIGHT [2], HSI_ANNSEC_BPROJ_WEIGHT_MAP [1]
HSI_ANNSEC_BPROJ_WEIGHT_MAP [2], HSI_ANNSEC_PROFILE [1]
HSI_ANNSEC_PROFILE [2], HSI_DECIM_CORRECTION [1], HSI_DECIM_CORRECTION [2]
HSI_DRM_MOD CLASS, HSI_DRM_MOD_CONTROL__DEFINE, HSI_GSMOOTH
HSI_SPECTROGRAMCHAN_OVERLAP_FIX, HSI_SPECTROGRAM_DECIM_CORRECT
HSI_SPECTROGRAM_DECIM_TABLE, HSI_SPECTRUM__DEFINE, HSI_VIS_GEN, MK_ANALYSIS
MK_CDS_ANALYSIS, MK_COMPONENT_STC, MK_CONTIGUOUS, NUCLEAR_TABLE_LOAD, PARCHECK
PICKFITS, PILECOEF, Pileup_countrate_Build_Piler
Pileup_countrate_PULSE_CONVOLVE, RD_ASCII [1], READCDSFITS, RESTORE_ANALYSIS
RESTORE_CDS_ADEF, SAVE_ANALYSIS, SAVE_CDS_ADEF, SAVE_QLDS, SET_UTAXIS, SFITSLIST
SOXS_DRM, SPECTROGRAM CLASS DEFINITION, SPECTRUM CLASS DEFINITION
SPEX_RUN_CURVEFIT [1], SPEX_RUN_CURVEFIT [2], SSW_REBIN, ST_WINDATA
XCDS_ANALYSIS, XCDS_COSMIC, XCFIT, XCFIT_BLOCK, XCROP_CUBE, XCR_REMOVE, XDIFF
XPLOTSCALE, XRECORDER, XR_RD_ABUNDANCE, XSM_PREP, XSM_VALID, XTEXTEDIT, XTVSCALE
XWIDUMP, chianti_kev, cw_plotz [2], cw_pzoom [2], cwq_dspwav [2], cwq_image [2]
cwq_spectr [2], cwq_winsel [2], dsp_menu, edge_products, hsi_bproj2size
hsi_phz_stacker, hsi_regularized_inversion, 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_vis_fwdfit, hsi_vis_usershell
hsi_visibility_fit, hsi_xyoffset__define, mk_comp_bgauss, mk_comp_gauss
mk_comp_poly, mk_comp_ppoly, mk_comp_voigt, read_xsm_4_ospex, remove_w_c
soxs_czt_photopeak, soxs_photopeak, ssw_rebin_assign, ssw_rebinner
xr_mk_abun_file
Common : None.
Restrictions: None.
Side effects: None.
Category : Utility, Misc.
Prev. Hist. : Taken from my private library.
Written : Stein Vidar Hagfors Haugan
Modified : Never
Version : 1, 4-Sept-1995
[Previous]
[Next]
Name: default_rate_header
Category: HESSI, UTIL
Purpose: Creates a header specific to a RATE FITS file and fills it up with default values.
Calling sequence: default_rate_header, rate_struct
Inputs:
Outputs:
rate_struct - Structure containing RATE header related information
Calls: ***
anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
CALLED BY:
wrt_rate_ext
Modification History:
[Previous]
[Next]
NAME:
DEFAULTS
PURPOSE:
Supply default volume, directory, and extension parts of a file name
when not supplied.
CATEGORY:
GEN
CALLING SEQUENCE:
DEFAULTS,Filenm,Volume,Dir,Ext
INPUTS:
Filenm: File name (also an output parameter)
Volume: Default volume to insert in FILENM (include colon). If either
a colon or a right bracket appears in FILENM, then the volume
and directory information in FILENM are left alone.
Otherwise, VOLUME and DIR are inserted in FILENM.
Dir: Default directory to insert in FILENM. See above.
Ext: Default extension (include period). If FILENM has no
extension, EXT is appended. Set to ' ' to indicate no default.
OUTPUTS:
Filenm: Complete file name with volume, directory, filename,
and extension.
CALLED BY:
DCFREAD, DEFAULTS_2, MAILPLOT, SC4HREAD, SC4READ, SC4TREAD, TEK_PRINT [1]
TEK_PRINT [2]
EXAMPLE:
FILENM = 'HXR1000'
DEFAULTS,FILENM,'HXRBS$DATA:','','.SC4'
FILENM is now set to 'HXRBS$DATA:HXR1000.SC4'
CALLS: ***
BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], CONCAT_DIR [1], CONCAT_DIR [2]
CONCAT_DIR [3], FCHECK, break_file [4], concat_dir [4]
RESTRICTIONS:
Designed for VMS, considered obsolete, unsure of UNIX support.
Modified to use break_file and concat_dir
MODIFICATION HISTORY:
Mod. 12/16/88.
Mod. 04/26/89.
Mod. 05/06/96 by RCJ. Added documentation.
Version 4, ras, 23-may-1996, using break_file and concat_dir
[Previous]
[Next]
NAME:
DEFAULTS_2
PURPOSE:
Supply default volume, directory, and extension parts of a file name
when not supplied.
See DEFAULTS for positional parameters.
CATEGORY:
GEN
CALLING SEQUENCE:
DEFAULTS_2,filenm=Filemn,volume=Volume,directory=Dir,extension=Ext
CALLS: ***
CHECKVAR [1], DEFAULTS, checkvar [2]
INPUTS:
Filenm: File name (also an output parameter)
Volume: Default volume to insert in FILENM (include colon). If either
a colon or a right bracket appears in FILENM, then the volume
and directory information in FILENM are left alone.
Otherwise, VOLUME and DIR are inserted in FILENM.
Dir: Default directory to insert in FILENM. See above.
Ext: Default extension (include period). If FILENM has no
extension, EXT is appended.
OUTPUTS:
Filenm: Complete file name with volume, directory, filename,
and extension.
CALLED BY:
HXR_SPEC, SAVE_DCDATA, TEK_INIT [1], TEK_INIT [2]
EXAMPLE:
FILENM = 'HXR1000'
DEFAULTS,FILE=FILENM,DIR='HXRBS$DATA:',EXT='.SC4'
FILENM is now set to 'HXRBS$DATA:HXR1000.SC4'
MODIFICATION HISTORY:
Mod. 02/12/91.
Mod. 05/06/96 by RCJ. Added documentation.
[Previous]
[Next]
NAME: DEFROI
PURPOSE: Define an irregular region of interest of an image
using the image display system and the cursor/mouse.
CATEGORY: Image processing.
CALLING SEQUENCE:
R = Defroi(Sx, Sy, X0, Y0)
INPUTS:
Sx, Sy = Size of image, in pixels.
Optional Inputs:
X0, Y0 = Coordinate of Lower left corner of image on display.
If omitted, (0,0) is assumed. Screen device coordinates.
ZOOM = zoom factor, if omitted, 1 is assumed.
OUTPUTS:
Function result = vector of subscripts of pixels inside the region.
Side effect: The lowest bit in which the write mask is enabled
is changed.
OPTIONAL OUTPUTS:
Xverts, Yverts = Optional output parameters which will contain
the vertices enclosing the region.
KEYWORD Parameters:
NOREGION = Setting NOREGION inhibits the return of the
pixel subscripts.
NOFILL = if set, inhibits filling of irregular region on completion.
RESTORE = if set, original image on display is restored to its
original state on completion.
CALLED BY:
BORN_AGAIN, C3_CME, C3_CME_FRONT, CH_BOUNDARY [2], CME_MASS, CME_MASSIMG2TOTAL
MOVIE_MAKER, REMOVE_CR, cr_rem_array, cr_rem_file, cur_teemcursor Te and EM
lwa_plot_arc, plot_arc [1], plot_arc [2], plot_arc [3], sxt_defroi, wdefroi [1]
wdefroi [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
Display is changed if RESTORE is not set.
RESTRICTIONS:
Only works for interactive, pixel oriented devices with a
cursor and an exclusive or writing mode.
A region may have at most 1000 vertices. If this is not enough
edit the line setting MAXPNTS.
PROCEDURE:
The exclusive or drawing mode is used to allow drawing and
erasing objects over the original object.
The operator marks the vertices of the region, either by
dragging the mouse with the left button depressed or by
marking vertices of an irregular polygon by clicking the
left mouse button, or with a combination of both.
The center button removes the most recently drawn points.
Press the right mouse button when finished.
When the operator is finished, the region is filled using
the polyfill function, and the polyfillv function is used
to compute the subscripts within the region.
MODIFICATION HISTORY: DMS, March, 1987.
Revised for SunView, DMS, Nov, 1987.
Added additional argument checking, SNG April, 1991
Modified for devices without write masks: DMS, March, 1992.
Uses exclusive or mode rather than write masks.
20-Oct-93 (MDM) - Changed call to CURSOR to use the WAIT=3 option
(instead of WAIT=1) since it is reading the same
data value many times.
- WAIT=3 didn't work - adding a 0.2 sec wait
[Previous]
[Next]
Project : HESSI
Name : del_blank_lines
Purpose : Read in a file, delete the blanklines, and write to an output file.
Explanation : This is a sub-routine for xdiff.pro. When comparing two files
sometimes you want to ignore blanklines.
Use : del_blank_lines,'<infile>', '<outfile>', '<error>'
Inputs : '<infile>' : the name of the input file
: '<outfile>' : the name of the output file
: '<error>' : error flag
Opt. Inputs : None
Outputs : None.
Opt. Outputs : None.
Keywords : None.
Calls : ***
RD_ASCII [1], RD_ASCII [2]
CALLED BY:
XDIFF
Common : None.
Restrictions : None.
Side effects : Creates temporary files.
Category : Utility
Written : Xiaolin Li, 30 August 2002
Version : 1, 30 August 2002
[Previous]
[Next]
Project : HESSI
Name : del_comment_lines
Purpose : Read in a file, delete the lines that begin with a semicolon, and write to an output file.
Explanation : This is a sub-routine for xdiff.pro. When comparing two files
sometimes you want to ignore comment lines.
Use : del_comment_lines,'<infile>', '<outfile>', '<error>'
Inputs : '<infile>' : the name of the input file
: '<outfile>' : the name of the output file
: '<error>' : error flag
Opt. Inputs : None
Outputs : None.
Opt. Outputs : None.
Keyword : None.
Calls : ***
RD_ASCII [1], RD_ASCII [2]
CALLED BY:
XDIFF
Common : None.
Restrictions : None.
Side effects : Creates temporary files.
Category : Utility
Written : Xiaolin Li, 30 August 2002
Version : 1, 30 August 2002
[Previous]
[Next]
Project : SOHO - CDS
Name : DELETE_ANALYSIS
Purpose : Delete a CFIT ANALYSIS structure, freeing the handles.
Explanation : See Purpose.
Use : DELETE_ANALYSIS,ANALYSIS
Inputs : ANALYSIS : A CFIT ANALYSIS structure.
Opt. Inputs : None
Outputs : None
Opt. Outputs: None
Keywords : None
Calls : ***
DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], EXIST, delvarx [5]
CALLED BY:
APPLY_CDS_ADEF, XCDS_ANALYSIS, XCFIT_BLOCK
Common : None
Restrictions: ...
Side effects: None known
Category : Line fitting
Prev. Hist. : None
Written : SVH Haugan, UiO, 25 September 1997
Modified : Not yet.
Version : 1, 25 September 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : DELETE_FILE()
Purpose : Delete a named file.
Explanation : Spawn the OS appropriate delete command.
Use : IDL> status = delete_file(filename [,report=report])
Inputs : filename - file to be deleted, must include path
Opt. Inputs : None
Outputs : Function value = 1 for success = 0 for failure
Opt. Outputs: Report - the os response to the delete command
Keywords : NOCONFIRM - suppress any delete confirmation requests
Calls : ***
Bell
CALLED BY:
FIND_DURATION, LIST_DURATION, MK_CDS_PLAN, MK_STUDY, PRINT_STR, SHOW_CDHS
SHOW_DATAWIN, SHOW_EVARS, SHOW_FITS_HDR, SHOW_LINELIST, SHOW_PLAN, SHOW_RASTER
SHOW_STUDY
Restrictions: VMS and Unix only
Side effects: None
Category : Util, Operating_system
Prev. Hist. : None
Written : C D Pike, RAL, 13-May-93
Modified : Added NOCONFIRM keyword. CDP, 26-Apr-95
Version : Version 2, 26-Apr-95
[Previous]
[Next]
NAME:
DELVARX
PURPOSE:
Delete variables for memory management (can call from routines)
EXPLANATION:
Like intrinsic DELVAR function, but can be used from any calling level
CALLING SEQUENCE:
DELVARX, a [,b,c,d,e,f,g,h,i,j, /FREE_MEM]
INPUTS:
p0, p1...p9 - variables to delete
OPTIONAL KEYWORD:
/FREE_MEM - If set, then free memory associated with pointers
and objects (automatically handled by HEAP_FREE)
OLD - use old DELVARX
CALLED BY:
ADD_TAG [2], ARCMIN2HEL2, ATV, BOOST_TAG, CACHE_DATA, CDS_ASRUN_POINT, CDS_ENG_N1
CDS_ENG_N4, CDS_PLAN_POINT, CDS_SLIT6_BURNIN, CDS_STACK, CFIT_APIXLIST, CFIT_BLOCK
CFIT_BLOCK_ERROR, CF_GIS1A, CF_GIS1B, CF_GIS1C, CF_GIS2A [1], CF_GIS4A, CF_GIS4B
CF_GIS4C, CHECK_KAP, CHIANTI_NE, CHIANTI_TE, CLEAN_GOES, CLEAN_PATH, CONCAT_STRUCT
CROSS_HAIR, DATA_PATHS, DEF_INST_PLAN, DEF_STUDY, DELETE_ANALYSIS, DELETE_CDS_ADEF
DELETE_QLDS, DISPLAY_CDS_BURNIN, DROT_MAP, EIS_IMAGE_TOOL [1]
EIS_IMAGE_TOOL [2], EIS_IMAGE_TOOL_EVENT [1], EIS_IMAGE_TOOL_EVENT [2]
EIS_ITOOL_PTOOL [1], EIS_ITOOL_PTOOL [2], EIS_ITOOL_ZOOMINOUT [1]
EIS_ITOOL_ZOOMINOUT [2], EIS_LIST_EXPER [1], EIS_LIST_EXPER [2]
EIS_LIST_MAIN [1], EIS_LIST_MAIN [2], EIS_LOAD_IMAGE [1], EIS_LOAD_IMAGE [2]
EIT_CATRD [1], EIT_PREP, ESPAWN, FILE2FID, FIND_CAMPAIGN, FIND_CDS_STUDIES
FIND_CDS_STUDY, FIND_FID, FIT2GIF, FITS2MAP [1], FITS2MAP [2], FITSHEAD2WCS
FIX_ZDBASE, FREE_VAR, FTP_BBSO, FTP_KISF, FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE
GEN__DEFINE, GET_CDS_RASTER, GET_CDS_STUDY, GET_LATEST_IAP, GET_MAP_REGION
GET_NAR, GET_SC_POINT, GET_SID, GET_SOHO_ROLL, GET_SUMER_FILES, GET_SUMER_POINT
GET_SYNOPTIC, GET_TEMP_DIR, GET_WIDTH_CORR, GE_WINDOW_SIM, GIS_UTPLOT, GOES_TF
GOES_TF_COEFF, GOES__DEFINE, GSSSADXY, GT_SOLAR_XY, HANDLE_KILLER_HOOKUP
HAVE_NETWORK, HAVE_PROC, HAVE_TAG, HFITS__DEFINE, HSI_BTOT, HSI_CLOCK_DRIFT
HSI_MODEL_TO_SCORE, HSI_PIXON_IMAGE [1], HSI_PIXON_IMAGE [2]
HSI_SEQ_CNT_CORRECT, HSI_SIM11, HSI_VCFILE_PACKET_RATE, HTTP__DEFINE
Hsi_contact2fits [1], Hsi_contact2fits [2], IAP2STC, IDL_ROUTINE, IHY_READ
IMAGE_TOOL, IMAGE_TOOL_EVENT, INDEX2MAP, ITOOL_CROSS_HAIR, ITOOL_DRAW
ITOOL_DRAW_DRAG, ITOOL_DRAW_ICON, ITOOL_LIMBFITTER, ITOOL_LOAD_IMAGE
ITOOL_OVERLAYER, ITOOL_PICKFILE, ITOOL_PTOOL, ITOOL_ZOOMINOUT, LATEST_IMAGE
LIST_ANOMALY, LIST_CACHE__DEFINE, LIST_RESOURCE, LIST_SUPPORT, LOCATE_FFCAL
MAKE_AUTO_FIT, MAKE_CHIANTI_SPEC, MAKE_MANUAL_FIT, MAP_DISCLA2CONT, MEAN_MAP
MK_CDS_GIF, MK_CDS_PLAN, MK_EIT_MAP, MK_LIMBFIT_BS, MK_MDI_MAP_EARTH
MK_PLAN_CHANGE, MK_PLAN_LOAD, MK_PLAN_PRIV, MK_PLAN_RECAL, MK_PLAN_RECOVER
MK_PLAN_REM, MK_PLAN_RESET, MK_PLAN_SHIFT, MK_PLAN_UNLOAD, MK_PLAN_WRITE
MK_POINT_BASE, MK_SOHO, MK_SOHO_EXTPLAN, MK_SOHO_MAP_EARTH, MK_SOHO_SETUP
MK_STUDY, MK_SUMER_DBASE, NIS_ROTATE, NL_MRQMIN, OPLOT_NAR [1], PLAN_XCAT_SUMM
PLOTSPEC, PLOT_MAP
PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support
PLOT_SPEC [1], PPD, PTR_EMPTY, RATIO_PLOTTER [1], RDWRT_BUFF, RD_CDS_POINT, RD_GOES
RD_PLAN, RD_RESOURCE, RD_RSTN, READ_KAP, READ_NIMCP_CAL, READ_TTS_FITS, REBIN_FID
REM_ANON_TAG, REM_DUP_TAG, REM_TAG [2], RESET_NETWORK, RESOLVE_ALL, RM_FILE
RM_PATH [1], RM_PATH [2], ROLL_PLOT, ROT_CDS_XY, ROT_MAP, SCANPATH, SEL_BSC
SID__DEFINE, SMART_FTP, SMART_WINDOW, SOCK_FITS, SOCK_LIST, SOCK_OPEN, SOHO_XY
SPLIT_TAGS, STOKESFIT, STR_INDEX [1], STR_INDEX [2], STR_SPACE, ST_SUMER, SUB_MAP
SUMER_TOOL_PD_EVENT, SUPPRESS_MESSAGE, SXT_IMAGE_DECONVOLVE, SXT_TEEM1 [1]
SXT_TEEM1 [2], SXT_TEEM1 [3], SXT_TEEM2 [1], SXT_TEEM2 [2], SXT_TEEM2 [3]
Sxt_goes_teem, TKI_UDPSLIT, TRACE_CUBE_POINTING, TRACE_MDI_ALIGN, UPDATE_FITLIMB
UTPLOT__DEFINE, WBSC_SPC_EV [1], WBSC_SPC_EV [2], WCS_FIND_PIXEL_LIST, WTITLE
XCAT, XCDS_BOOK, XCFIT_BLOCK, XCRON, XGET_SYNOPTIC, XLIST, XRECORDER, XSPECT, XSTRUCT
XSTUDY, XYPLOT__DEFINE, accum_counts [1], accum_counts [2], avsig_1 [4]
box_sxthxt_fsp, bsc_spec_plot [1], bsc_spec_plot [2], ch_ss, collexc [1]
collexc [2], cube_edit, daily_forecast [2], db_gbo, dem_models, difference_movie
disp_sci160k [1], disp_sci160k [2], drexc [1], drexc [2], eit_fulldisk
eit_proton_summary, event_movie [2], evt_grid, extract_fids, fit_bsc, fit_bsc_as
ftp_copy_new, get_elemabun [1], get_elemabun [2], get_ksc_holiday, goes_log
gtt_info, help_merge [1], help_merge [2], his_suncen, hsi_badpak_test
hsi_clk_delta_read, hsi_obs_summ_allrates [1], hsi_obs_summ_soc__define
hsi_ok_intv [1], hsi_ok_intv [2], hsi_pixon_smooth_patterns
hsi_sim_dummy_livetime, html_get_files, hxt_chsums, ihy_db, interpu_2d [2]
is_open, leak_sub [1], leak_sub [2], leak_sub [3], local_mag_extrap
make_goes_chianti_response [1], make_goes_chianti_response [2]
make_goes_chianti_response [3], make_goes_chianti_response [4], mdi_display
mdi_write_genxcat, merc_lwa, merc_pix, mewe_spec mewe_spec_lwa, mewe_spec [1]
mewe_spec [2], mk_sdcs, mk_spd, mk_ssc [1], mk_ssc [2], mkthumb, mon_sci5k
mreadfits_header, mreadfits_urls, mxf_read_data, oneline [1], oneline [2]
oneline_event [1], oneline_event [2], op_get_special, op_term_score, op_times
plot_ace, quick_hkplot [1], quick_hkplot [2], ratio_plotter [2], rd_fdss, rd_rasm
rd_sda_flare, rd_therm_rs232, read_eit, read_genxcat, read_trace, redo_disploi
redo_mon_sci5k, save_idl_routines, set_new_db, sobel_scale, spectro_plot
spex_delete [1], spex_delete [2], spex_hold [1], spex_hold [2], spex_merge [1]
spex_merge [2], spex_source [1], spex_source [2], split_colortab
ssw_fov_context, ssw_getcme_cdaw, ssw_getdst, ssw_sec_aktxt2struct
ssw_time2paths, sswstruct_fill [1], sxt_off_axis, sxt_patch_att, sxt_psf
sxt_uvf_info [1], sxt_uvf_info [3], sxtbox_fsp, temp_redo_catalog, timeline
trace_get_vignette, trace_jpeg_decomp, trace_make_tma, trace_make_tmr [1]
trace_rd_jpeg, trace_success_file, tv2 [1], tv2 [2], uncompress, unpack_trace
web_seq, write_trace_bin, xanal_emi, yo_mkos1_dbase, yo_xda2legacy, yopos [1]
yopos [2], zdeheliographinize, zhelio2xy, zheliographinize, zradialize
RESTRICTIONS:
None
METHOD:
Uses EXECUTE and TEMPORARY function (not anymore)
REVISION HISTORY:
Copied from the Solar library, written by slf, 25-Feb-1993
Added to Astronomy Library, September 1995
Converted to IDL V5.0 W. Landsman September 1997
Modified, 26-Mar-2003, Zarro (EER/GSFC)
- added FREE_MEM to free pointer/objects
Modified, 25-Apr-2006, Zarro (L-3Com/GSFC)
- removed EXECUTE for compliance with IDL VM
- used SCOPE_VARFETCH to dynamically extract value from argument name
- used HEAP_FREE for improved memory management
Modified 26-Jan-2006, Zarro (ADNET/GSFC)
- added call to old DELVARX (in DELVARX2) for backwards compatibility
[Previous]
[Next]
NAME:
DELVARX
PURPOSE:
Delete variables for memory management (can call from routines)
EXPLANATION:
Like intrinsic DELVAR function, but can be used from any calling level
CALLING SEQUENCE:
DELVARX, a [,b,c,d,e,f,g,h,i,j, /FREE_MEM]
INPUTS:
p0, p1...p9 - variables to delete
OPTIONAL KEYWORD:
/FREE_MEM - If set, then free memory associated with pointers
and objects.
CALLS: ***
DELVARX2
CALLED BY:
ADD_TAG [2], ARCMIN2HEL2, ATV, BOOST_TAG, CACHE_DATA, CDS_ASRUN_POINT, CDS_ENG_N1
CDS_ENG_N4, CDS_PLAN_POINT, CDS_SLIT6_BURNIN, CDS_STACK, CFIT_APIXLIST, CFIT_BLOCK
CFIT_BLOCK_ERROR, CF_GIS1A, CF_GIS1B, CF_GIS1C, CF_GIS2A [1], CF_GIS4A, CF_GIS4B
CF_GIS4C, CHECK_KAP, CHIANTI_NE, CHIANTI_TE, CLEAN_GOES, CLEAN_PATH, CONCAT_STRUCT
CROSS_HAIR, DATA_PATHS, DEF_INST_PLAN, DEF_STUDY, DELETE_ANALYSIS, DELETE_CDS_ADEF
DELETE_QLDS, DISPLAY_CDS_BURNIN, DROT_MAP, EIS_IMAGE_TOOL [1]
EIS_IMAGE_TOOL [2], EIS_IMAGE_TOOL_EVENT [1], EIS_IMAGE_TOOL_EVENT [2]
EIS_ITOOL_PTOOL [1], EIS_ITOOL_PTOOL [2], EIS_ITOOL_ZOOMINOUT [1]
EIS_ITOOL_ZOOMINOUT [2], EIS_LIST_EXPER [1], EIS_LIST_EXPER [2]
EIS_LIST_MAIN [1], EIS_LIST_MAIN [2], EIS_LOAD_IMAGE [1], EIS_LOAD_IMAGE [2]
EIT_CATRD [1], EIT_PREP, ESPAWN, FILE2FID, FIND_CAMPAIGN, FIND_CDS_STUDIES
FIND_CDS_STUDY, FIND_FID, FIT2GIF, FITS2MAP [1], FITS2MAP [2], FITSHEAD2WCS
FIX_ZDBASE, FREE_VAR, FTP_BBSO, FTP_KISF, FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE
GEN__DEFINE, GET_CDS_RASTER, GET_CDS_STUDY, GET_LATEST_IAP, GET_MAP_REGION
GET_NAR, GET_SC_POINT, GET_SID, GET_SOHO_ROLL, GET_SUMER_FILES, GET_SUMER_POINT
GET_SYNOPTIC, GET_TEMP_DIR, GET_WIDTH_CORR, GE_WINDOW_SIM, GIS_UTPLOT, GOES_TF
GOES_TF_COEFF, GOES__DEFINE, GSSSADXY, GT_SOLAR_XY, HANDLE_KILLER_HOOKUP
HAVE_NETWORK, HAVE_PROC, HAVE_TAG, HFITS__DEFINE, HSI_BTOT, HSI_CLOCK_DRIFT
HSI_MODEL_TO_SCORE, HSI_PIXON_IMAGE [1], HSI_PIXON_IMAGE [2]
HSI_SEQ_CNT_CORRECT, HSI_SIM11, HSI_VCFILE_PACKET_RATE, HTTP__DEFINE
Hsi_contact2fits [1], Hsi_contact2fits [2], IAP2STC, IDL_ROUTINE, IHY_READ
IMAGE_TOOL, IMAGE_TOOL_EVENT, INDEX2MAP, ITOOL_CROSS_HAIR, ITOOL_DRAW
ITOOL_DRAW_DRAG, ITOOL_DRAW_ICON, ITOOL_LIMBFITTER, ITOOL_LOAD_IMAGE
ITOOL_OVERLAYER, ITOOL_PICKFILE, ITOOL_PTOOL, ITOOL_ZOOMINOUT, LATEST_IMAGE
LIST_ANOMALY, LIST_CACHE__DEFINE, LIST_RESOURCE, LIST_SUPPORT, LOCATE_FFCAL
MAKE_AUTO_FIT, MAKE_CHIANTI_SPEC, MAKE_MANUAL_FIT, MAP_DISCLA2CONT, MEAN_MAP
MK_CDS_GIF, MK_CDS_PLAN, MK_EIT_MAP, MK_LIMBFIT_BS, MK_MDI_MAP_EARTH
MK_PLAN_CHANGE, MK_PLAN_LOAD, MK_PLAN_PRIV, MK_PLAN_RECAL, MK_PLAN_RECOVER
MK_PLAN_REM, MK_PLAN_RESET, MK_PLAN_SHIFT, MK_PLAN_UNLOAD, MK_PLAN_WRITE
MK_POINT_BASE, MK_SOHO, MK_SOHO_EXTPLAN, MK_SOHO_MAP_EARTH, MK_SOHO_SETUP
MK_STUDY, MK_SUMER_DBASE, NIS_ROTATE, NL_MRQMIN, OPLOT_NAR [1], PLAN_XCAT_SUMM
PLOTSPEC, PLOT_MAP
PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support
PLOT_SPEC [1], PPD, PTR_EMPTY, RATIO_PLOTTER [1], RDWRT_BUFF, RD_CDS_POINT, RD_GOES
RD_PLAN, RD_RESOURCE, RD_RSTN, READ_KAP, READ_NIMCP_CAL, READ_TTS_FITS, REBIN_FID
REM_ANON_TAG, REM_DUP_TAG, REM_TAG [2], RESET_NETWORK, RESOLVE_ALL, RM_FILE
RM_PATH [1], RM_PATH [2], ROLL_PLOT, ROT_CDS_XY, ROT_MAP, SCANPATH, SEL_BSC
SID__DEFINE, SMART_FTP, SMART_WINDOW, SOCK_FITS, SOCK_LIST, SOCK_OPEN, SOHO_XY
SPLIT_TAGS, STOKESFIT, STR_INDEX [1], STR_INDEX [2], STR_SPACE, ST_SUMER, SUB_MAP
SUMER_TOOL_PD_EVENT, SUPPRESS_MESSAGE, SXT_IMAGE_DECONVOLVE, SXT_TEEM1 [1]
SXT_TEEM1 [2], SXT_TEEM1 [3], SXT_TEEM2 [1], SXT_TEEM2 [2], SXT_TEEM2 [3]
Sxt_goes_teem, TKI_UDPSLIT, TRACE_CUBE_POINTING, TRACE_MDI_ALIGN, UPDATE_FITLIMB
UTPLOT__DEFINE, WBSC_SPC_EV [1], WBSC_SPC_EV [2], WCS_FIND_PIXEL_LIST, WTITLE
XCAT, XCDS_BOOK, XCFIT_BLOCK, XCRON, XGET_SYNOPTIC, XLIST, XRECORDER, XSPECT, XSTRUCT
XSTUDY, XYPLOT__DEFINE, accum_counts [1], accum_counts [2], avsig_1 [4]
box_sxthxt_fsp, bsc_spec_plot [1], bsc_spec_plot [2], ch_ss, collexc [1]
collexc [2], cube_edit, daily_forecast [2], db_gbo, dem_models, difference_movie
disp_sci160k [1], disp_sci160k [2], drexc [1], drexc [2], eit_fulldisk
eit_proton_summary, event_movie [2], evt_grid, extract_fids, fit_bsc, fit_bsc_as
ftp_copy_new, get_elemabun [1], get_elemabun [2], get_ksc_holiday, goes_log
gtt_info, help_merge [1], help_merge [2], his_suncen, hsi_badpak_test
hsi_clk_delta_read, hsi_obs_summ_allrates [1], hsi_obs_summ_soc__define
hsi_ok_intv [1], hsi_ok_intv [2], hsi_pixon_smooth_patterns
hsi_sim_dummy_livetime, html_get_files, hxt_chsums, ihy_db, interpu_2d [2]
is_open, leak_sub [1], leak_sub [2], leak_sub [3], local_mag_extrap
make_goes_chianti_response [1], make_goes_chianti_response [2]
make_goes_chianti_response [3], make_goes_chianti_response [4], mdi_display
mdi_write_genxcat, merc_lwa, merc_pix, mewe_spec mewe_spec_lwa, mewe_spec [1]
mewe_spec [2], mk_sdcs, mk_spd, mk_ssc [1], mk_ssc [2], mkthumb, mon_sci5k
mreadfits_header, mreadfits_urls, mxf_read_data, oneline [1], oneline [2]
oneline_event [1], oneline_event [2], op_get_special, op_term_score, op_times
plot_ace, quick_hkplot [1], quick_hkplot [2], ratio_plotter [2], rd_fdss, rd_rasm
rd_sda_flare, rd_therm_rs232, read_eit, read_genxcat, read_trace, redo_disploi
redo_mon_sci5k, save_idl_routines, set_new_db, sobel_scale, spectro_plot
spex_delete [1], spex_delete [2], spex_hold [1], spex_hold [2], spex_merge [1]
spex_merge [2], spex_source [1], spex_source [2], split_colortab
ssw_fov_context, ssw_getcme_cdaw, ssw_getdst, ssw_sec_aktxt2struct
ssw_time2paths, sswstruct_fill [1], sxt_off_axis, sxt_patch_att, sxt_psf
sxt_uvf_info [1], sxt_uvf_info [3], sxtbox_fsp, temp_redo_catalog, timeline
trace_get_vignette, trace_jpeg_decomp, trace_make_tma, trace_make_tmr [1]
trace_rd_jpeg, trace_success_file, tv2 [1], tv2 [2], uncompress, unpack_trace
web_seq, write_trace_bin, xanal_emi, yo_mkos1_dbase, yo_xda2legacy, yopos [1]
yopos [2], zdeheliographinize, zhelio2xy, zheliographinize, zradialize
RESTRICTIONS:
Can't use recursively due to EXECUTE function
METHOD:
Uses EXECUTE and TEMPORARY function
REVISION HISTORY:
Copied from the Solar library, written by slf, 25-Feb-1993
Added to Astronomy Library, September 1995
Converted to IDL V5.0 W. Landsman September 1997
Modified, 26-Mar-2003, Zarro (EER/GSFC) 26-Mar-2003
- added FREE_MEM to free pointer/objects
26-Jan-2007, Zarro (ADNET/GSFC)
- deprecated and renamed. See DELVARX.PRO for newer version.
[Previous]
[Next]
NAME:
DELVARX
PURPOSE:
Delete variables for memory management (can call from routines)
EXPLANATION:
Like intrinsic DELVAR function, but can be used from any calling level
CALLING SEQUENCE:
DELVARX, a [,b,c,d,e,f,g,h,i,j, /FREE_MEM]
INPUTS:
p0, p1...p9 - variables to delete
OPTIONAL KEYWORD:
/FREE_MEM - If set, then free memory associated with pointers
and objects.
CALLED BY:
ADD_TAG [2], ARCMIN2HEL2, ATV, BOOST_TAG, CACHE_DATA, CDS_ASRUN_POINT, CDS_ENG_N1
CDS_ENG_N4, CDS_PLAN_POINT, CDS_SLIT6_BURNIN, CDS_STACK, CFIT_APIXLIST, CFIT_BLOCK
CFIT_BLOCK_ERROR, CF_GIS1A, CF_GIS1B, CF_GIS1C, CF_GIS2A [1], CF_GIS4A, CF_GIS4B
CF_GIS4C, CHECK_KAP, CHIANTI_NE, CHIANTI_TE, CLEAN_GOES, CLEAN_PATH, CONCAT_STRUCT
CROSS_HAIR, DATA_PATHS, DEF_INST_PLAN, DEF_STUDY, DELETE_ANALYSIS, DELETE_CDS_ADEF
DELETE_QLDS, DISPLAY_CDS_BURNIN, DROT_MAP, EIS_IMAGE_TOOL [1]
EIS_IMAGE_TOOL [2], EIS_IMAGE_TOOL_EVENT [1], EIS_IMAGE_TOOL_EVENT [2]
EIS_ITOOL_PTOOL [1], EIS_ITOOL_PTOOL [2], EIS_ITOOL_ZOOMINOUT [1]
EIS_ITOOL_ZOOMINOUT [2], EIS_LIST_EXPER [1], EIS_LIST_EXPER [2]
EIS_LIST_MAIN [1], EIS_LIST_MAIN [2], EIS_LOAD_IMAGE [1], EIS_LOAD_IMAGE [2]
EIT_CATRD [1], EIT_PREP, ESPAWN, FILE2FID, FIND_CAMPAIGN, FIND_CDS_STUDIES
FIND_CDS_STUDY, FIND_FID, FIT2GIF, FITS2MAP [1], FITS2MAP [2], FITSHEAD2WCS
FIX_ZDBASE, FREE_VAR, FTP_BBSO, FTP_KISF, FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE
GEN__DEFINE, GET_CDS_RASTER, GET_CDS_STUDY, GET_LATEST_IAP, GET_MAP_REGION
GET_NAR, GET_SC_POINT, GET_SID, GET_SOHO_ROLL, GET_SUMER_FILES, GET_SUMER_POINT
GET_SYNOPTIC, GET_TEMP_DIR, GET_WIDTH_CORR, GE_WINDOW_SIM, GIS_UTPLOT, GOES_TF
GOES_TF_COEFF, GOES__DEFINE, GSSSADXY, GT_SOLAR_XY, HANDLE_KILLER_HOOKUP
HAVE_NETWORK, HAVE_PROC, HAVE_TAG, HFITS__DEFINE, HSI_BTOT, HSI_CLOCK_DRIFT
HSI_MODEL_TO_SCORE, HSI_PIXON_IMAGE [1], HSI_PIXON_IMAGE [2]
HSI_SEQ_CNT_CORRECT, HSI_SIM11, HSI_VCFILE_PACKET_RATE, HTTP__DEFINE
Hsi_contact2fits [1], Hsi_contact2fits [2], IAP2STC, IDL_ROUTINE, IHY_READ
IMAGE_TOOL, IMAGE_TOOL_EVENT, INDEX2MAP, ITOOL_CROSS_HAIR, ITOOL_DRAW
ITOOL_DRAW_DRAG, ITOOL_DRAW_ICON, ITOOL_LIMBFITTER, ITOOL_LOAD_IMAGE
ITOOL_OVERLAYER, ITOOL_PICKFILE, ITOOL_PTOOL, ITOOL_ZOOMINOUT, LATEST_IMAGE
LIST_ANOMALY, LIST_CACHE__DEFINE, LIST_RESOURCE, LIST_SUPPORT, LOCATE_FFCAL
MAKE_AUTO_FIT, MAKE_CHIANTI_SPEC, MAKE_MANUAL_FIT, MAP_DISCLA2CONT, MEAN_MAP
MK_CDS_GIF, MK_CDS_PLAN, MK_EIT_MAP, MK_LIMBFIT_BS, MK_MDI_MAP_EARTH
MK_PLAN_CHANGE, MK_PLAN_LOAD, MK_PLAN_PRIV, MK_PLAN_RECAL, MK_PLAN_RECOVER
MK_PLAN_REM, MK_PLAN_RESET, MK_PLAN_SHIFT, MK_PLAN_UNLOAD, MK_PLAN_WRITE
MK_POINT_BASE, MK_SOHO, MK_SOHO_EXTPLAN, MK_SOHO_MAP_EARTH, MK_SOHO_SETUP
MK_STUDY, MK_SUMER_DBASE, NIS_ROTATE, NL_MRQMIN, OPLOT_NAR [1], PLAN_XCAT_SUMM
PLOTSPEC, PLOT_MAP
PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support
PLOT_SPEC [1], PPD, PTR_EMPTY, RATIO_PLOTTER [1], RDWRT_BUFF, RD_CDS_POINT, RD_GOES
RD_PLAN, RD_RESOURCE, RD_RSTN, READ_KAP, READ_NIMCP_CAL, READ_TTS_FITS, REBIN_FID
REM_ANON_TAG, REM_DUP_TAG, REM_TAG [2], RESET_NETWORK, RESOLVE_ALL, RM_FILE
RM_PATH [1], RM_PATH [2], ROLL_PLOT, ROT_CDS_XY, ROT_MAP, SCANPATH, SEL_BSC
SID__DEFINE, SMART_FTP, SMART_WINDOW, SOCK_FITS, SOCK_LIST, SOCK_OPEN, SOHO_XY
SPLIT_TAGS, STOKESFIT, STR_INDEX [1], STR_INDEX [2], STR_SPACE, ST_SUMER, SUB_MAP
SUMER_TOOL_PD_EVENT, SUPPRESS_MESSAGE, SXT_IMAGE_DECONVOLVE, SXT_TEEM1 [1]
SXT_TEEM1 [2], SXT_TEEM1 [3], SXT_TEEM2 [1], SXT_TEEM2 [2], SXT_TEEM2 [3]
Sxt_goes_teem, TKI_UDPSLIT, TRACE_CUBE_POINTING, TRACE_MDI_ALIGN, UPDATE_FITLIMB
UTPLOT__DEFINE, WBSC_SPC_EV [1], WBSC_SPC_EV [2], WCS_FIND_PIXEL_LIST, WTITLE
XCAT, XCDS_BOOK, XCFIT_BLOCK, XCRON, XGET_SYNOPTIC, XLIST, XRECORDER, XSPECT, XSTRUCT
XSTUDY, XYPLOT__DEFINE, accum_counts [1], accum_counts [2], avsig_1 [4]
box_sxthxt_fsp, bsc_spec_plot [1], bsc_spec_plot [2], ch_ss, collexc [1]
collexc [2], cube_edit, daily_forecast [2], db_gbo, dem_models, difference_movie
disp_sci160k [1], disp_sci160k [2], drexc [1], drexc [2], eit_fulldisk
eit_proton_summary, event_movie [2], evt_grid, extract_fids, fit_bsc, fit_bsc_as
ftp_copy_new, get_elemabun [1], get_elemabun [2], get_ksc_holiday, goes_log
gtt_info, help_merge [1], help_merge [2], his_suncen, hsi_badpak_test
hsi_clk_delta_read, hsi_obs_summ_allrates [1], hsi_obs_summ_soc__define
hsi_ok_intv [1], hsi_ok_intv [2], hsi_pixon_smooth_patterns
hsi_sim_dummy_livetime, html_get_files, hxt_chsums, ihy_db, interpu_2d [2]
is_open, leak_sub [1], leak_sub [2], leak_sub [3], local_mag_extrap
make_goes_chianti_response [1], make_goes_chianti_response [2]
make_goes_chianti_response [3], make_goes_chianti_response [4], mdi_display
mdi_write_genxcat, merc_lwa, merc_pix, mewe_spec mewe_spec_lwa, mewe_spec [1]
mewe_spec [2], mk_sdcs, mk_spd, mk_ssc [1], mk_ssc [2], mkthumb, mon_sci5k
mreadfits_header, mreadfits_urls, mxf_read_data, oneline [1], oneline [2]
oneline_event [1], oneline_event [2], op_get_special, op_term_score, op_times
plot_ace, quick_hkplot [1], quick_hkplot [2], ratio_plotter [2], rd_fdss, rd_rasm
rd_sda_flare, rd_therm_rs232, read_eit, read_genxcat, read_trace, redo_disploi
redo_mon_sci5k, save_idl_routines, set_new_db, sobel_scale, spectro_plot
spex_delete [1], spex_delete [2], spex_hold [1], spex_hold [2], spex_merge [1]
spex_merge [2], spex_source [1], spex_source [2], split_colortab
ssw_fov_context, ssw_getcme_cdaw, ssw_getdst, ssw_sec_aktxt2struct
ssw_time2paths, sswstruct_fill [1], sxt_off_axis, sxt_patch_att, sxt_psf
sxt_uvf_info [1], sxt_uvf_info [3], sxtbox_fsp, temp_redo_catalog, timeline
trace_get_vignette, trace_jpeg_decomp, trace_make_tma, trace_make_tmr [1]
trace_rd_jpeg, trace_success_file, tv2 [1], tv2 [2], uncompress, unpack_trace
web_seq, write_trace_bin, xanal_emi, yo_mkos1_dbase, yo_xda2legacy, yopos [1]
yopos [2], zdeheliographinize, zhelio2xy, zheliographinize, zradialize
RESTRICTIONS:
Can't use recursively due to EXECUTE function
METHOD:
Uses EXECUTE and TEMPORARY function
REVISION HISTORY:
Copied from the Solar library, written by slf, 25-Feb-1993
Added to Astronomy Library, September 1995
Converted to IDL V5.0 W. Landsman September 1997
Modified, 26-Mar-2003, Zarro (EER/GSFC) 26-Mar-2003
- added FREE_MEM to free pointer/objects
[Previous]
[Next]
NAME:
DEREDD
PURPOSE:
Deredden stellar Stromgren parameters given for a value of E(b-y)
EXPLANATION:
See the procedure UVBYBETA for more info.
CALLING SEQUENCE:
deredd, eby, by, m1, c1, ub, by0, m0, c0, ub0, /UPDATE
INPUTS:
Eby - color index E(b-y),scalar (E(b-y) = 0.73*E(B-V) )
by - b-y color (observed)
m1 - Stromgren line blanketing parameter (observed)
c1 - Stromgren Balmer discontinuity parameter (observed)
ub - u-b color (observed)
These input values are unaltered unless the /UPDATE keyword is set
OUTPUTS:
by0 - b-y color (dereddened)
m0 - Line blanketing index (dereddened)
c0 - Balmer discontinuity parameter (dereddened)
ub0 - u-b color (dereddened)
OPTIONAL INPUT KEYWORDS:
/UPDATE - If set, then input parameters are updated with the dereddened
values (and output parameters are not used).
REVISION HISTORY:
Adapted from FORTRAN routine DEREDD by T.T. Moon
W. Landsman STX Co. April, 1988
Converted to IDL V5.0 W. Landsman September 1997
CALLED BY
UVBYBETA
[Previous]
[Next]
NAME:
deriv_arr
PURPOSE:
Procedure to return the rate of change of the
input array
INPUT:
inarr - the vector to find the derivative of
OUTPUT:
returns - If the input is "n" elements, the
output is "n-1" elements.
CALLED BY:
STR2ARR [1], STR2ARR [2], avoid_spikes [1], avoid_spikes [2], cal_fig_mich
calc_mtm_therm, check_ql_after_lz, check_sci5k_trunc, cnvtimstr, contact_num [1]
contact_num [2], eit_proton_summary, find_contig [1], find_contig [2], get_pks
goes2str, goes_plot [1], goes_plot [2], goes_plot [3], goes_plot [4]
goes_plot [5], histscale [1], histscale [2], img_summary [1], img_summary [2]
ip_que_dmpver, lwa_plot_arc, mdi_comp_eff, mk_orbit [1], mk_orbit [2]
mk_timarr [1], mk_timarr [2], mk_trace_i0, multi_hda2hxi, nobeyama_update
oplot_nts, plot_arc [1], plot_arc [2], plot_arc [3], plot_fft, plot_img_cadence
plot_sxl [1], plot_sxl [2], pr_uniq_hk, rd_ssl, rd_ydbtap, show_pix [1]
show_pix [2], sobel_scale, soon_catstat, sort_index [1], sort_index [2]
ssw_deltat, str2cols [1], str2cols [2], str2html [1], str2html [2], str2html [3]
strlist2html [1], strlist2html [2], sumvec, sxt_uniq [1], telem_sum, tim2tfss
timeavg [1], timeavg [2], timeline, totvect, tr_build_img [1], tr_rd_inventory
trace_goodobs, where_change [1], where_change [2], xso_butevents [1]
xso_butevents [2]
HISTORY:
Written 1988 by M.Morrison
17-Apr-92 (MDM) - Changed to be a "lindgen"
8-Sep-93 (MDM) - Return value as scalar if only one value
[Previous]
[Next]
NUMERICAL DIFFERENTIATION:
This subroutine calculates the derivative of a tabulated function
by converting an integral representation of the derivative to a
matrix equation and solving this by the method of regularization
(see Craig and Brown, Inverse Problems in Astronomy).
***************************************************************************
* *
* pro deriv_lud, x, y, dydx, midpoints=mid, reg_param=alpha, yerror=error,*
* monte_carlo=MONTE *
* *
***************************************************************************
Input: Double Arrays x[n] = x coordinate values
y[n] = y coordinate values
error[n] = error on y values
Double alpha = Regularization Parameter
Output: Double Array dydx[n-1] = derivative of y at the MIDPOINTs of the
x coordiantes supplied (dimension n-1).
mid[n-1] = midpoints where dydx supplied
error[n-1] = error on dydx[]
CALLS: ***
FIND_H, F_DIV, GEO, GET_ERROR, GET_KERNEL, GET_SIGN, RESIDUAL2, SOLVE, rescale
CALLED BY:
STOKESFIT, fit_limb
Note: on output, error is replaced by the error on dydx.
If error is undefined, no error estimation is done. This can take
alot of CPU time, but gives a good estimate of the errors by
solving the matrix equation MONTE times and recording the
rms deviation of the solutions. The default value for MONTE is 0
so you need to set it to something like 1000 for the error
estimation.
The regularization parameter (alpha) must be adjusted using the
error estimate. The two numbers printed out are roughly equal
when an appropriate value of the parameter has been selected.
Note that alpha=0 implies no smoothing. If alpha is not input,
the routine will guess a value equal to the square of the mean
grid point spacing times the number of grid points. If yerror is
set, the default regularization parameter is compute from the
error estimate on y.
T. Metcalf February 1990
T. Metcalf August 2001, Made some changes to get better
statistics to figure out the best
regularization parameter.
T. Metcalf April 19, 2005 Make /quiet really quiet. Use
svdc instead of the obsolete svd
routine.
T. Metcalf April 20, 2005 Made a better estimate of the
regularization parameter when
yerror is specified.
T. Metcalf April 25, 2005 Slight mod to reg parameter
computation. Error is no longer
fractional, it is the error on the
y values.
[Previous]
[Next]
NAME:
DETABIFY
PURPOSE:
Replaces tabs in character strings with appropriate number of spaces
EXPLANATION:
The number of space characters inserted is calculated to space
out to the next effective tab stop, each of which is eight characters
apart.
CALLING SEQUENCE:
Result = DETABIFY( CHAR_STR )
INPUT PARAMETERS:
CHAR_STR = Character string variable (or array) to remove tabs from.
OUTPUT:
Result of function is CHAR_STR with tabs replaced by spaces.
CALLED BY:
FXADDPAR [1], FXADDPAR [2], XDIFF, XMESSAGE, XTEXT, mees_log_read
RESTRICTIONS:
CHAR_STR must be a character string variable.
MODIFICATION HISTORY:
William Thompson, Feb. 1992.
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
DETABIFY
PURPOSE:
Replaces tabs in character strings with appropriate number of spaces
EXPLANATION:
The number of space characters inserted is calculated to space
out to the next effective tab stop, each of which is eight characters
apart.
CALLING SEQUENCE:
Result = DETABIFY( CHAR_STR )
INPUT PARAMETERS:
CHAR_STR = Character string variable (or array) to remove tabs from.
OUTPUT:
Result of function is CHAR_STR with tabs replaced by spaces.
CALLED BY:
FXADDPAR [1], FXADDPAR [2], XDIFF, XMESSAGE, XTEXT, mees_log_read
RESTRICTIONS:
CHAR_STR must be a character string variable.
MODIFICATION HISTORY:
William Thompson, Feb. 1992.
Converted to IDL V5.0 W. Landsman September 1997
[Previous]
[Next]
NAME:
detrend
PURPOSE:
Removes linear or higher order polynomial trends from 1-D data
vectors.
SAMPLE CALLING SEQUENCE:
coeff = DETREND(trended_data, detrended_data): remove linear trend.
coeff = DETREND(trended_data, detrended_data, ORDER=2):remove parabolic trend.
INPUT:
Y = 1-D data vector, any type; length = NPTS.
CALLS: ***
POLY_FIT
OPTIONAL KEYWORD INPUT:
ORDER = the order of the fit to the data to be removed.
RETURNS:
COEFF = 1-D array of coefficients to the trend fit.
OUTPUT OUTPUT:
YD = 1-D float array of detrended data; length = NPTS.
HISTORY:
12-Dec-96: T. Berger.
[Previous]
[Next]
Project : HESSI
Name : DEVICE2
Purpose : wrapper around DEVICE that uses 'CATCH' since DEVICE
seems to crash on some Linux systems.
Category : system utility
Syntax : IDL> device2,keywords=value
Outputs : See keywords
Keywords : Inherits all DEVICE keywords
CALLED BY:
XCAT
History : 24 Aug 2005, Zarro (L-3Com/GSFC)
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : SOHO - CDS
Name :
DEVICELIB
Purpose :
Definitions needed for the SERTS graphics device library.
Explanation :
Defines variables and common blocks needed for the SERTS graphics
device library. Adds system variables !BCOLOR and !ASPECT.
Use :
DEVICELIB
Inputs :
None.
Opt. Inputs :
None.
Outputs :
None.
Opt. Outputs:
None.
Keywords :
None.
Calls :
None.
CALLED BY:
ADD_PSYS, EIT_DISPLAY, EIT_POSTAGE, USE_CHIANTI, eit_ratio, plotman
ssw_setup_windows
Common :
None.
Restrictions:
This routine should be called only once, preferably in the startup
procedure.
Side effects:
System variables may be changed to their default values.
Category :
Utilities,
Prev. Hist. :
William Thompson, 10 November 1992.
Written :
William Thompson, GSFC, 10 November 1992.
Modified :
Version 1, William Thompson, GSFC, 23 June 1993.
Incorporated into CDS library.
Version :
Version 1, 23 June 1993.
[Previous]
[Next]
PROJECT:
SOHO - SUMER
NAME:
DHELP
PURPOSE:
Diagnostic HELP (activated only when DEBUG reaches DLEVEL)
EXPLANATION:
This routine acts similarly to the HELP command, except that
it is activated only when the environment variable DEBUG is
set to be equal to or greater than the debugging level set by
DLEVEL (default to 1). It is useful for debugging.
CALLING SEQUENCE:
DHELP, [,/structure] v1 [, v2, ...] [,dlevel=dlevel]
INPUTS:
V1, V2, ... - List of variables to be passed to the HELP command
OPTIONAL INPUTS:
None.
OUTPUTS:
All input variables are printed out on the screen
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
STRUCTURE - Set this keyword to show strcuture
DLEVEL - An integer indicating the debugging level; defaults to 1
CALLS:
None.
CALLED BY:
EIS_ITOOL_PTOOL [1], EIS_ITOOL_PTOOL [2], GET_CDS_POINT, ITOOL_PTOOL
MK_POINT_BASE
COMMON BLOCKS:
None.
RESTRICTIONS:
Can be activated only when the environment variable DEBUG (indicating
the debugging level) is set to an integer which is equal to
or greater than DLEVEL
Can print out a maximum of 20 variables (depending on how many
is listed in the code)
SIDE EFFECTS:
None.
CATEGORY:
PREVIOUS HISTORY:
Written March 20, 1995, Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
Version 1, Liyun Wang, GSFC/ARC, March 20, 1995
VERSION:
Version 1, March 20, 1995
[Previous]
[Next]
Project : SOHO-CDS
Name : DIFF_MAP
Purpose : Difference two maps
Category : imaging
Syntax : diff=diff_map(map1,map2)
Inputs : MAP1,MAP2 = image maps
Outputs : DIFF = MAP1-MAP2 or MAP1/MAP2
Keywords : RUNNING = if MAP2 is an array, then produce
a running difference (map(i)=map(i+1)-map(i), etc)
ROTATE = rotate maps to common time before rotating
RATIO = do ratio instead
MISSING = value for zero divide points
CALLS: ***
ADD_PROP, DROT_MAP, EXIST, GET_MAP_TIME, PR_SYNTAX, VALID_MAP
Restrictions: RUNNING is not yet implemented
History : Written 1 April 1998, D. Zarro, SAC/GSFC
Modified 13 Dec 2002, S. Hill, NOAA/SEC
Corrected syntactical errors (brackets vs. parens.)
and minor bug with ratio option
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
DIFF_ROT()
PURPOSE:
Computes the differential rotation of the sun
CALLING SEQUENCE:
Result = DIFF_ROT(ddays,latitude)
INPUTS:
DDAYS -- number of days to rotate
LATITUDE -- latitude in DEGREES
OUTPUTS:
Result -- Change in longitude over ddays days in DEGREES
KEYWORD PARAMETERS:
ALLEN -- use values from Allen, Astrophysical Quantities (DEFAULT)
HOWARD -- use values for small magnetic features from Howard et al.
SIDEREAL -- use sidereal rotation rate (DEFAULT)
SYNODIC -- use synodic rotation rate
RIGID -- rotate as rigid body
RATE -- user specified rotation rate in degrees per day
(only used if /RIGID)
PREVIOUS HISTORY:
Written T. Metcalf June 1992
CALLED BY:
ALIGN1BIGGRAM, ALIGN_AR, DROT_MAP, EIS_ITOOL_PTOOL [1], EIS_ITOOL_PTOOL [2]
EIT_SUB_UTIL_ROT, ITOOL_DISP_ROT, ITOOL_PTOOL, LAY1GKM, LIMB2DISK, MK_POINT_BASE
RD_AR, ROTATE_LIMB, ROT_SUBIMAGE, ROT_XY, SEL_AR, SXT_QLOOK, TRACE_ALIGN_CUBE
TRACE_CUBE_POINTING, TRACE_MDI_ALIGN, V4DIFF_ROT, get_survey, mplot_nar
plot_ar_pfi, plot_nar [1], plot_nar [2], sleazy_rot, sol_rot [1], sol_rot [2]
ssw_track_fov, track_h2a [1], track_h2a [2], track_h2a [3], zdiff_rot, zhelio2xy
ztrack
MODIFICATION HISTORY:
Version 1, Liyun Wang, GSFC/ARC, November 17, 1994
Incorporated into the CDS library
Version 2, Zarro, GSFC, 1 July 1997 - made Howard the default
Version 3, Zarro, GSFC, 19 Sept 1997 - corrected Howard coeff's
Version 4, Zarro (EER/GSFC) 22 Feb 2003 - added /RIGID
Version 5, Zarro (EER/GSFC) 29 Mar 2003 - added /RATE
[Previous]
[Next]
NAME: diff_str
PURPOSE: Boolean function returns true (1) when differences
are found between the two input structures. IF no
differences are found returns false (0).
INPUT:
str1 1st structure for comparison
str2 2nd structure for comparison
CALLS: ***
STR_DIFF, str_is [1], str_is [2], tag_index [1], tag_index [2]
Optional Keyword Input:
diff - if set, only checks tags (
tnames - vector of tagnames to check
tnums - vector of tnums to check
Optional Keyword Output:
dtnames - vector of tagnames which differ
dtnums - vector of tagnumbers which differ
RETURNED:
0 no differences found
1 differences found and listed in dtags
HISTORY: written 20-Feb-92, slf/gal
Restrictions - not yet recursive (no nested tags)
[Previous]
[Next]
Name: difference_movie
Purpose: difference a data cube and provide some statistics
Input Parameters:
index - structure vector of input
data - associated 3D cube
Output Parameters:
oindex - output structure vector (n_elements(index)-1)
odata - the difference movie (nimages=nimages(data)-1)
CALLS: ***
BOX_MESSAGE, DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], anytim [1]
anytim [2], anytim [3], anytim [4], anytim [5], data_chk [1], data_chk [2]
delvarx [5], update_history
CALLED BY:
ssw_flare_locator
History:
10-Nov-1998 - S.L.Freeland
23-Nov-1998 - call <update_history> to update OINDEX
[Previous]
[Next]
NAME:
DIJ
PURPOSE:
Calculate the 'distance' of each pixel within an image,
or each index within an array, from a given pixel,
specified by indices i and j (x and y).
CALL:
distance_array = dij(input_array, i, j)
INPUTS:
A - Input array
i,j - xy indices of pixel relative to which distances are calculated
OPTIONAL INPUT:
OUTPUTS:
Array of distances
OPTIONAL OUTPUT:
METHOD:
Define x and y coordinate arrays corresponding to input matrix,
then use these to calculate matrix of distances relative to
reference coordinates by means of Theorem of Pythagoras.
CALLS: ***
BOX_MESSAGE
CALLED BY:
moment2d
HISTORY:
10-Aug-2001 - Written by GLS.
4-Sep-2001 - S.L.Freeland - common block to avoid recalculation
if last = current
[Previous]
[Next]
Project : SOHO - CDS
Name : DIMREBIN
Purpose : As REBIN, but dimensions supplied as an array
Explanation : With REBIN, the number of dimensions is hardcoded into the
function call. This function takes an array with the sizes of
the dimensions of the result, and performs a REBIN call with
the correct number of dimensions.
Use : array = DIMREBIN(ARRAY,DIMENSIONS)
Inputs : ARRAY : the array to be rebinned.
DIMENSIONS : The dimensions of the result. As with rebin, the
number of elements in the result must be the same
as the number of elements in the input array.
Opt. Inputs : None.
Outputs : Returns rebined array
Opt. Outputs: None.
Keywords : SAMPLE : As in REBIN
Calls : None.
CALLED BY:
APPLY_CDS_ADEF, CDS_TILT_COR, CFIT_BLOCK, MK_CDS_ANALYSIS, XCFIT_BLOCK
Common : None.
Restrictions: Assumes sensible inputs
Side effects: None.
Category : Array utility
Prev. Hist. : None.
Written : S. V. H. Haugan, UiO, 10 January 1997
Modified : Not yet
Version : 1, 10 January 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : DIMREFORM
Purpose : As reform, but dimensions supplied as an array
Explanation : With REFORM, the number of dimensions is hardcoded into the
function call. This function takes an array with the sizes of
the dimensions of the result, and performs a REFORM call with
the correct number of dimensions.
Use : array = DIMREFORM(ARRAY,DIMENSIONS)
Inputs : ARRAY : the array to be reformed.
DIMENSIONS : The dimensions of the result. As with reform, the
number of elements in the result must be the same
as the number of elements in the input array.
Opt. Inputs : None.
Outputs : Returns reformed array
Opt. Outputs: None.
Keywords : OVERWRITE : As in REFORM
Calls : None.
CALLED BY:
APPLY_CDS_ADEF, CDS_CORR_GRADIENT, CFIT_BLOCK, MK_CDS_ANALYSIS, XCFIT_BLOCK
Common : None.
Restrictions: Assumes sensible input
Side effects: None.
Category : Array utility
Prev. Hist. : None.
Written : S. V. H. Haugan, UiO, 10 January 1997
Modified : Not yet
Version : 1, 10 January 1997
[Previous]
[Next]
Name: dir_exist
Purpose: check if elements of input list are existing directories
Input Parameters:
dirlist - string/string array of directories to check
Output:
function returns boolean (0 - not directory, 1-directory)
Calling Sequence:
dirs=dir_exist(dirlist)
CALLS: ***
str_replace [1], str_replace [2]
CALLED BY:
MAKE_CHIANTI_SPEC, USE_CHIANTI, ch_ss
History:
2-Aug-93 (SLF)
29-Jun-2000 - RDB - Added Windows case
[Previous]
[Next]
Name: dir_since
Purpose: directory listing for spcified age files
Input Parameters:
indir - directory(ies) or files to search
infage - file age to consider (days)
If positive, OLDER than this number of days
If negative, NEWER than this number of days
keyword Parameters:
PATTERN - file pattern to include (def=all)
NOFOLLOW - if set, do not follow symbolic links (default=follow)
VERBOSE - if set, echo commands
FILES - set this if 1st parameter is FILELIST (instead of directories)
(in this case, PATTERN is ignored)
Calling Sequence:
Two modes of operation -
Default uses directory list and optional file PATTERN to search
IDL>oldfiles=dir_since(directories, days>0 [,pattern=pattern] )
IDL>newfiles=dir_since(directories, days<0 [,pattern=pattern] )
Use /FILES switch if input is explicit file list instead of directories
IDL>oldfiles=dir_since(filelist, days>0 , /files )
IDL>newfiles=dir_since(filelist, days<0 , /files )
This second mode can be used to 'weed out' old or new files from
and existing filelist vector
CALLED BY:
monitor_scratch [1], monitor_scratch [2], ssw_contrib_monitor, xsw2tree
xsw2tree_event, xswlist [2]
History:
2-Nov-1993 (SLF)
26-Feb-1999 (SLF) - follow symbolic links, add PATTERN keyword
document, add /FILES (permit filtering filelist)
26-aug-2005 (SLF) - fix prob when '//' present in file names
CALLS: ***
BOX_MESSAGE, BREAK_FILE [1], BREAK_FILE [2], BREAK_FILE [3], OS_FAMILY
STR_LASTPOS [1], break_file [4], curdir [1], curdir [2], data_chk [1]
data_chk [2], rem_elem [1], rem_elem [2], str_lastpos [2], str_replace [1]
str_replace [2]
Restrictions:
UNIX only
[Previous]
[Next]
Name: disk_hog
Purpose: show disk usage, order by size
Input Parameters:
path - if set, path for summary search (default is local user area)
Calling Sequence:
disk_hog [,path] [/hc]
CALLS: ***
POPD, PUSHD, REVERSE, curdir [1], curdir [2], get_host [1], get_host [2]
get_logenv [1], get_logenv [2], is_member [1], is_member [2], prstr [1], prstr [2]
rd_tfile [1], rd_tfile [2], ssw_strsplit, strjustify, ut_time [1], ut_time [2]
CALLED BY:
ydb_use
History:
Circa 1-jan-1995 (SLF)
20-dec-1995 (SLF) fix KB option for OSF
09-May-2003, William Thompson - Use ssw_strsplit instead of strsplit
[Previous]
[Next]
NAME:
diskfree
PURPOSE:
To return the number of free bytes available on the disk in megabytes.
Also returns total and used bytes and file system and mount names.
CALLING SEQUENCE:
d = diskfree('/yd0')
d = diskfree('/yd0', tot=tot, used=used, filesys=filesys, mount=mount)
INPUT:
disk
OUTPUT:
Returns the number of free bytes in units of megabytes
OPTIONAL KEYWORD OUTPUT:
tot - Total # bytes on the disk (in megabytes)
used - # of bytes used
filesys - the file system name
mount - the mount name
CALLS: ***
STR2ARR [1], STR2ARR [2], is_member [1], is_member [2]
CALLED BY:
NET_DIR_DIFF, data_compress [1], data_compress [2], data_compress [3]
dbase2disk, delete_week [1], delete_week [2], disk_monitor [1], disk_monitor [2]
flares2disk, mo_check, mo_prep
HISTORY:
Written 14-Mar-92 by M.Morrison
19-Mar-92 (MDM) - Modified to return results as scalars if only
only called for one disk
24-Mar-92 (MDM) - Modified to work on sun machines - there is
only one header line
14-Dec-92 (MDM) - Modified calculation for number of lines for
header to use 1 for all machines except
DEC/Ultrix which has 2 lines of header.
Confirmed 1 line of header for Sun, Mips, SGI
- Also modified to work on SGI
8-Jun-1994 (SLF) - Return -1 if cannot stat disk (avoid crash)
3-Dec-1994 (SLF) - handle long disk names(caused split entries&crash!)
7-Mar-1995 (SLF) - add OSF, flag vms
21-aug-2001 (SLF) - no header protection (SunOS/ultra-10?)
[Previous]
[Next]
Project : SOHO - CDS
Name : DISMOUNT
Purpose : Emulates the VMS DISMOUNT function in Unix.
Explanation : Emulates the VMS DISMOUNT function in the Unix environment.
Although this is not a standard IDL function, it is available
as a separate LINKIMAGE routine for VMS.
The main purpose of this procedure is to close the file unit
open on the tape device, and optionally to unload the tape.
Errors can result if the tape is unloaded manually rather than
using this routine.
**Unix only**
Use : DISMOUNT, UNIT
Inputs : UNIT = Tape unit number. Tape drives are selected via the UNIX
environment variables "MT1", "MT2", etc. The desired
tape drive is thus specified by numbers, as in VMS.
Must be from 0 to 9.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : NOUNLOAD = If set, then the tape is simply rewound, not taken
off line.
Calls : ***
CHECK_TAPE_DRV [1], CHECK_TAPE_DRV [2]
Common : CHCK_TAPE_DRVS contains array TAPE_LUN, containing logical unit
numbers for each tape device, and TAPE_OPEN, which tells
whether each device is open or not.
Restrictions: The environment variable "MTn", where n corresponds to the
variable UNIT, must be defined. E.g.,
setenv MT0 /dev/nrst0
Requires IDL v3.1 or later.
Side effects: The device file is opened.
Category : Utilities, I/O, Tape.
Prev. Hist. : None.
Written : William Thompson, GSFC, 21 December 1993.
Modified : Version 1, William Thompson, GSFC, 21 December 1993.
Version : Version 1, 21 December 1993.
[Previous]
[Next]
NAME:
disp_gen
PURPOSE:
To use the "TV2" and "XYOUTS2" options to display images and
data. Useful for making pretty prints.
SAMPLE CALLING SEQUENCE:
disp_gen
disp_gen, 0, bytscl(img, top=!d.n_colors-1), 'MDI Dopplergram', $
'16-JAN-96 12:49:09 UT', foot1='SOI/MDI'
disp_gen, 0, bimg, tit1, subtit1, /std_foot
disp_gen,10,dist(200),'main tit1',/std_foot,img2=dist(200),smin=[0,0],smax=[141,100], $
tit1='image 1 tit',tit2='image 2 tit',subtit1='subtitle for image 1',/date,mask=indgen(2000)
disp_gen,20,dist(200),xarr=indgen(100),yarr=findgen(100)^3.,xtit='x-title',ytit='y-title',mtit='plot title'
disp_gen,40,img1,img2=img2,img3=img3,img4=img4,smin=[0,0,-10,20],smax=[100,200,400,400]
disp_gen, code0, img1, mtit, msubtit, $
tit1=tit1, subtit1=subtit1, $
img2=img2, tit2=tit2, subtit2=subtit2, $
smin=smin, smax=smax, sigma=sigma, $
foot1=foot1, foot2=foot2, date=date, $
xsize=xsize, ysize=ysize, $
color=color, hc=hc, fix_font=fix_font, $
loadct=loadct, mask_ss=mask_ss, $
nlab=nlab, fmt=fmt, axis1=axis1, $
avg=avg, log_hist=log_hist, $
std_foot=std_foot, outfil=outfil, $
xarr=xarr, yarr=yarr, xrange=xrange, yrange=yrange, xtit=xtit, ytit=ytit
disp_gen, 1, img, cmds='disp_mdi_hr_fov, 0, 100, scale=0.5'
disp_gen, 100, img, msubtit, msubtit2, titn=titn, subtitn=subtitn
disp_gen,100,indgen(20,20,9),titn=sindgen(9),'main tit', 'sub tit',subtitn='subtit'
CAUTION:
Use the LOADCT keyword option to be sure that the colors are all reset
and that the color table is correct. The capability to inherit
the modified table (by xloadct or something else) should work, but
is limited by a bug with IDL (applies only to 8 bit color displays?)
INPUT:
code - =0 for just a single image with titles
=1 for a single image with a color bar
=10 for single image shown twice with 3 plots
=11 for two separate images being passed in, with 3 plots
=12 for two separate images being passed in, no plots
=20 for single image with plot
=40 for four image display with color bar
=100 for NxN images (put in images as data cube)
=104 for 2x2 images (put in images as img1,img2,img3,img4)
img1 - the image to display
mtit - Main title
msubtit - Main subtitle
tit1 - Title to go over image 1 (only code 10 and 11)
subtit1 - subtitle over image 1 (only code 10 and 11)
img2 - the second image to display (only code 11)
tit2 - Title to go over image 2 (only code 10 and 11)
subtit2 - subtitle over image 2 (only code 10 and 11)
smin - the scaling minimum for display (two element array for code 11)
smax - the scaling minimum for display (two element array for code 11)
sigma - the scaling range for code 10 option (defaults to +/- 1 sigma)
Set the range for code 0 and 1 options
foot1 - footnote for lower left corner
foot2 - footnote for lower right corner
std_foot- if set, use foot1='SOI/MDI' and foot2='Stanford Lockheed
institute for Space Research'
date - if set, display the date at the bottom of the plot
hc - if set, set device to PS and send to the printer (hardcopy)
color - if set, use color option on hard copy and send to the color
printer on /HC option
fix_font -if set, set the default font so the X display character sizes
are closer to matching the printouts
loadct - the color table to establish
nlab - number of labels for the color bars (optionally two elements)
fmt - format statement for the color bar labels and avg/min/max option
avg - if set, plot all line/column average instead of center line/column
(only code 10 and 11)
log_hist- if set, display the histogram in log (only code 10 and 11)
mask_ss - the mask for the values to display min/max/avg/dev/histogram
(only code 10 and 11)
outfil - the output file name if device is PS (or /hc is used)
xarr - x-array to plot (code 20 only)
yarr - y-array to plot (code 20 only)
xrange - x-range to plot (code 20 only)
yrange - y-range to plot (code 20 only)
xtit - x-title (code 20 only)
ytit - y-title (code 20 only)
compass - If set, then draw a little N/S, E/W compass in lower left
gif - If set, redirect to the Z buffer and then read into a GIF file
cmds - If set, EXECUTE the command strings (allows the execution
of subroutines to do secondary displaying)
footnotes- A string array of items to display under the image (only
good for code 0 and code 1.
ppinch - Pixels per inch value to use with TV2
Sample: X = 7.0 inch max for 600 pixel = 85.7 ppinch
Y = 9.5 inch max for 800 pixel = 84.2 ppinch
When adjusting sizes with XSIZE and YSIZE, it will take the largest ppinch
to make sure the other dimension fits.
For LPARL, the codonics color printer wants ppinch = 90 to fix
(because of reduced page size)
gamma - Adjust the color table by this value if passed
CALLS: ***
CONGRID [1], CONGRID [2], CONGRID [3], DISP1GEN, GAMMA_CT, LOADCT, SETPS, STDEV
get_xfont [1], get_xfont [2], mk_refbar [1], mk_refbar [2], plots2, pprint [1]
pprint [2], tv2 [1], tv2 [2], ut_time [1], ut_time [2], xyouts2 [1], xyouts2 [2]
zbuff2file [1], zbuff2file [2]
CALLED BY:
check_ff_load, xdisp_fits, xdisp_trace [1], xdisp_trace [2], xdisp_trace2
xdisp_trace3
HISTORY:
Written 22-Apr-96 by M.Morrison
23-Apr-96 (MDM) - Added AXIS2 option and enabled labeling the bar for code 12
15-May-96 (MDM) - Added msubtit2
15-May-96 (MDM) - Added option 40
1-Aug-96 (MDM) - Added COMPASS and GIF options
21-Oct-96 (MDM) - Expanded SIGMA option to codes 0 and 1
24-Oct-96 (MDM) - Added WINDOW option
- Modified so that SMIN/SMAX were not defined
and passed out (when not passed in)
6-Nov-96 (MDM) - Put 24-Oct mods online
- Replaced "set_plot,'ps'" with setps
21-Nov-96 (MDM) - Added FOOTNOTES
10-Jun-97 (MDM) - Added code 100
13-Jun-97 (MDM) - Added code 104 and keywords xcorner,ycorner,land
25-Jun-97 (MDM) - Added ppinch and gamma
9-Nov-06 S.L.Freeland - elevate->ssw-gen for xdisp_fits.pro
[Previous]
[Next]
PROJECT:
SOHO - CDS/SUMER
NAME:
DISPLAY_OK()
PURPOSE:
Detect if device display has been set properly
CATEGORY:
EXPLANATION:
SYNTAX:
Result = display_ok()
EXAMPLES:
INPUTS:
OPTIONAL INPUTS:
None.
OUTPUTS:
None.
OPTIONAL OUTPUTS:
None.
KEYWORDS:
None.
COMMON:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
HISTORY:
Version 1, December 1, 1996, Liyun Wang, NASA/GSFC. Written
CONTACT:
Liyun Wang, NASA/GSFC (Liyun.Wang.1@gsfc.nasa.gov)
[Previous]
[Next]
NAME:
DIST_CIRCLE
PURPOSE:
Form a square array where each value is its distance to a given center.
EXPLANATION:
Returns a square array in which the value of each element is its
distance to a specified center. Useful for circular aperture photometry.
CALLING SEQUENCE:
DIST_CIRCLE, IM, N, [ XCEN, YCEN, /DOUBLE ]
INPUTS:
N = either a scalar specifying the size of the N x N square output
array, or a 2 element vector specifying the size of the
N x M rectangular output array.
OPTIONAL INPUTS:
XCEN,YCEN = Scalars designating the X,Y pixel center. These need
not be integers, and need not be located within the
output image. If not supplied then the center of the output
image is used (XCEN = YCEN = (N-1)/2.).
OUTPUTS:
IM - N by N (or M x N) floating array in which the value of each
pixel is equal to its distance to XCEN,YCEN
OPTIONAL INPUT KEYWORD:
/DOUBLE - If this keyword is set and nonzero, the output array will
be of type DOUBLE rather than floating point.
CALLED BY:
SKY, darklimb_correct, eit_ring_flux
EXAMPLE:
Total the flux in a circular aperture within 3' of a specified RA
and DEC on an 512 x 512 image IM, with a header H.
IDL> adxy, H, RA, DEC, x, y ;Convert RA and DEC to X,Y
IDL> getrot, H, rot, cdelt ;CDELT gives plate scale deg/pixel
IDL> cdelt = cdelt*3600. ;Convert to arc sec/pixel
IDL> dist_circle, circle, 512, x, y ;Create a distance circle image
IDL> circle = circle*abs(cdelt[0]) ;Distances now given in arcseconds
IDL> good = where(circle LT 180) ;Within 3 arc minutes
IDL> print,total( IM[good] ) ;Total pixel values within 3'
RESTRICTIONS:
The speed of DIST_CIRCLE decreases and the the demands on virtual
increase as the square of the output dimensions. Users should
dimension the output array as small as possible, and re-use the
array rather than re-calling DIST_CIRCLE
MODIFICATION HISTORY:
Adapted from DIST W. Landsman March 1991
Allow a rectangular output array W. Landsman June 1994
Converted to IDL V5.0 W. Landsman September 1997
Add /DOUBLE keyword, make XCEN,YCEN optional W. Landsman Jun 1998
[Previous]
[Next]
NAME:
DIST_ELLIPSE
PURPOSE:
Create a mask array useful for elliptical aperture photemetry
EXPLANATION:
Form an array in which the value of each element is equal to the
semi-major axis of the ellipse of specified center, axial ratio, and
position angle, which passes through that element. Useful for
elliptical aperture photometry.
CALLING SEQUENCE:
DIST_ELLIPSE, IM, N, XC, YC, RATIO, POS_ANG, /DOUBLE
INPUTS:
N = either a scalar specifying the size of the N x N square output
array, or a 2 element vector specifying the size of the
M x N rectangular output array.
XC,YC - Scalars giving the position of the ellipse center. This does
not necessarily have to be within the image
RATIO - Scalar giving the ratio of the major to minor axis. This
should be greater than 1 for postion angle to have its
standard meaning.
OPTIONAL INPUTS:
POS_ANG - Position angle of the major axis, measured counter-clockwise
from the Y axis. For an image in standard orientation
(North up, East left) this is the astronomical position angle.
OPTIONAL INPUT KEYWORD:
/DOUBLE - If this keyword is set and nonzero, the output array will
be of type DOUBLE rather than floating point.
OUTPUT:
IM - REAL*4 elliptical mask array, of size M x N. THe value of each
pixel is equal to the semi-major axis of the ellipse of center
XC,YC, axial ratio RATIO, and position angle POS_ANG, which
passes through the pixel.
EXAMPLE:
Total the flux in a elliptical aperture with a major axis of 3', an
axial ratio of 2.3, and a position angle of 25 degrees centered on
a specified RA and DEC. The image array, IM is 200 x 200, and has
an associated FITS header H.
ADXY, H, ra, dec, x, y ;Get X and Y corresponding to RA and Dec
GETROT, H, rot, cdelt ;CDELT gives plate scale degrees/pixel
cdelt = abs( cdelt)*3600. ;CDELT now in arc seconds/pixel
DIST_ELLIPSE, ell, 200, x, y, 2.3, 25 ;Create a elliptical image mask
ell = ell*cdelt(0) ;Distances now given in arcseconds
good = where( ell lt 180 ) ;Within 3 arc minutes
print,total( im(good) ) ;Total pixel values within 3'
RESTRICTIONS:
The speed of DIST_ELLIPSE decreases and the the demands on virtual
increase as the square of the output dimensions. Users should
dimension the output array as small as possible, and re-use the
array rather than re-calling DIST_ELLIPSE
REVISION HISTORY:
Written W. Landsman April, 1991
Somewhat faster algorithm August, 1992
Allow rectangular output array June, 1994
Converted to IDL V5.0 W. Landsman September 1997
Added /DOUBLE keyword W. Landsman July 2000
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
DMY2YMD()
PURPOSE:
To convert date string DD-MM-YY format to YY/MM/DD format.
EXPLANATION:
CALLING SEQUENCE:
Result = DMY2YMD(date)
INPUTS:
DATE -- A string scalar in DD-MM-YY or DD/MM/YY format.
OPTIONAL INPUTS:
None.
OUTPUTS:
Result -- A string scalar in 19YY/MM/DD format.
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
None.
CALLS: ***
STR_SEP
CALLED BY:
GET_OBS_DATE, ITOOL_GET_TIME
COMMON BLOCKS:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
CATEGORY:
PREVIOUS HISTORY:
Written September 26, 1994, by Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
VERSION:
Version 1, September 26, 1994
[Previous]
[Next]
Name: do_demo
Purpose: run an idl demo program (format can be IDL main routine)
Input Parameters:
demofile - name of file to demo (execute) - if none, menu select from
files in $DIR_GEN_DOC with names: XXXdemo.pro
Keyword Parameters:
pause - if set, pause after IDL statement execution until user <CR>s
wait - if set, number of seconds to wait between each line
Calling Sequence:
do_demo [,demofile]
Non comment lines in demofile are displayed with highlights to terminal
and then executed - comment lines are echoed
History:
10-Jan-1995 (SLF)
CALLS: ***
FILE_EXIST [2], file_exist [1], file_exist [3], file_list [1], file_list [2]
prstr [1], prstr [2], rd_tfile [1], rd_tfile [2], strjustify, tbeep [1], tbeep [2]
tbeep [3], wmenu_sel [1], wmenu_sel [2]
Restrictions:
single line IDL commands for now
[Previous]
[Next]
NAME:
do_disp_month
PURPOSE:
A driver program to make the monthly MDI magnetogram GIF file
SAMPLE CALLING SEQUENCE:
do_disp_month, '199611'
do_disp_month, inpre='smdi_maglc_re_', outpre='hr_mag_'
do_disp_month, year='1997'
for i=1991,1997 do do_disp_month, year=strtrim(i,2), /sxt
do_disp_month, eit='171'
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], concat_dir [4], eit_colors
file_list [1], file_list [2], fits_disp_month [1], fits_disp_month [2]
prstr [1], prstr [2]
HISTORY:
Written 17-Nov-96 by M.Morrison
19-May-97 (MDM) - Expanded to allow different prefix on the
input and output
- Added /hr option
20-May-97 (MDM) - Added MAPFILE option
22-May-97 (MDM) - Made indir/outdir keywords to allow SXT
to use the driver
- Added /sxt keyword
30-May-97 (MDM) - Renamed from "go_disp_month" to "do_disp_month"
- Added EIT
15-Oct-97 (MDM) - Changed to use sub_dirs for MDI
12-May-99 (MDM) - Replaced /hosts/pore1/usr/local/etc/httpd/htdocs
with /www
3-Aug-99 (MDM) - Replaced "space.lockheed.com" with "lmsal.com"
[Previous]
[Next]
Project : SOHO-CDS
Name : DO_EIT_MAP
Purpose : make EIT maps
Category : planning
Explanation : wrapper around mk_eit_map that works within SSW and CDS-SOFT
Syntax : emap=do_eit_map(data,header,index=index)
Inputs : DATA = data array
HEADER = FITS header (if not entered check INDEX)
Opt. Inputs :
Outputs : DATA = scale EIT image
Keywords : INDEX = index structure (used if HEADER not entered)
OUTSIZE = output image size
CALLS: ***
EXIST, GET_SOHO_ROLL, IS_STRING, MK_EIT_MAP, PR_SYNTAX, ROT_FITS_HEAD
fitshead2struct, is_struct
CALLED BY:
PLOT_CDS_POINT [1], PLOT_CDS_POINT [2]
History : Written 1 June, 1998 Zarro (SAC/GSFC)
Modified 9 July, 2003 Zarro (EER/GSFC) - check SOHO orientation
Modified 9 Feb, 2004 Zarro (L-3Com/GSFC) - improved ROLL correction
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Name : DO_EIT_SCALING
Purpose : scale EIT images (degrid, take log, etc)
Category : planning
Syntax : data=do_eit_scaling(data,header,index=index)
Inputs : DATA = data array
HEADER = FITS header (if not entered check INDEX)
Opt. Outputs: DATA = scaled EIT data array
Keywords : INDEX = index structure (used if HEADER not entered)
NO_COPY = input data is destroyed to conserve memory
LOG = log10 scale image
NORMALIZE = normalize images by exposure time
NO_PREP = don't explicitly call EIT_PREP
FLIPPED = flag input image was flipped
CALLS: ***
ADD_PATH [1], ADD_PATH [2], COPY_VAR, DATATYPE [1], DATATYPE [2], DATATYPE [3]
DPRINT, EXIST, HAVE_PROC, IS_DIR, ITOOL_EIT_DEGRID, MK_EIT_ENV, PR_SYNTAX, STRUP
fitshead2struct
CALLED BY:
ITOOL_EIT_SCALE, PLOT_CDS_POINT [1], PLOT_CDS_POINT [2], lasteit
ssw_fov_context
History : Written 1 June 1998 D. Zarro, SAC/GSFC
1 September 2000 J. Newmark, add response correction for
eit_prep
15-Nov-2001, Zarro (EITI/GSFC) - added check for SSW EIT_PREP
10-Dec-2001, Zarro (EITI/GSFC) - added check for Astro libs
12-Dec-2006, Zarro (L-3Com/GSFC) - added check for prep'ed data
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
NAME:
DO_FITSFILES
PURPOSE:
Create FITS format files for all days between firstday and lastday
for GOES 6, GOES 7, GOES 8, GOES 9, and GOES 10.
CATEGORY:
GOES
CALLING SEQUENCE:
DO_FITSFILES, Firstday, Lastday
CALLS: ***
ATIME [1], ATIME [2], GFITS_W, UTIME [1], UTIME [2]
INPUTS:
Firstday: First day passed as ASCII times - 'yy/mm/dd'
Lastday: Last day passed as ASCII times - 'yy/mm/dd'
OUTPUTS:
None explicit. Gfits_w crates fits file on disk.
PROCEDURE:
Call utime atime to turn 'yy/mm/dd' into number of seconds past
79/1/1,000 ; call atime to turn the firstday into
'dd-Mon-yy hh:mm:ss.xxx' and call gfits_w to write fits files for
all days between firstday and lastday.
MODIFICATION HISTORY:
Written by Kim Tolbert, 07/93
Mod. 05/95 by AES. Added call for GOES 8.
Mod. 08/12/96 by RCJ. Added documentation.
Mod. 10/07/96 by AES. Removed calls for GOES 6 & 7,
since that data has stopped coming in.
Mod. 7/21/98 by AES. Added call for GOES 10.
Mod. 1/19/98 by AES. Added y2k keyword so FITS headers will
be y2k compliant. Removed call for GOES 9, no longer funct.
[Previous]
[Next]
NAME:
do_reg_backup
PURPOSE:
To make a regular backup of a directory tree
SAMPLE CALLING SEQUENCE:
do_reg_backup
do_reg_backup, type, bdir_in, bdir_out
do_reg_backup, 'month', '/mdisw', '/data0/backups', levels=0
do_reg_backup, 'month'
METHOD:
The desire is to make a weekly and monthly backup with
archives of the last few weeks/months. This routine
will cycle through N weeks/months and keep reusing the
directory. The routine can be run daily with the
/check switch and then it will only make the weekly
backups on Sunday and monthly's on the first of the month.
For the command:
IDL> do_reg_backup, 'month', '/mdisw', '/data0/backups'
and assuming 14-Apr-97, it will backup
/mdisw/idl, /mdisw/*/idl, /mdisw/*/*/idl
/mdisw/setup, /mdisw/*/setup, /mdisw/*/*/setup
and put it into
/data0/backups/week2
A file /data0/backups/week2_970414.2024 is also created
so that the date/time of the backup can be easily found.
OPTIONAL INPUT:
type - The type of backup ("week" or "month")
bdir_in - The base directory to use as input
bdir_out- The base directory to use as output
CALLS: ***
ARR2STR [1], Arr2Str [2], CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3]
FILE_EXIST [2], anytim2ex [1], anytim2ex [2], anytim2weeks [1], anytim2weeks [2]
concat_dir [4], ex2dow [1], ex2dow [2], ex2fid [1], ex2fid [2], file_exist [1]
file_exist [3]
OPTIONAL KEYWORD INPUT:
qdebug - If set, don't do the spawning
nweeks - Number of weeks to save (4 max, default=3)
nmonths - Number of months to save (12 max, default=3)
subdirs - The list of directories to backup.
(Default is "idl" and "setup")
levels - How many levels down to look for "subdirs"
(Default=2)
check - If set, then check that it is Sunday (for
weekly backup) or the 1st of the month (for
monthly backups)
HISTORY:
Written 14-Apr-97 by M.Morrison
[Previous]
[Next]
Name: doc_head
Purpose: return idl documentation header from source file
Input Paramters:
source - file name containing idl source code and header
Output Paramters:
header - all text between ;+ and ;-
definition - procedure/function definition
CALLS: ***
rd_tfile [1], rd_tfile [2], remtab [1], remtab [2], wc_where [1], wc_where [2]
CALLED BY:
break_doc [1], break_doc [2], break_doc [3], fastdoc [1], fastdoc [2]
History: slf, 8-feb-1993
slf, 15-mar-1993 ; add case check for definition
slf, 25-Jan-1993 ; allow comments = ;-----------------
slf, 30-Mar-1994 ; case where 2 headers in one file, protect
MDM, 8-Mar-1995 ; Fixed problem case
slf, 9-mar-1995 ; definition termination criteria
[Previous]
[Next]
NAME:
DOC_LIB_UNIX
PURPOSE:
Extract the documentation template of one or more procedures.
CATEGORY:
Help, documentation.
CALLING SEQUENCE:
doc_lib_unix ;For prompting.
doc_lib_unix, Name ;Extract documentation for procedure Name using
the current !PATH.
INPUTS:
Name = string containing the name of the procedure or "*" for all.
OPTIONAL INPUT PARAMETERS:
PRINT = keyword parameter which, if set to 1, sends output
of doc_lib_unix to lpr. If PRINT is a string, it is a shell
command used for output with its standard input the
documentation. I.e. PRINT="cat > junk"
DIRECTORY = directory to search. If omitted, use current directory
and !PATH.
MULTI = flag to allow printing of more than one file if the module
exists in more than one directory in the path + the current
directory.
OUTPUTS:
No explicit outputs. Documentation is piped through more unless
/PRINT is specified.
CALLED BY:
XDL [1], XDL [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
output is produced on terminal or printer.
RESTRICTIONS:
??
PROCEDURE:
Straightforward.
MODIFICATION HISTORY:
DMS, Feb, 1988.
[Previous]
[Next]
NAME:
DOC_LIB_VMS
PURPOSE:
Extract the documentation template of one or more procedures.
CATEGORY:
Help, documentation.
CALLING SEQUENCE:
DOC_LIB_VMS ;For prompting.
DOC_LIB_VMS, Name ;Extract documentation for procedure Name using
the current !PATH.
INPUTS:
Name: A string containing the name of the procedure.
KEYWORDS:
FILE: If this keyword is set, the output is sent to the file
"userlib.doc", in the current directory.
PRINT: If set, this keyword sends the output of DOC_LIB_VMS to lpr.
PATH: An optional directory/library search path. This keyword uses
the same format and semantics as !PATH. If omitted, !PATH is
used.
OUTPUTS:
Documentation is output to terminal or printer.
CALLED BY:
XDL [1], XDL [2]
COMMON BLOCKS:
None.
SIDE EFFECTS:
Output is produced on terminal or printer.
RESTRICTIONS:
None.
PROCEDURE:
Straightforward.
MODIFICATION HISTORY:
Written, DMS, Sept, 1982.
Added library param, Jul 1987.
Unix version, Feb, 1988.
Revised for VMS Version 2, 15 December 1989
Mods by RDB, MSSL, 12-Mar-92:
i) fix search of long path names by segmenting
ii) include current directory in search
[Previous]
[Next]
NAME:
doc_library2
PURPOSE:
To find a routine and to display the full contents of the file.
Search in the order of !path. If a wildcard * is used, then
all matches in !path are found.
SAMPLE CALLING SEQUENCE:
doc_library2, 'file_info2'
doc_library2, 'plot_*'
INPUTS:
arg - The input routine name to search for.
OPTIONAL OUTPUT:
files - The files found
CALLS: ***
MORE [1], MORE [2], PATH_LIB [1], PATH_LIB [2], input [1], input [2], prstr [1]
prstr [2], rd_tfile [1], rd_tfile [2]
CALLED BY:
dlib
HISTORY:
Written 7-Mar-95 by M.Morrison
[Previous]
[Next]
Project : SOHO - CDS
Name :
DOC_MENU
Purpose :
Extract documentation template of one or more procedures.
Explanation :
If NAME is not passed, then this procedure will first display a list of
the directories in !PATH, and ask for the user to select one. Then a
list of procedures in the selected directory are displayed, and the
user is again asked to select one of them. Finally, the routine
DOC_LIB_xxx, where xxx represents the operating system, is called to
display the documentation in the file between the lines containing the
characters ";+" and ";-".
VMS text libraries can also be searched by this routine.
If a file named "aaareadme.txt" is also found in the selected
directory, then this can be selected as the topic "*INFO*".
Use :
DOC_MENU ;For prompting.
DOC_MENU, NAME ;Extract documentation for procedure NAME using
the current !PATH.
Inputs :
None required.
Opt. Inputs :
NAME = String containing the name of the procedure. Under Unix,
NAME may be "*" for all modules.
If NAME is not passed, then DOC_MENU will go into an interactive
mode to prompt the user for the directory or library to search, and
then for the routine to get information on.
Outputs :
Documentation is sent to the standard output unless /PRINT
is specified.
Opt. Outputs:
None.
Keywords :
PRINT = Keyword parameter which, if set to 1, sends output
of DOC_MENU to the default printer. Under Unix, if PRINT
is a string, it is a shell command used for output with
its standard input set to the documentation
(i.e. PRINT="cat > junk")
Unix KEYWORDS
DIRECTORY = directory to search. If omitted, use current directory
and !PATH.
MULTI = flag to allow printing of more than one file if the module
exists in more than one directory in the path + the current
directory.
VMS KEYWORDS
FILE - If present and non-zero, the output is left in the file
userlib.doc, in the current directory.
PATH = optional directory/library search path. Same format
and semantics as !PATH. If omitted, !PATH is used.
Calls : ***
DL_DOS, DL_UNIX, DL_VMS, FILEPATH, GETTOK [1], GETTOK [2], GETTOK [3], GETTOK [4]
HAVE_WINDOWS [1], HAVE_WINDOWS [2], LOC_FILE [1], LOC_FILE [2], LOC_FILE [3]
OS_FAMILY, PATH_EXPAND
CALLED BY:
HESSI Create FITS Binary Table, HESSI Packet Read [2], HESSI Packet Write
HESSI SPECTRUM PLOT, HESSI Score Read, HESSI Score to Light Curve [2]
HESSI Search Lookup Table Index, HESSI Spectrum [2], HESSI Spectrum [4]
HESSI Write lookup table, HESSI packet file close, HESSI score file close
HSI_CWTOOLS_LINESET, HSI_CW_LIGHTCURVE_DRAW [1], HSI_CW_LIGHTCURVE_DRAW [2]
HSI_CW_Profiles, HSI_CW_SPECTRUM, HSI_CW_SPECTRUM_DRAW
HSI_ENERGYCONTROL__DEFINE, HSI_FILL_FASTRATE_PACKET, HSI_LIGHTCURVEPLOT
HSI_LIVETIME_PARAMS__DEFINE, HSI_MK_FASTRATE_PACKET
HSI_PACKET2DETECTOREVENT, HSI_PROFILECONTROL__DEFINE, HSI_PTR_LISTCONCAT
HSI_PTR_LISTSORT, HSI_SCORE2FASTRATE_SUBPACKET, HSI_SCORE2LIGHTCURVECONTROL
HSI_SCORE2PROFILECONTROL, HSI_SCORECONCAT, HSI_SOURCE_PACKET__DEFINE [1]
HSI_SPECTRUMCONTROL__DEFINE [3], HSI_Score2Spectrum, Open Packet File
Open Score File, Packet Selection, SOURCE_PACKET_WORD__DEFINE [2]
SOURCE_PACKET_WORD__DEFINE [3], SWAPDISPLAYEDWIDGET
Search indices to packets matching some selection criteria
Telemetry To FITS, XDOC, cw_edroplist, cw_energy_range, cw_range, cw_ut_range
hsi_cw_energy_range, hsi_cw_ut_range, hsi_scoreels2profile, hsi_scorewrite
Common :
None.
Restrictions:
The DIRECTORY and MULTI keywords are ignored under VMS. The
FILE and PATH keywords are ignored under Unix.
Side effects:
Output is produced on terminal or printer.
Category :
Documentation, Online_help.
Prev. Hist. :
Written, DMS, Sept, 1982.
Added library param, Jul 1987.
Unix version, DMS, Feb, 1988.
New VMS version, DMS, Dec. 1989
Wrapper procedure to call the correct version
under Unix and VMS, AB, Jan 1990
Added support for DOS, SNG, Dec, 1990
Added interactive capabilities, William Thompson, July 1991.
Renamed to DOC_MENU, William Thompson, 1992.
Written :
D. Stern, RSI, September 1982.
Modified :
Version 1, William Thompson, GSFC, 23 April 1993.
Changed test for windows and incorporated into CDS library.
Version 2, William Thompson, GSFC, 27 April 1993.
Restored support for versions of IDL previous to 2.4.0.
Version 3, William Thompson, GSFC, 7 May 1993.
Added IDL for Windows compatibility.
Version 4, William Thompson, GSFC, 24 September 1993.
Changed EXPAND_PATH to PATH_EXPAND
Version 5, Liyun Wang, NASA/GSFC, September 18, 1996
Used CALL_PROCEDURE when calling DOC_LIB_UNIX,
DOC_LIB_DOS, and DOC_LIB_VMS for IDL 2.4.0 and earlier
Version 6, 23-Oct-1997, William Thompson, GSFC
Version :
Version 6, 23-Oct-1997
[Previous]
[Next]
Name: doc_summ
Purpose:
Extract portions of documentation headers and present in some
standardized format
Input Parameters:
infiles - list of
Calling Sequence:
doc_summ, infiles, outdoc [/hc]
doc_summ, path, outdoc [/hc]
CALLS: ***
FILE_EXIST [2], break_doc [1], break_doc [2], break_doc [3], data_chk [1]
data_chk [2], file_exist [1], file_exist [3], file_list [1], file_list [2]
fmt_doc [1], fmt_doc [2], fmt_doc [3], prstr [1], prstr [2], str_concat [1]
str_concat [2]
History:
30-Mar-1994 (SLF)
[Previous]
[Next]
NAME:
dont_use_this
PURPOSE:
To print a message to the screen asking that the routine not be
used and optionally lists the name of the routine that should be
used
CALLING SEQUENCE:
dont_use_this, 'YODAT'
dont_use_this, 'GET_RB0P', 'SUN_R', 'Sample calling sequence: r = get_rb0p(times)'
OPTIONAL INPUT:
other - The name of the other routine to use (new routine)
this - The name of the routine not be used (Old routine)
extra - Extra string array information to print
CALLS: ***
prstr [1], prstr [2], tbeep [1], tbeep [2], tbeep [3]
CALLED BY:
HEL2PIX, PIX2HEL, RdTap [3], SUN_B0, SUN_P, SUN_R, go_lasdisk2 golaserdisk
go_rdtap [2], gt_fov_center, sxt_prep2
HISTORY:
Written 22-Feb-93 by M.Morrison
18-Jul-93 (MDM) - Added THIS and EXTRA inputs
[Previous]
[Next]
PROJECT: HESSI
NAME: double_click_detect.pro
PURPOSE: Detect a double click in a draw widget
CATEGORY: HESSI WIDGETS
CALLING SEQUENCE: double_click_detect, event, continue [, /press, delay=delay]]
INPUTS:
event - event structure passed to an event handling routine
OPTIONAL KEYWORDS:
press - only handle events where button was pressed. Default is to handle release events.
delay - if second click is more than 'delay' seconds after first click, then it's not a double click (default=.4)
OUTPUTS:
continue - if =0, then calling program should just return (waiting for timer event or next button event)
OPTIONAL OUTPUTS: None
Calls: ***
CHECKVAR [1], checkvar [2]
COMMON BLOCKS: None
PROCEDURE: Call double_click_detect from within draw widget's event handling routine. On first call,
first_click will be 0. Save the event structure in info.save_event (see restrictions below), set first_click to 1,
set the timer, and set continue to 0 so calling program won't do anything with this event. If a timer event
occurs before another button event, then it was a single click, so restore the saved event and set continue
to 1 so calling program will handle the event. If two draw events happen in succession, then it's a double
click so set event.clicks to 1 and continue to 1.
Note: This routine will get the draw widget's uvalue and rewrite it, so if the calling routine has already
gotten the uvalue, it should get it again after calling this routine.
RESTRICTIONS: For draw widgets only. The draw_widget must have an information structure
saved in its uvalue which includes the tags first_click (init to 0) and save_event (init to {widget_draw})
SIDE EFFECTS: When double click detected, sets event.clicks to 2
EXAMPLES:
pro event_handler, event
double_click_detect, event, continue
if not continue then return
w_draw = event.id
widget_control, w_draw, get_uvalue=info
if event.clicks eq 2 then print,'double click event detected.'
HISTORY:
Kim Tolbert, 12-Sep-2000
[Previous]
[Next]
NAME:
doy2date
PURPOSE:
convert DOY and year to month and day.
CALLING SEQUENCE:
DOY2date, DOY, year, month, day [, yymmdd]
INPUT:
doy day of year
year year (e.g. 90, 91, 92...)
OUTPUT:
month month number (01,02,03,..)
day day of the month
Optional/Output:
yymmdd string with 'yymmdd'
CALLED BY:
FndIDs, doytim2ex [1], doytim2ex [2], rd_so_at_ftr, sxt_mauna, timeline2html
todays_targets, ttim2ex
HISTORY:
Extended from Mons Morrison's DOY2Date,
done 19-Sept-91 by GAL.
[Previous]
[Next]
NAME:
doy2ex
PURPOSE:
To convert from day of year to internal structure format or string
format
SAMPLE CALLING SEQUENCE:
daytim = doy2ex(doy, year)
print, doy2ex(doy, /string)
INPUT:
doy - The day of year
OPTIONAL INPUT:
year - The year. If not passed, it assumes the current year
CALLS: ***
anytim2ex [1], anytim2ex [2], anytim2ints [1], anytim2ints [2], gt_day [1]
gt_day [2]
CALLED BY:
TIM2UPOS, eis_ti2utc [1], eis_ti2utc [2], mk_daily_ints, rd_rasm
OPTIONAL KEYWORD INPUT:
string - If set, return the answer in a string format
HISTORY:
Written 15-Dec-93 by M.Morrison
[Previous]
[Next]
Project : SOHO - CDS
Name : DOY2UTC()
Purpose : Converts day of year to internal CDS time format.
Explanation : Takes day-of-year value and year (default=current) and
converts to the internal CDS UTC time structure.
Use : IDL> utc = doy2utc(doy [,year])
Inputs : doy - integer day-of-year value (can be an array)
Opt. Inputs : year - the applicable year (default is current year)
If this is an array it must have the same dimensions
as doy.
Outputs : Function returns a CDS UTC structure.
Opt. Outputs: None
Keywords : EXACT = If set, then the year is considered to be passed
exactly, even if it's only 2 or 3 digits.
ERRMSG = If defined and passed, then any error messages will
be returned to the user in this parameter rather than
being handled by the IDL MESSAGE utility. If no
errors are encountered, then a null string is
returned. In order to use this feature, the string
ERRMSG must be defined first, e.g.,
ERRMSG = ''
RESULT = DOY2UTC( DOY, ERRMSG=ERRMSG )
IF ERRMSG NE '' THEN ...
Calls : ***
GET_UTC, STR2UTC [1], STR2UTC [2], STR2UTC [3], UTC2STR
CALLED BY:
EIT_CATRD [1], EIT_DISPLAY, FTP_MLSO_IMAGES, GENERIC_MOVIE, make_avg_daily_roll
rd_therm_rs232
Common : None
Restrictions: None
Side effects: If an error is encountered and the ERRMSG keyword has been
set, the result returned is an integer -1. If ERRMSG has
not been set and an error occurs, DOY2UTC returns with a
null result.
Category : Util, time
Prev. Hist. : None
Written : C D Pike, RAL, 5-Jan-95
Modified : Version 1, C.D. Pike, RAL, 5 January 1995
Version 2, C.D. Pike, RAL, 9 January 1995
Fix bug if input is single value array.
Version 3, Donald G. Luttermoser, GSFC/ARC, 1 February 1995
Added the keyword ERRMSG. Set ONERROR flag to 2.
Corrected bug in YEAR calculation. Note that this
routine can handle both scalar and vector input.
Version 4, Changed handling of input year array, as
suggested by S Paswaters. CDP, 10-Mar-95
Version 5, 5-Jan-2000, William Thompson, GSFC
Changed way that two-digit years are interpreted for
better Y2K compliance.
Version : Version 5, 5-Jan-2000
[Previous]
[Next]
Name:
doytim2ex
Purpose:
Convert a string with day-of-year and time into external format.
For example, the string "316 21:45" will be converted to
[21,45,0,0,12,11,year]
Calling Sequence:
timarr = doytim2ex(buf, [doy=doy, year=year] )
Inputs:
buf = A string array with doy of year and time.
Example, "316, 21:45"
"316 21:45"
"316"
"342 2145"
CALLS: ***
doy2date [1], doy2date [2], timstr2ex [1], timstr2ex [2]
CALLED BY:
deciyr2ints, dsn_input, fmt_rasm, rd_goes3sec [1], rd_goes3sec [2]
rd_raw_station_plan
Note: The day of year is required. It must be first and
can be deliminated by space, comma or tab.
Outputs:
Returns 7-element array in external format.
Optional input keywords:
year = Year in 199x or 9x format. If this is not specified,
the current year will be used.
Optional return keywords:
doy = The day of year number.
Method:
Calls doy2date and timstr2ex
History:
Written, 12-Nov-91, J. Lemen
Updated, 11-Dec-91, J. Lemen; Allow time to be entered as 1200 for 12:00"
[Previous]
[Next]
NAME:
doytim2ints
PURPOSE:
Convert day-of-year and time to the internal time format
SAMPLE CALLING SEQUENCE:
daytim = doytim2ints(buf, year)
daytim = doytim2ints('207, 21:45')
RESTRICTION:
If an array of DOY/Times are passed in, the formats must all
be identical. It uses the first item in the array to determine
the method of decoding
INPUTS:
buf = A string array with doy of year and time.
Example, "316, 21:45"
"316 21:45"
"316"
"342 2145"
CALLS: ***
UNIQ [1], UNIQ [2], UNIQ [3], anytim [1], anytim [2], anytim [3], anytim [4]
anytim [5], anytim2ints [1], anytim2ints [2]
CALLED BY:
rd_fdss_durevt_fil, rd_fdss_grndtrk_fil, rd_fdss_orbevt_fil
rd_fdss_viewpd_fil, timeline2html
Note: The day of year is required. It must be first and
can be deliminated by space, comma or tab.
OPTIONAL INPUT:
year = Year in 199x or 9x format. If this is not specified,
the current year will be used.
OUTPUT:
daytim = A structure with .TIME and .DAY tags
HISTORY:
Written 26-Feb-98 by M.Morrison
(taking J.Lemen's doytim2ex as the starting point and
allowing a vector of inputs to be passed in and to use
ANYTIM to speed things up considerably). It's about
10 times faster than doy2utc and can handle input times
[Previous]
[Next]
PROJECT:
SOHO - CDS/SUMER
NAME:
DPRINT
PURPOSE:
Diagnostic PRINT (activated only when DEBUG reaches DLEVEL)
EXPLANATION:
This routine acts similarly to the PRINT command, except that
it is activated only when the environment variable DEBUG is
set to be equal to or greater than the debugging level set by
DLEVEL (default to 1). It is useful for debugging.
CALLING SEQUENCE:
DPRINT, v1 [,v2 ...] [,format=format] [,dlevel=dlevel]
INPUTS:
V1, V2, ... - List of variables to be printed out.
OPTIONAL INPUTS:
None.
OUTPUTS:
All input variables are printed out on the screen (or the
given unit)
OPTIONAL OUTPUTS:
FORMAT - Output format to be used
UNIT - Output unit through which the variables are printed. If
missing, the standard output (i.e., your terminal) is used.
KEYWORD PARAMETERS:
DLEVEL - An integer indicating the debugging level; defaults to 1
CALLS: ***
pprint [1], pprint [2]
CALLED BY:
CACHE__DATA, CDS_ASRUN_POINT, CDS_STACK, CHECK_FTP, CLEAN_PATH, CONCAT_STRUCT
DBEXT [2], DBUPDATE [1], DB_CHECK, DO_EIT_SCALING, DROT_MAP, DROT_MAP_FAST, DSCALE
EIS_IMAGE_TOOL [1], EIS_IMAGE_TOOL [2], EIS_ITOOL_PTOOL [1]
EIS_ITOOL_PTOOL [2], EIT_COPY, EXPAND_TV, FAKE_POINT_STC, FID2TIME, FID__DEFINE
FIFO__DEFINE, FIND_COMPRESSED, FITS__DEFINE, FIT_CDS_QL, FTP_BBSO, FTP_KISF
FTP_MLSO_IMAGES, FTP_MWSO, FTP_NOBE, FTP__DEFINE, GAUSS_FIT, GET_CALLER
GET_CDS_DELAY, GET_CDS_DUR, GET_CDS_OH, GET_CDS_POINT, GET_CDS_STUDY, GET_DETAIL
GET_FITS_CEN, GET_GZIP, GET_LATEST_KAP, GET_PLAN_TT, GET_POINTER, GET_RECENT_EIT
GET_XWIN [1], GOES__DEFINE, HASTA__DEFINE, HAVE_PROC, HFITS__DEFINE, HTTP__DEFINE
HXRS__DEFINE, IMAGE_TOOL, ITOOL_EIT_SCALE, ITOOL_GETFILE, ITOOL_LOAD_IMAGE
ITOOL_PICKFILE, ITOOL_PKFILE_BS, ITOOL_PTOOL, ITOOL_RD_FITS, JOIN_STRUCT [2]
LATEST_IMAGE, LINKEDLIST, LINKED_LIST, LIST_BDA, LIST_CACHE__DEFINE, LIST_FILE
LIST_PATH, LOC_FILE [2], MAKE_MAP, MAKE_POINTER, MAP2GIF, MAP2JPEG, MAP2L1
MAP_LIST__DEFINE, MAP__DEFINE, MEMCHK_TIMES, MERGE_MAP, MK_CDS_GIF, MK_CDS_PLAN
MK_GIF, MK_PLAN_CAMP, MK_PLAN_CHANGE, MK_PLAN_CLONE, MK_PLAN_EXIST, MK_PLAN_ORDER
MK_PLAN_PLOT, MK_PLAN_READ, MK_PLAN_RECAL, MK_PLAN_RECOVER, MK_PLAN_WRITE
MK_POINT_BASE, MK_SOHO, MK_SOHO_EXTPLAN, MK_STUDY, MOVIE_MAP, NOBE__DEFINE
OLIST__DEFINE, PARSE_TIME, PB0R, PLOT_CDS_POINT [1], PLOT_CDS_POINT [2]
PLOT_HELIO [1], PLOT_HELIO [2], PLOT_MAP
PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support
PLOT_MAP_DEFINE, PLOT_RESOURCE, RDWRT_BUFF, RD_ASCII_BUFF, RD_CDS_POINT, RD_PLAN
RD_RESOURCE, READ_KAP, READ_KAP_ITEM, RECOMPILE, REM_TAG [2], ROT_CDS_XY, ROT_MAP
RSTN__DEFINE, SCANPATH, SEND_PRINT, SET_CDS_SDB, SET_POINTER, SHOW_SYNOP__DEFINE
SITE__DEFINE, SOCK_COPY, SOHO_XY, SPECPLOT__DEFINE, SUB_MAP, SXT_OBSRPT
SYNOP_DB__DEFINE, SYNOP_DEFINE, TRACE_COPY, UNIX_SPAWN, UPDATE_CAMPAIGN
UPDATE_KAP, UPDATE_STUDY_DUR, UTPLOT__DEFINE, WHERE_OFF_LIMB, XACK, XCAMP, XCAT, XCPT
XMANAGER_RESET, XREPORT, XTEXT, XYPLOT__DEFINE, Y2KFIX, contacts [1], contacts [2]
get_xwin [2], help_prefix, mobad_summ, obs_summary, pr_evn [2], pr_fem, pr_gbe, pr_gev
pr_gsn [1], pr_gsn [2], pr_nar, pr_nel, pr_qs_hxi, pr_sxt_term, pr_trav_summ
pro_list [1], pro_list [2], rd_week_file [2], read_ftp, revchk, scratcf, scratch [1]
scratch [2], spectro_plot2, sxi_files, sxtpnt_sum, weekid [2], xread_hist
ydb_exist [2]
COMMON BLOCKS:
None.
RESTRICTIONS:
Can be activated only when the environment variable DEBUG (indicating
the debugging level) is set to an integer which is equal to
or greater than DLEVEL
Can print out a maximum of 20 variables (depending on how many
is listed in the code)
SIDE EFFECTS:
None.
CATEGORY:
Utility, miscellaneous
PREVIOUS HISTORY:
Written March 18, 1995, Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
Version 1, Liyun Wang, GSFC/ARC, March 18, 1995
Version 2, Zarro, SM&A, 30 November 1998 - added error checking
Version 3, Zarro, (EIT/GSFC), 23 Aug 2000 - removed DATATYPE calls
[Previous]
[Next]
NAME:
DR_CARR
PURPOSE:
If ARG is a time interval (in decimal days) this routine
calculates the Carrington differential rotation for the
latitude specified by LAT (in degrees, default is 0).
If ARG is an angle (in either degrees or radians), this
routine calculates the time interval (in decimal days)
required for Carrington rotation by that angle at a
latitude specified by LAT.
CATEGORY:
Solar astronomy trivia.
CALLING SEQUENCE:
OUT = dr_carr([lat,arg,ang2tim=ang2tim,rad=rad])
INPUTS:
LAT: Latitude in degrees
ARG: Either a time difference (if ANG2TIM is not
present or is zero), or a rotation angle in
degrees or radians (if ANG2TIM is present
and non-zero).
OPTIONAL INPUT PARAMETERS:
None.
KEYWORDS:
ANG2TIM: If present and non-zero then ARG is interpreted
as a rotation angle, and the time in decimal days
required for rotation by angle ARG (in either
degrees or radians) is returned.
RAD: If present and non-zero then if ARG is non-zero
the returned rotation angle is in radians. If ARG
is absent then the returned rotation rate is in
microradians per second. If RAD is zero or absent
then the returned rotation angle or rate is in
degrees or degrees per day.
PERIOD: If present and non-zero then if ARG is absent
the rotation period in days at latitude LAT is
returned. If PERIOD is zero or absent then if ARG
is absent the rotation rate in microradians per sec
is returned.
OUTPUTS:
OUT: Either rotation angle or time in decimal days
necessary to rotate by angle ARG, depending on the
value of ANG2TIM.
CALLED BY:
BUILD_SSX, DR, GET_SSX_SLICE, MK_SSX, TV_SSX
COMMON BLOCKS:
None.
SIDE EFFECTS:
None.
RESTRICTIONS:
None.
PROCEDURE:
The sidereal Carrington rotation rate is 2.666 microradians/sec.
We have borrowed the higher order coefficients for photospheric
differential rotaion from Howard and Harvey (1970):
omega_sidereal = 2.865 - 0.351(+/-0.03)*sin(beta)^2
- 0.443(+/-0.05)*sin(beta)^4 microradians/sec
EXAMPLE:
MODIFICATION HISTORY:
Aug, 1992. Written by GLS, LMSC.
[Previous]
[Next]
NAME:
DR_PHOTO
PURPOSE:
If ARG is a time interval (in decimal days) this routine
calculates photosheric differential rotation for the
latitude specified by LAT (in degrees, default is 0).
If ARG is an angle (in either degrees or radians), this
routine calculates the time interval (in decimal days)
required for photosperic rotation by that angle at a
latitude specified by LAT.
CATEGORY:
Solar astronomy trivia.
CALLING SEQUENCE:
OUT = dr_photo([lat,arg,ang2tim=ang2tim,rad=rad])
INPUTS:
LAT: Latitude in degrees
ARG: Either a time difference (if ANG2TIM is not
present or is zero), or a rotation angle in
degrees or radians (if ANG2TIM is present
and non-zero).
OPTIONAL INPUT PARAMETERS:
None.
KEYWORDS:
ANG2TIM: If present and non-zero then ARG is interpreted
as a rotation angle, and the time in decimal days
required for rotation by angle ARG (in either
degrees or radians) is returned.
RAD: If present and non-zero then if ARG is non-zero
the returned rotation angle is in radians. If ARG
is absent then the returned rotation rate is in
microradians per second. If RAD is zero or absent
then the returned rotation angle or rate is in
degrees or degrees per day.
PERIOD: If present and non-zero then if ARG is absent
the rotation period in days at latitude LAT is
returned. If PERIOD is zero or absent then if ARG
is absent the rotation rate in microradians per sec
is returned.
OUTPUTS:
OUT: Either rotation angle or time in decimal days
necessary to rotate by angle ARG, depending on the
value of ANG2TIM.
CALLED BY:
DR, GET_TRACUBE, mplot_nar, plot_ar_pfi, plot_nar [1], plot_nar [2], rot_pix2
COMMON BLOCKS:
None.
SIDE EFFECTS:
None.
RESTRICTIONS:
None.
PROCEDURE:
The sidereal photospheric rotation equation of
Howard and Harvey (1970) is used:
omega_sidereal = 2.78(+/-0.003) - 0.351(+/-0.03)*sin(beta)^2
- 0.443(+/-0.05)*sin(beta)^4 microradians/sec
EXAMPLE:
MODIFICATION HISTORY:
May, 1992. Written by GLS, LMSC.
[Previous]
[Next]
NAME:
draw_boxcensiz
PURPOSE:
To draw a box on the screen in either data or device coordinates by
specifying the center and the size of the box
SAMPLE CALLING SEQUENCE:
draw_boxcensiz, x0, y0, x1, y1
INPUT:
x - The center x coordinate
y - The center y coordinate
xsiz - The size in the x coordinate
ysiz - The size in the y coordinate
OPTIONAL INPUT:
nxparts - Draw this many x grid marks
nyparts - Draw this many y grid marks
nytot - screen size excluding lines at the bottom to skip
nyskip - number of lines to skip a the bottom (for color bar)
label - optional label to be put in lower left corner
lab_siz - size of the label
CALLED BY:
SXT_QLOOK, TRACE_SSWHERE [1], pfi_loc, plot_fov [1], plot_gsn, plot_ssw_fov
sxt_plot_fov, trace_sswhere [2], trace_sswhere [3], trace_sswhere [4]
OPTIONAL KEYWORD INPUT:
device - If set, use device coordinates (DEFAULT)
data - If set, use data coordinates
color - If set, use that color
HISTORY:
Written Oct-91 by M.Morrison
18-Jun-93 (MDM) - Added COLOR option and documentation header
[Previous]
[Next]
NAME:
draw_boxcorn
PURPOSE:
To draw a box on the screen in either data or device coordinates
SAMPLE CALLING SEQUENCE:
draw_boxcorn, x0, y0, x1, y1
INPUT:
x0 - The lower left x coordinate
y0 - The lower left y coordinate
x1 - The upper right x coordinate
y1 - The upeer right y coordinate
OPTIONAL INPUT:
nxparts - Draw this many x grid marks
nyparts - Draw this many y grid marks
nytot - screen size excluding lines at the bottom to skip
nyskip - number of lines to skip a the bottom (for color bar)
label - optional label to be put in lower left corner
lab_siz - size of the label
lab_dir - orientation of the label
lab_col - color of the label
CALLED BY:
MARKS2BOX, PICK_PIX, READ_TRACE_FOV, SFD_CDS, SPOTTER, TOBAN_BOXES
TRACE_SSWHERE [1], ar_prep, bgrab Bruner Grab, box1_draw, box_lc_plot, dejitter
ext_subset [1], ext_subset [2], get_from_plot, obs_coord, obs_coord2, plot_fov [1]
pr_image, pr_teem, rect_rot, sel_region, sho, sho_max, show_obs2, show_obs3, show_obs4
soup_obs2, sxt_obs_coord [1], sxt_obs_coord [2], sxt_plot_fov, trace_sswhere [2]
trace_sswhere [3], trace_sswhere [4]
OPTIONAL KEYWORD INPUT:
device - If set, use device coordinates (DEFAULT)
data - If set, use data coordinates
color - If set, use that color
HISTORY:
Written Oct-91 by M.Morrison
18-Jun-93 (MDM) - Added COLOR option and documentation header
[Previous]
[Next]
Name:
draw_circle
Purpose:
Draw a circle.
Calling Sequence:
draw_circle, x0, y0, radius [, npts=npts]
Input Parameters:
x0 = Central x coordinate
y0 = Central y coordinate
radius = Radius
Optional input keywords:
Npts = Number of points (default = 10000)
device = If set, plots will assume device coordinates
data = If set, plots will assume data coordinates
psym = Plot symbol
color = Color
linestyle = Line style
fill = If set, call poly_fill
noclip = If noclip=0, circles will be clipped (read the IDL
manual on plots to find out why its this way).
CALLED BY:
MARK_POINT, stretch_circle, todays_targets, xy_lwa
Modification History:
Written, 26-feb-92, J. R. Lemen
2-feb-95, JRL, Added thick keyword
11-apr-96, S.L.Freeland, Add FILL keyword and function
25-apr-96, JRL, Added the NOCLIP keyword
22-Apr-2001, Kim Tolbert. In theta calculation, divide by npts-1 so
circle is closed.
[Previous]
[Next]
NAME:
DRAW_GRID
PURPOSE:
Draw a Stonyhurst grid
(Also can draw Carrington grid).
CATEGORY:
CALLING SEQUENCE:
draw_grid
draw_grid, center, fov
draw_grid, center, fov, /tv2
INPUTS:
center - [x,y] Center of the Stonyhurst plot in units
of solar radius (default = [0,0]).
fov - [x,y] Size of Stonyhurst plot in units of
solar radius (default = [2.5,2.5]).
item - Time parameter for Carrington grid
INPUT KEYWORDS PARAMETERS:
TV2 - If set, does scaling needed for PS plotting
img_siz - [x,y] Size of the image (default=window size)
img_pos - [x,y] Location of lower left corner of Stonyhurst
grid (default = [0,0]).
roll - To specify a non-zero roll angle degrees). Positive
will roll result grid counter clockwise.
tilt - To specify the B-angle (degrees).
gridsep - Grid separation (degrees). Default = 15 degrees.
nogrid - To suppress grid (usually used in combination with
the /draw_limb keyword).
draw_limb - Draw the limb (usually used in combination with the
/nogrid keyword).
draw_eq - Draw the equator (usually used in combination with the
/nogrid keyword).
noerase - If set, do not erase before plotting.
color - Specify the color of the grid.
thick - Specify the line thickness of the grid.
latlon - Array of size [2,N] giving coordinates of latitude
longitude. Circles will be drawn at the specified
coordinates.
symsize - Define (arbitrary) size of latlon circles (default = 1.)
gridtype - =1 for Stonyhurst (default) and =2 for Carrington grid.
res - ????
mgridsize - ????
nosavrest - If set then DO NOT execute save/restore commands.
OUTPUTS:
None.
CALLS: ***
MK_GRID_COORDS [1], MK_GRID_COORDS [2], S2C [1], S2C [2], TIM2CLON, restsys [1]
restsys [2], savesys [1], savesys [2]
CALLED BY:
GRID_CURSOR, NORH_GRID [1], NORH_GRID [2], PLOT_CLON, SXT_GRID [1], SXT_GRID [2]
mplot_nar, plot_ar_pfi, plot_nar [1], plot_nar [2], sun_grid
COMMON BLOCKS:
draw_grid_blk, tv2_blk
SIDE EFFECTS:
RESTRICTIONS:
PROCEDURE:
EXAMPLE:
MODIFICATION HISTORY:
July, 1992. - Written by GLS, LMSC.
14-Jul-93 (MDM) - Added common block to save the xrange, yrange, and
position information (to be used by other routines
like PLOT_NAR, SXT_GRID, ...
21-Jan-93 (GLS) - Added ITEM as positional parameter. This is
an index or time parameter, used for Carrington
longitude calculation (see next item).
Added GRIDTYPE as a keyword parameter. If it
is 1 (default), a heliographic grid is plotted.
If 2, Carrington grid is plotted.
23-Feb-95 (RDB) - Added TV2 keyword and stuff associated with PS
plotted (see also ocontour, etc.)
26-Jan-96 (JRL) - Added save/restore of system plot variables.
29-Mar-96 (GLS) - Added nosavrest keyword
[Previous]
[Next]
Project : SOHO-CDS
Name : DRAWBOX
Purpose : Draw a rubber-band box (or circle)
Category : imaging
Explanation : This function draws a rubberband box (or circle) in the
window specified by the positional parameter
(or the current graphics window, by default).
The coordinates of the final box are returned by the
function. Move the cursor to draw, press the left button
to drag, and press the right button to exit.
Syntax : coord=drawbox()
CALLED BY:
GET_SUB_REGION, imspec [10], imspec [11], imspec [12], imspec [13], imspec [14]
imspec [15], imspec [16], imspec [17], imspec [18], imspec [19], imspec [1]
imspec [20], imspec [21], imspec [22], imspec [23], imspec [24], imspec [25]
imspec [26], imspec [27], imspec [28], imspec [29], imspec [2], imspec [30]
imspec [31], imspec [32], imspec [33], imspec [34], imspec [35], imspec [36]
imspec [3], imspec [4], imspec [5], imspec [6], imspec [7], imspec [8], imspec [9]
Examples :
Inputs : WID = window where box is drawn. (!D.Window by default.)
Opt. Inputs : None
Outputs : COORD= [xstart,ystart,xend,yend] or
[xcenter,ycenter,radius]
Opt. Outputs:
Keywords : DATA = set for box coordinates returned as DATA coordinates.
NORMAL = set for box coordinates returned as NORMAL coordinates.
CIRCLE = set to draw circle instead of box
SIZE = initial box width and height
INITIALXY = initial circle center
FIXED = set to inhibit resizing, but permit dragging
RADIUS = initial radius of circle
Restrictions: None
CALLS: ***
BOX_DRAW, CIRCLE_DRAW, EXIST
Side effects: None
History : Written: D. Fanning (Coyote Software)
Modified: D. Zarro, 28-Oct-98 (SMA/GSC) - added circle option
Modified: K. Tolbert 29-Oct-98 (RSTX) - added initial location option
Modified: K. Tolbert 29-Oct-98 (RSTX) - for circle option, return center and radius
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
NAME:
drexc
PURPOSE:
Compute effective excitation rate due to dielectronic recombination.
as a function of electron temperature in units of cm^3 s-1
CALLING SEQUENCE:
drexc,ato_data,Te6,wave,stage,exrate
The line intensity is I (ph cm-3 s-1) = Ne * Nz * exrate where
Ne (cm-3) and Nz (cm-3) are the electron density and the number density
of the responsible stage.
INPUTS:
ato_data = Structure containing atomic data (returned from rd_sec3)
Te6 = Vector of electron temperatures in 1.e6 K
OUTPUTS:
wave = Wavelength (in Ang) of lines
stage = Vector describing ion stage as number of electrons (1=H like)
exrate = Effective excitation rate (cm+3 s-1)
CALLS: ***
DELVARX [1], DELVARX [2], DELVARX [3], DELVARX [4], delvarx [5]
CALLED BY:
bcs_line
HISTORY:
3-sep-93, J. R. Lemen (LPARL), Written
27-sep-93, JRL, Fixed minor problem which occured when Te6 is a vector
5-oct-94, JRL, Fixed the statistical weight of Fe XXIII d.r. lines
[Previous]
[Next]
Name:
DROT_COORD
Purpose:
Differentially rotate coordinates of a solar raster map
Category:
Maps
Calling sequence:
new_coord=DROT_COORD(map,t_ref)
Inputs:
map : input map (size of data _array: [Nx,Ny])
t_ref : reference time for rotation
Keyword parameters:
XYP = non-rotated coordinates (OUT)
VERBOSE = issue messages warning about off-limb pixels
OFFLIMB = indexes of off-limb pixels in each spectrum (OUT)
N_OFFLIMB = number of off limb pixels in each spectrum (array, OUT)
SPHERE = keyword passed to ARCMIN2HEL throuth ROT_XY (IN, default: 1;
note that the default in ROT_XY is 0)
KEEP = keep same same P,B0,R values when rotating: use TIME tag as
reference epoch for computing these values
Outputs:
new_coord : new coordinates: array[Nx,Ny,2]
CALLED BY:
DROT_RASTER
Common blocks:
None
Calls: ***
ANYTIM2CAL, ANYTIM2TAI, ARCMIN2HEL, GET_MAP_XP, GET_MAP_YP, GET_UTC, HEL2ARCMIN [1]
HEL2ARCMIN [2], PB0R, ROT_XY, SOHO_VIEW, TAG_EXIST [1], TAG_EXIST [2], UNPACK_MAP
USE_EARTH_VIEW, USE_SOHO_VIEW, VALID_MAP, roll_xy
Side effects:
None
Restrictions:
- It is assumed that raster exposures are stored in the data array
columns (when ROLL=0, that means that rastering is done parallel
the E/W direction).
- Does not accept array of maps.
Notes:
Since it requires multiple calls to ROT_XY, rotating rasters can be
much slower than rotating images of the same dimensions.
Modification history:
V. Andretta, 26/Jan/1999 - Written; derived from older DROT_NISMAP.
V. Andretta, 28/Feb/1999 - Use ROLL and ROLL_CENTER from map structure;
added SPHERE and OFFLIMB keywords; tried to fix off-limb pixels;
speeded-up rotation of 'ordinary' maps (images, not rasters).
V. Andretta, 11/Apr/1999 - Added KEEP keyword.
V. Andretta, 16/Jan/2001 - Improved treatment of points rolled over
behind the disk.
V. Andretta, 5/Dec/2001 - Taken into account changes in UNPACK_MAP
regarding tag and keyword names specifying roll properties
(ROLL -> ROLL_ANGLE, RCENTER -> ROLL_CENTER).
Contact:
andretta@na.astro.it
[Previous]
[Next]
Project : SOHO-CDS
Name : DROT_MAP
Purpose : differentially rotate image contained within structure created by MAKE_MAP
Category : imaging
Syntax : rmap=drot_map(map,duration)
Inputs : MAP = map structure
DURATION = hours to rotate by
Outputs : RMAP = map with rotated coordinates
Keywords : SECONDS = duration units in seconds
TIME = time to rotate image to (can be a MAP or INDEX stc)
NO_REMAP = don't remap image data (just compute rotated coords)
DAYS = specify duration units in days
TAG_ID = tag name or index to rotate
RCENTER = [rxc,ryc] = new rotation center of output image (if rolling)
TRANS = [xs,ys] = translation of output image [+N, +W]
SPACE/RESOLUTION = [dx,dy] = spacing of output image
OUTSIZE = [nx,ny] = size of output image
ROLL = new roll of output image
NOLIMB = exclude off limb points
MISSING = values to set unrotatable (e.g. off limb) points
NCENTER = [xc,yc] = new center of output image coords
REF_MAP = reference image to map to.
If entered, then TIME, SPACING, ROLL are inherited
FAST = set when one wants to solely shift the entire FOV
without correcting for the latitudinal dependence of
the solar differential rotation function.
USE WITH CARE! - results are only meaningful for small
rotation intervals of a few hours for images within
10-20 degrees of the equator.
UNROTATED = indicies of unrotated pixels
KEEP_CENTER = keep center of output image same as input
[def is to solar rotate]
NO_DROTATE = skip diff. rotation part
RIGID = rotate as rigid body
DEGREES = duration is in units of degrees
TRACK_CENTER = set to track center of the output image to where the
center of the input image is rotated to.
The default is to center the output image on the
center of the rotated field of view.
This makes a non-subtle difference for full and
partial FOV images.
PRESERVE_AREA = set to increase (or decrease) number of
output image pixels to preserve input image
area. Default is to keep original input number
of pixels.
B0 = override solar B-angle at the end of the rotation interval
with this value (in degrees)
CALLS: ***
ADD_TAG [1], ADD_TAG [2], ANYTIM2UTC [1], ANYTIM2UTC [2], DELVARX [1], DELVARX [2]
DELVARX [3], DELVARX [4], DIFF_ROT [1], DIFF_ROT [2], DPRINT, DROT_MAP_FAST, EXIST
GET_DROT_DUR, GET_MAP_PROP, GET_MAP_TIME, GET_MAP_XP, GET_MAP_YP, GRID_XY, HAVE_TAG
IS_STRING, MERGE_STRUCT, MK_MAP_NEW, MK_MAP_OLD, PB0R, PR_SYNTAX, REPACK_MAP
REP_TAG_VALUE, ROT_XY, SUB_MAP, TRIM, UNPACK_MAP, VALID_MAP, VALID_RANGE, delvarx [5]
interp2d [1], interp2d [2], interp2d [3], is_number [1], is_number [2], roll_xy
CALLED BY:
COREG_MAP, DIFF_MAP, EIS_IMAGE_TOOL_EVENT [1], EIS_IMAGE_TOOL_EVENT [2]
IMAGE_TOOL_EVENT, MAP__DEFINE, MERGE_MAP, MOVIE_MAP, ssw_build_trace
ssw_fov_context
History : Written 22 November 1997, D. Zarro, SAC/GSFC
Modified 27 Sept 1999, Zarro (SM&A/GSFC) -- removed
SOHO view correction (now handled by MAP2SOHO)
9-Feb-2000, Zarro (SM&A/GSFC) -- added correction
for solar rotation of roll center when in fov
9 Jan 2001, Kim Tolbert - made onx and ony longwords so onx*ony
won't overflow
20 Aug 2001, Zarro (EITI/GSFC) - added /keep_center and optimized
memory
21 Aug 2001, Zarro (EITI/GSFC) - added ability to retain
limb pixels for good buddy GLS
22 Feb 2003, Zarro (EER/GSFC) - added /RIGID
11 Mar 2003, Zarro (EER/GSFC) - added /DEGREES
23 Nov 2003, Zarro (L-3/GSFC) - added check for roll values
less than 1 degree. Treat these as effectively 0 degree roll.
18 May 2004, Zarro (L-3Com/GSFC) - added /TRACK_CENTER, /PRESERVE_AREA
8 Jun 2004, Zarro (L-3Com/GSFC) - added XRANGE/YRANGE
8 Jan 2005, Zarro (L-3Com/GSFC) - added B0
9 Mar 2005, Zarro (L-3Com/GSFC) - added check for integer data
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : SOHO-CDS
Name : DROT_MAP_FAST
Purpose : fast version of DROT_MAP
Category : imaging
Explanation : Just rotates central coordinates of map
Syntax : rmap=drot_map(map,duration,time=time)
CALLS: ***
ADD_TAG [1], ADD_TAG [2], ANYTIM2UTC [1], ANYTIM2UTC [2], DPRINT, EXIST
GET_DROT_DUR, GET_MAP_PROP, GET_MAP_TIME, MERGE_STRUCT, PB0R, PR_SYNTAX, ROT_XY
SHIFT_MAP, TAG_EXIST [1], TAG_EXIST [2], VALID_MAP, roll_xy
CALLED BY:
DROT_MAP, RD_CDS_POINT
Examples :
Inputs : MAP = map structure
DURATION = amount to rotate by [hours units]
Opt. Inputs : None
Outputs : RMAP = map with rotated coordinates
Opt. Outputs: None
Keywords : DAYS = duration units in days
: SECONDS = duration units in seconds
NO_RTIME = don't add RTIME property
History : Written 5 June 1998, D. Zarro, SAC/GSFC
Modified 22 Feb 2000, Zarro (SM&A/GSFC) - added roll correction
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : SOHO - CDS
Name : DROT_NAR
Purpose : Solar rotate NOAA AR pointings to given time
Category : planning
Explanation :
Syntax : IDL> rnar=drot_nar(nar,time,count=count)
Inputs : NAR = NOAA AR pointing structure from GET_NAR
TIME = time to rotate to
Keywords : COUNT = # or rotated AR pointings remaining on disk
ERR = error messages
CALLS: ***
ANYTIM2UTC [1], ANYTIM2UTC [2], EXIST, HAVE_TAG, MERGE_STRUCT, PR_SYNTAX, ROT_XY
anytim [1], anytim [2], anytim [3], anytim [4], anytim [5]
CALLED BY:
ssw_fov_context
History : Written, 20-NOV-1998, D.M. Zarro (SM&A)
Modified, 13 Jan 2005, Zarro (L-3Com/GSFC) - updated NAR
structure with rotated time.
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
Name:
DROT_RASTER
Purpose:
Differentially rotate solar raster maps
Category:
Maps
Calling sequence:
map_drot=DROT_RASTER(map [ , t_ref ] [ , REF_MAP=map_ref ]
[ , ROLL=roll_angle , RCENTER=roll_center ]
[ , /ADD_RDUR , /VERBOSE , SPHERE=0 , /KEEP ] )
Inputs:
map : input map (size of data array: [Nx,Ny])
t_ref : reference time for rotation (def.: current time)
Keyword parameters:
REF_MAP = reference map for rotation and gridding. Its TIME, ROLL
ROLL_CENTER values supersede those specified by t_ref,
ROLL and RCENTER. Values of FULL_SIZE, SAME_GRID and MEMSAVE
(see below) are also ignored.
ROLL = final roll angle of the image
RCENTER = center of rotation (if rolling)
ADD_RDUR = add to the output map a tag (RDUR) containing an array that
estimates the duration of the rotation interval on a
pixel-by-pixel basis.
VERBOSE = issue messages warning about off-limb pixels
SPHERE = keyword passed to ARCMIN2HEL throuth ROT_XY (IN, default: 1;
note that the default in ROT_XY is 0)
KEEP = passed to DROT_COORD: keeps same same P,B0,R values when
rotating: use TIME tag as reference epoch for computing these
values
FULL_SIZE = expand image size to fit the entire rotated FOV.
SAME_GRID = retains old grid (ignored when dealing with an array of maps)
MEMSAVE = for arrays of maps, do not store the rotated coordinates
in a sigle array, but rather regrid images based on estimates
of the new positions of the FOV corners.
all keywords accepted by INTERP2D, except /REGULAR
Outputs:
map_drot : new map (differentially rotated)
Common blocks:
None
Calls: ***
ADD_PROP, ANYTIM2CAL, ANYTIM2TAI, ARCMIN2HEL, DROT_COORD, GET_ARR_CENTER
GET_MAP_PROP, GET_MAP_XP, GET_MAP_XRANGE, GET_MAP_YP, GET_MAP_YRANGE, GET_UTC
HEL2ARCMIN [1], HEL2ARCMIN [2], PB0R, REP_TAG_VALUE, ROT_XY, SOHO_VIEW
TAG_EXIST [1], TAG_EXIST [2], UNPACK_MAP, USE_EARTH_VIEW, USE_SOHO_VIEW, VALID_MAP
interp2d [1], interp2d [2], interp2d [3], roll_xy
Side effects:
None
Restrictions:
- Assumes that rasters are built in the E-W direction or viceversa,
not N-S (see DROT_COORD).
- Mixing maps (including MAP_REF) with both SOHO and EARTH coordinates
is not allowed.
Notes:
The algorithm employed here (for zero roll angles) is the following:
1) Differentially rotate coordinates (-> ROT_XY)
2) Interpolate data on the new (irregular) grid (-> INTERP2D,REGULAR=0)
On the other hand, the algorithm employed by DROT_MAP (current version
as of January 2001) is the following:
1) Differentially rotate coordinates (-> ROT_XY)
2) Regrid on a regular grid
3) Rotate back to initial time (-> ROT_XY)
4) Interpolate over old grid (-> INTERP2D,REGULAR=1)
In the latter case, the advantage is the ability of interpolating over
a regular grid (faster algorithm); the disadvantage is that two
differential rotations are required. Moreover, here Pass 3 cannot be
coded in one step, since for rasters there is no unique reference time
to rotate back to, and, more important, Pass 2 mixes together pixels
taken at different times.
Modification history:
V. Andretta, 26/Jan/1999 - Written
V. Andretta, 28/Feb/1999 - Added ROLL, RCENTER, REF_MAP, SPHERE
keywords
V. Andretta, 11/Apr/1999 - Added KEEP keyword
V. Andretta, 20/Apr/1999 - Specified ambiguous keyword "R" in ROT_XY;
fixed erroneous definition of ROLL/ROLL_CENTER kwds for arrays of maps
V. Andretta, 19/Jan/2001 - Informs INTERP2D that after rotation, grid
is no longer uniformly spaced (REGULAR=0 was the default in an
earlier version of that routine).
- Fixed a problem with center of grid in the presence of a roll angle.
- Added SAME_GRID, FULL_SIZE, and MEMSAVE keywords.
- Set KEEP to 1 by default.
- Attempts to take round-off errors into account when computing
grid parameters.
V. Andretta, 5/Dec/2001 - Taken into account changes in UNPACK_MAP
regarding tag and keyword names specifying roll properties
(ROLL -> ROLL_ANGLE, RCENTER -> ROLL_CENTER).
Contact:
andretta@na.astro.it
[Previous]
[Next]
Project : SOHO-CDS
Name : DROT_XY
Purpose : wrapper around ROT_XY to correct for roll in map
Category : imaging
Explanation : for rolled images, coordinates have to be corrected
before applying solar rotation correction
Syntax : drot_xy,xp,yp,tstart,tend,xr,yr,roll_angle=roll_angle,soho=soho
Inputs : XP,YP = input arrays to solar rotate
TSTART,TEND = start/end time for rotation
Outputs : XR,YR = solar rotated coordinate arrays
Keywords : ERR = error string
VERBOSE = print messages
ROLL_ANGLE = roll angle [+ degrees clockwise]
ROLL_CENTER = roll center
VIEW = set for L1 view
NO_COPY = don't create new memory copies of xp,yp
NO_ROLL = don't roll correct
CALLS: ***
ANYTIM2TAI, COPY_VAR, EXIST, NUM2STR, PB0R, PR_SYNTAX, ROT_XY, WHERE_OFF_LIMB
data_chk [1], data_chk [2], roll_xy
CALLED BY:
PLOT_MAP, PLOT_MAP2 WARNINGTEMPORARY FIX ONLY FOR 16 bit ZBuffer support
History : Written 15 Feb 1999, D. Zarro, SM&A/GSFC
Contact : dzarro@solar.stanford.edu
[Previous]
[Next]
Project : SOHO - CDS
Name : DSCALE
Purpose : scale data
Category : display
Syntax : IDL> a=dscale(b)
Inputs : ARRAY = input array to scale
Outputs : DARRAY = scaled data
Keywords :
MIN = min data to scale [def=min(array)]
MAX = max data to scale [def=max(array)]
MISSING = data to exclude [i.e., set to dmin]
NO_COPY = destroy input array
LOG = use log10 scale
CRANGE = actual data range used
CALLS: ***
DPRINT, EXIST, FILT_DATA, PR_SYNTAX, VALID_RANGE
CALLED BY:
CSCALE, PLOT_MAP
History : Version 1, 17-Jan-1998, D M Zarro. Written
Modified 24-Nov-1999, Zarro (SM&A/GSFC) - added check
for unnecessary call to filt_data
Modified 14-March-2000, Zarro (SM&A/GSFC) - fixed
bug in use of nmin/nmax
Modified 30-Oct-2003, Zarro (L-3/GSFC) - fixed
bug in which values between 0 and 1 were being ignored under
log scaling
Contact : DZARRO@SOLAR.STANFORD.EDU
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
DSP_STRARR
PURPOSE:
To display a string array in a text widget.
EXPLANATION:
CALLING SEQUENCE:
DSP_STRARR, string_array [, font = font, title=title]
INPUTS:
strings -- The string array to be displayed.
OPTIONAL INPUTS:
None.
OUTPUTS:
None.
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
FONT -- Font to be used for the text widget. Default: fixed
TITLE -- Title of the widget window. Default: 'Info Window'
ONE_COPY -- Set this keyword to let xmanager know that only one copy of
this widget is allowed to run at one time.
XSIZE - x size of widget is max length of text < xsize. Default is 60.
YSIZE - y size of widget. Default is 20.
NO_BLOCK - If set, make widget non-blocking
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DSP_STRARR_EVENT, XMANAGER, XREGISTERED
CALLED BY:
text_output
COMMON BLOCKS:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
CATEGORY:
Utilities, widgets
PREVIOUS HISTORY:
MODIFICATION HISTORY:
Written September 2, 1994, by Liyun Wang, NASA/GSFC
Modified 1-Aug-2000, Kim Tolbert. Added xsize and ysize keywords.
Modified 28-Jan-2001, Kim Tolbert. Added no_block keyword
VERSION:
[Previous]
[Next]
Project : SOHO - CDS
Name : DSP_STRUCT
Purpose : Display contents of a structure as a pulldown menu.
Explanation : A pulldown menu is created representing all the
levels of "introspection" of the structure variable.
If a tag in a structure is an array, it's "written out"
if it's less than SIZE, which by default is set to 30.
It may be used as a standalone widget or as part of a
menu. In the latter case, it generates a pulldown button
that unfolds the structure.
Use : DSP_STRUCT, DATA_STRUCTURE
Inputs : DATA_STRUCTURE: Any IDL structure.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : TITLE: The title of the menu/button.
SIZE: Controls the maximum size of arrays to be expanded
ON_BASE: The base to place the button on if it's supposed
to be a subpart of another widget hierarchy.
ALONE: Set to make it be a stand-alone widget application.
Calls : ***
DSP_STRUCT_NOOP, DSP_STRUCT_QUIT, XMANAGER, XPL_STRUCT
CALLED BY:
QLDS_INVENTORY, SHOW_STRUCT
Common : None.
Restrictions: None.
Side effects:
Category : CDS, QL, DISPLAY, UTILITY
Prev. Hist. : Requested simultaneously by the Goddard & Rutherford
people, independent of each other.
Written : SVHH, 15 January 1994
Modified : SVHH, Documentation added March 1994, stand-alone mode added.
SVHH, 3-May-1995, Version 1.1
Made arrays unfold the first <SIZE> number
of elements.
Version 2, SVHH, 21 November 1996
Using XPL_STRUCT for the main job.
Version : 2, 21 November 1996
[Previous]
[Next]
NAME:
DSPLINE (Deluxe SPLINE)
PURPOSE:
Perform cubic spline interpolation or linear interpolation
CATEGORY:
util, Interpolation - E1.
CALLING SEQUENCE:
Result = DSPLINE(X, Y, T [, Sigma]) ; Spline
Result = DSPLINE(X, Y, T [, Sigma],interp=0) ; Linear
INPUTS:
X: Abcissa vector. The values need not monotonically increase.
Y: The vector of ordinate values corresponding to X.
T: The vector of abcissae values for which the ordinate is
desired. The values of T need not monotonically increase.
OPTIONAL INPUT PARAMETERS:
Sigma: The amount of "tension" that is applied to the curve. The
default value is 1.0. If sigma is close to 0, (e.g., .01),
then effectively there is a cubic spline fit. If sigma
is large, (e.g., greater than 10), then the fit will be like
a polynomial interpolation.
OPTIONAL INPUT KEYWORDS:
interp =0 For linear interpolation
=1 For spline interpolation (default)
OUTPUTS:
DSPLINE returns a vector of interpolated ordinates.
Result(i) = value of function at T(i).
CALLS: ***
DSPLINE, INTERPOL, SPLINE
COMMON BLOCKS:
None.
SIDE EFFECTS:
None.
RESTRICTIONS:
Data must not be string or structure type.
PROCEDURE:
Sorts T and abssica and then calls spline or interpol.
EXAMPLE:
The commands below show a typical use of DSPLINE:
X = [2.,3.,4.] ;X values of original function
Y = (X-3)^2 ;Make a quadratic
T = FINDGEN(20)/10.+2 ;Values for interpolated points.
;twenty values from 2 to 3.9.
Z = DSPLINE(X,Y,T) ;Do the interpolation.
MODIFICATION HISTORY:
26-Jan-93, J. R. Lemen LPARL, Written
28-oct-93, JRL, Force T to be a vector when calling sort
[Previous]
[Next]
NAME:
DT_TM_MAK
PURPOSE:
Set up a time and date string from reference JD and offset.
CATEGORY:
CALLING SEQUENCE:
s = dt_tm_mak(jd0, [sec])
INPUTS:
jd0 = Julian Date of a reference date (0:00 hr). in
sec = Seconds since JD0 at 0:00. in
KEYWORD PARAMETERS:
Keywords:
FORMAT = format string. Allows output date to be customized.
The default format string is 'Y$ n$ d$ h$:m$:s$ w$'
The following substitutions take place in the format string:
Y$ = 4 digit year.
y$ = 2 digit year.
N$ = full month name.
n$ = 3 letter month name.
0n$= month as a 2 digit number.
d$ = day of month number.
0d$= 2 digit day of month number.
doy$= 3 digit day of year.
W$ = full weekday name.
w$ = 3 letter week day name.
h$ = hour.
m$ = minute.
s$ = second.
f$ = fraction of second (see DECIMAL, DENOMINATOR below).
I$ = time interval in days to 2 decimal places.
i$ = time interval in days as an integer.
H$ = time interval in integer hours.
@ = Carriage Return.
! = Line feed.
DECIMAL=dp Number of decimal places to use for fraction of
second (def=3) for f$ in format. f$ will include dec pt.
DENOMINATOR=den If given then fraction is listed as nnn/ddd
ddd is given by den. Over-rides DECIMAL keyword. Ex:
DENOM=1000 might give 087/1000 for f$ in format.
OUTPUTS:
S = resulting string. out
CALLS: ***
JD2YMD [1], JD2YMD [2], JD2YMD [3], MONTHNAMES [1], MONTHNAMES [2], MONTHNAMES [3]
REPCHR [1], REPCHR [2], REPCHR [3], SECHMS [1], SECHMS [2], SECHMS [3], STRESS [1]
STRESS [2], STRESS [3], WEEKDAY [1], WEEKDAY [2], WEEKDAY [3], YMD2DN
CALLED BY:
TIME_LABEL [1], TIME_LABEL [2], TIME_LABEL [3]
COMMON BLOCKS:
NOTES:
Notes: Some examples: 'h$:m$:s$' -> 09:12:04,
'd$ n$ Y$' -> 12 Jan 1991, 'd$D h$h' -> 3D 2h, ...
MODIFICATION HISTORY:
R. Sterner. 17 Nov, 1988.
Johns Hopkins University Applied Physics Laboratory.
RES 20 Apr, 1989 --- 2 digit year.
R. Sterner, 26 Feb, 1991 --- Renamed from time_date_str.pro
R. Sterner, 27 Feb, 1991 --- Renamed from tm_dt_str.pro
R. Sterner, 28 Feb, 1991 --- changed format.
R. Sterner, 17 Jun, 1992 --- fixed a bug for large sec.
R. Sterner, 27 Sep, 1993 --- Modified to handle arrays.
R. Sterner, 2 Dec, 1993 --- Slightly modified def format.
R. Sterner, 1994 Jun 15 --- Added fraction of second.
R. Sterner, 1995 Mar 8 --- Added i$ format.
R. Sterner, 1995 Jul 6 --- Added 0d$ format.
R. Sterner, 1997 Feb 3 --- Added new keywords 0n$ and doy$ to
give month as 2 digit number and day of year.
Matthew Savoie, Systems Technology Associates --- 1997 Feb 5
fixed a bug by adding floor to: days = long(floor(idays)).
R. Sterner, 1997 Dec 18 --- Added DDECIMAL=ddec for number of
decimal places in Day of Year.
Copyright (C) 1988, Johns Hopkins University/Applied Physics Laboratory
This software may be used, copied, or redistributed as long as it is not
sold and this copyright notice is reproduced on each copy made. This
routine is provided as is without any express or implied warranties
whatsoever. Other limitations apply as described in the file disclaimer.txt.
[Previous]
[Next]
Name: dummy
Purpose: force otherwise empty directory to be included in IDL path
CALLS:
[Previous]
[Next]
Name: dummy
Purpose: force otherwise empty directory to be included in IDL path
CALLS:
[Previous]
[Next]
Name: dummy
Purpose: force otherwise empty directory to be included in IDL path
CALLS:
[Previous]
[Next]
Name: dummy
Purpose: force otherwise empty directory to be included in IDL path
CALLS:
[Previous]
[Next]
NAME:
DUMMYPLOTS
PURPOSE:
This procedure is called by utplot to set up plot system variables without actually drawing
a plot. Used to find out what the exact x limits (x.crange) of the plot will be.
CATEGORY:
UTIL, UTPLOT, GRAPHICS, TIME
CALLING SEQUENCE:
DUMMYPLOTS, X=X,Y=Y
CALLS: ***
CHECKVAR [1], checkvar [2]
INPUTS:
X - array of x values
OPTIONAL INPUTS:
Y - array of y values
OUTPUTS:
none explicit, only through commons;
OPTIONAL OUTPUTS:
none
KEYWORDS:
none
CALLED BY:
SET_UTPLOT [1], SET_UTPLOT [2]
COMMON BLOCKS:
none
SIDE EFFECTS:
The !X structure is changed.
RESTRICTIONS:
This procedure is buried deep inside Utplot and should not be called
independently since it may be changed at any time by the author as unlikely
as that seems.
PROCEDURE:
The plot device is set to 'NULL' and the plot command is given. The
!X and !Y variables are changed by the call. The plot device is set
back to the input device.
MODIFICATION HISTORY:
Version 1, Written by Richard Schwartz, Feb. 1991
Version 2, RAS, 14-August-1996, cleaned !p.color problem
Version 3, richard.schwartz@gsfc.nasa.gov, 14-may-1998, cleared the
!p.background problem which was identical to the !p.color problem.
[Previous]
[Next]
Project: YOHKOH-BCS
Name: DVOIGT_FIT
Purpose: Double voigt function fit to line profile
Syntax: v=dvoigt_fit(x,y,a,sigmaa,damp=damp)
Category: Fitting
Inputs:
y = data to fit
x = bin or wavelength
Outputs:
background=a(0)+a(1)*x+a(2)*x^2
a(3) = total intensity (1)
a(4) = center (1)
a(5) = doppler width (1)
a(6) = damping width (1)
a(7) = intensity (2)
a(8) = center (2)
a(9) = width (2)
a(10) = damping width (2)
Opt. Outputs:
sigmaa = sigma errors
Keywords:
damp = damping width
fixp = vector of parameters to keep fixed
(e.g. fixp=[0,1,3] to fix parameters 1,2 and 4)
last = use latest parameter values as new first guesses.
weights = data weights
nfree = number of free parameters
chi2 = chi^2
corr = link matrix
CALLS: ***
FUNCT_FIT, GUESS_FIT_PAR
CALLED BY:
FIT_SPEC
Common: None.
Restrictions: None.
Side effects: None.
History: Version 1, 17-July-1987, D M Zarro. Written
Contact: DZARRO@SOLAR.STANFORD.EDU