[Next]
There are several "main" programs that may be useful to calculate the
mass or electron density (columnar) in CMEs. The mass of a CME is
computed from the excess brightness after having subtracted off the
pre-event brightness. The technique is to recognize that a single
electron at a certain point in the atmosphere will scatter a known
amount of the solar disk intensity. Then by knowing the observed
intensity, and by assuming that all of the mass is in a single
volume element, we can compute the number of electrons. Then
assuming charge neutrality, the mass can be computed.
The various procedures that can be used to compute electron density
or mass are:
C3_CME:
A function to calibrate C3 images and calculate the mass of a CME
given the base and cme image.
C3_CME_FRONT:
A function to calibrate C3 images and to calculate the mass of the
CME front.
C3_MASSIMG:
A function to calibrate C3 images and calculates the mass of a CME.
The output is a file that is a mass (or electron density image).
CME_MASSIMG2TOTAL:
This function allows you to specify the area of features for which
to calculate the mass of a CME from mass images.
rah 3/26/99
[Previous]
[Next]
NAME:
ABBRV_FILPOL
PURPOSE:
This function returns an abbreviated code for the filter
and polarizer/sector wheels.
CATEGORY:
UTIL
CALLING SEQUENCE:
Result = ABBRV_FILPOL(Filter)
INPUTS:
Filter = String giving the filter or polarizer/sector value
OPTIONAL INPUTS:
None
OUTPUTS:
The function result is a string containing the code for the filter
wheel or the polarizer wheel. Each wheel posisiton is a two
character string.
CALLED BY:
COMB_FULL_EQ, GETBKGIMG, MK_DAILY_C1_MED, MK_DAILY_MED, MK_DAILY_MIN
PROCEDURE:
The wheel position is decoded and converted to a 2 character string.
EXAMPLE:
MODIFICATION HISTORY:
Written, RA Howard, NRL, 7 October 1996
15 Oct 96 RAH Added removing whitespace from filter
Corrected filter/polarizer/sector cases
@(#)abbrv_filpol.pro 1.3 10/15/96 LASCO IDL LIBRARY
[Previous]
[Next]
PROJECT:
SOHO - SUMER
NAME:
ACIMGC()
PURPOSE:
returns accumulative image counter
CATEGORY:
EXPLANATION:
SYNTAX:
Result = acimgc()
EXAMPLES:
INPUTS:
header - BYTARR(92) of Image Header
OPTIONAL INPUTS:
None.
OUTPUTS:
None.
OPTIONAL OUTPUTS:
None.
KEYWORDS:
None.
COMMON:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
HISTORY:
Version 1, October 7, 1996, Dietmar Germerott, MAPE Lindau. Written
CONTACT:
Dietmar Germerott, MAPE Lindau (germerott@linax1.mpae.gwdg.de)
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_ALT()
Purpose : Adds a CDS alternate science plan record to the database
Explanation : This procedure takes a CDS alternate science plan entry and
adds it to the database "sci_alt". This database contains a
series of such entries, making a historical list.
Use : Result = ADD_ALT( DEF )
IF NOT ADD_ALT( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
PROG_ID = Program ID, linking one or more studies
together
STUDY_ID = Number defining the study
STUDYVAR = Number giving the study variation ID
SCI_OBJ = Science objective from the daily science
meeting
SCI_SPEC = Specific science objective from meeting
CMP_NO = Campaign number
OBJECT = Code for object planned to be observed
OBJ_ID = Object identification
START_TIME = Date/time of beginning of alternate plan,
in TAI format
END_TIME = Date/time of end of alternate plan, in
TAI format
ORIG_DUR = Original duration of the observation, in
seconds, before being truncated by
following time-tagged observations.
N_RASTERS1 = Variable number of rasters parameter
TRACKING = True (1) if feature tracking to be used,
or false (0) otherwise
N_POINTINGS= Number of pointings to use with study
N_REPEAT_S = Number of times to repeat study
GSET_ID = GSET ID number
GET_RAW = True if raw data should be collected.
If N_POINTINGS is greater than 0, then there will be the
additional tag POINTINGS. This is an array of pointing
positions. It itself is a structure, of type
PLAN_PNT_STRUC, with the following tags:
INS_X = Pointing in X relative to sun center
INS_Y = Pointing in Y relative to sun center
ZONE_ID = Pointing zone ID
DEF is also allowed to be an array of such structures.
In such a case, the substructure POINTINGS will be
dimensioned based on the largest value of N_POINTINGS.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_ALT( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBFIND [1], DBFIND [2], DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_CAMPAIGN
GET_F_RASTER, GET_GSET, GET_OBJECT, GET_PROGRAM, GET_STUDY, TAI2UTC, TRIM, UNIQ [1]
UNIQ [2], UNIQ [3]
CALLED BY:
MOD_ALT
Common : None.
Restrictions: Only this routine or DEL_ALT can be used to add or delete
alternate plan descriptions to or from the database. Modifying
the database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 9 May 1995
Modified : Version 1, William Thompson, GSFC, 9 May 1995
Version 2, William Thompson, GSFC, 29 June 1995
Changed so that times in structure are rounded off to
millisecond accuracy.
Version 3, William Thompson, GSFC, 31 August 1995
Allow DEF to be an array
Version 4, William Thompson, GSFC, 28 September 1995
Added tags ORIG_DUR, GSET_ID, GET_RAW
Version 5, William Thompson, GSFC, 11 December 1995
Check validity of GSET_ID when using GIS.
Version : Version 5, 11 December 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_ANOMALY()
Purpose : Adds a SOHO anomaly to the database
Explanation :
Syntax : Result = ADD_ANOMALY( DEF )
IF NOT ADD_ANOMALY( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing
tags defined by DEF_ANOMALY
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_ANOMALY( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
CALLS: ***
CONCAT_DIR [1], CONCAT_DIR [2], CONCAT_DIR [3], DATATYPE [1], DATATYPE [2]
DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCLOSE [1], DBCLOSE [2]
DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND [1], DBFIND [2]
DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], DBUPDATE [1], DBUPDATE [2]
DBUPDATE [3], DBUPDATE [4], DB_INFO [1], DB_INFO [2], DB_INFO [3], GET_ANOMALY
GET_SOHO_INST, MATCH_STRUCT, TEST_OPEN, concat_dir [4]
CALLED BY:
WRITE_ANOMALY, XREPORT_EDIT
Common : None.
Restrictions: !PRIV must be 2 or greater to use this routine.
Side effects: If input ANOMALY ID is already in DB, then input
anomaly will replace current entry, otherwise it
will be added with a new ID.
Category : Planning, Databases.
Prev. Hist. : None.
Written : Dominic Zarro, ARC/GSFC, 20 January 1996
Version : Version 1
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
ADD_CAMPAIGN()
PURPOSE:
Adds a CDS campaign record to the database
CATEGORY:
Planning, Databases
EXPLANATION:
This procedure takes a CDS campaign entry and adds it to the
database table CAMPAIGN. This database contains a series of such
entries, making a historical list.
SYNTAX:
Result = add_campaign(DEF)
INPUTS:
DEF = This is an anonymous structure containing the following tags:
CMP_NO = Unique identifier number. If no matches
are found, then a simpler structure is
returned with this set to -1.
CMP_NAME = Name of the campaign.
CMP_TYPE = Campaign type, e.g. JOP, Intercal, etc.
CMP_DESC = Up to five lines of text (400 characters)
describing the campaign.
DATE_OBS = Starting date for the observing campaign
DATE_END = Ending data for the campaign
OBSERVER = Observer in overall charge of the campaign
COMMENT = A comment associated with the campaign
INSTITUTES = Structure containing information about the
institutes involved, with the following tags:
INSTITUT = The name of the institute.
OBSERVER = The name of the observer at that institute
OPTIONAL INPUTS:
None.
OUTPUTS:
The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
OPTIONAL OUTPUTS:
None.
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 = ''
Result = ADD_CAMPAIGN( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], TRIM
TRIM_CAMPAIGN
CALLED BY:
UPDATE_CAMPAIGN
COMMON:
None.
RESTRICTIONS:
Only this routine and MOD_CAMPAIGN can be used to add or update
SOHO campaigns to or from the database.
Modifying the database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
SIDE EFFECTS:
The dates in the structure are rounded off to millisecond
accuracy.
HISTORY:
Version 1, 10-Sep-1996, William Thompson, GSFC
Converted from SUMER version by Liyun Wang
Version 2, 23-Sep-1996, William Thompson, GSFC
Added campaign type, changed string lengths.
Version 3, 22-Nov-1996, Zarro, GSFC
Added call to TRIM_CAMPAIGN
CONTACT:
WTHOMPSON
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_CDS_POINT
Purpose : Adds a pointing calibration curve to database
Category : CDS, Calibration, Class3
Explanation : This routine adds a functional expression representing the CDS
pointing as a function of OPS position to the database.
Syntax : ADD_CDS_POINT, DATE_EFF, EQ_NUM, COEFF
Examples : ADD_CDS_POINT, '1995/12/02', 'N2', [4.81,-0.0068]
Inputs : DATE_EFF = The date, and optionally time, that the curve
becomes effective. In other words, the calibration
curve should be applied to all science data taken on
or after that date. Can be in any CDS time format.
The current date is also stored along with the data.
When the database is read in, the most current
version for a given date is used.
For example, if there were two values of DATE_EFF in
the database,
DATE_EFF = 1995/12/02
DATE_EFF = 1996/09/16
then the first would be used for all data taken
between 1995/12/02 and 1996/09/16, and the second
would be used for all data from 1996/09/16 on. If
there was more than one entry in the database with
an effective date of 1996/09/16, then the most
recent one would be used.
There is one thing to watch out for in maintaining
the database. Taking the above example, if one
added a calibration with an effective date of
1996/05/01, then it would be applied to data between
that date and the next date in the database,
i.e. 1996/09/16. If one wanted the new calibration
to apply to all data after 1996/05/01, then one
would have to also add a new entry for 1996/09/16.
EQ_NUM = An identification number for the equation format
being used. See the documention for GET_CDS_POINT
for a discussion of what the various possible
equations are.
COEFF = The coefficients of a function giving the pointing
calibration curve, expressed as a function of OPS
positions. Can have up to 10 elements.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
ANYTIM2TAI, DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCLOSE [1], DBCLOSE [2]
DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_UTC, PRIV_ZDBASE, UTC2TAI
Common : None.
Restrictions: None.
Side effects: None.
Prev. Hist. : None.
History : Version 1, 25-Sep-1996, William Thompson, GSFC
Contact : WTHOMPSON
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_DATAWIN()
Purpose : Adds a data window list definition to the database
Explanation : This procedure takes a data extraction window list definition
and adds it to the data window list databases "datawin" and
"datawin2". The ID number for the data window list is
assigned.
Use : Result = ADD_DATAWIN( DEF )
IF NOT ADD_DATAWIN( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
DW_ID = Data window list ID number. Initially, this
is zero. It is updated by this routine to
reflect the ID number in the database.
DETECTOR = Either "G" for GIS or "N" for NIS.
DW_DESC = A short description of the data window list
beyond what is given in the associated line
list description, e.g. "Full slit, 10 pixels
wide". Can be up to 65 characters.
W_WIDTH = Width in pixels used to generate the
windows.
W_HEIGHT = The height in pixels used to generate the
windows. VDS only, for GIS this is set to
unity.
VDS_BACK = Either 0 for off, or 1 for on,
representing whether or not VDS background
windows are being used. For GIS window
lists this must be 0. If VDS_BACK is 1,
then at least one of the window names must
start with the characters "BACK" (case
insensitive).
LL_ID = The line list ID number for the line list
that this window list was derived from. An
appropriate entry must exist in the line
list database. Alternatively, this can be
set to zero to signal that the data window
list is not connected to a line list.
WINS = An array containing the window definitions.
The window definitions themselves are structures, of type
"cds_windows", with the following tags:
WIN_NAME = Window name, derived from the line name in
the line list database. Can be up to 40
characters.
WIN_DEF = The window definition. This is four
numbers, although GIS window definitions
only use two of them.
WIN_FLAG = Whether or not the window can be used to
generate a flag. Either 0 (false) or 1
(true).
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
The tag DW_ID in the input structure is updated to reflect
the ID number assigned in the database.
Opt. Outputs: None.
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 = ''
Result = ADD_DATAWIN( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
DW_ID = If the definition matches one that is already in the
database, then this keyword returns the ID of the
matching data window list. Otherwise, a -1 is returned.
CHECK_ONLY= If this keyword is set, then the routine only checks to see
if the proposed entry is valid, but does not attempt to
place it in the database.
Calls : ***
CHK_DATAWIN, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBDELETE [1], DBDELETE [2]
DBDELETE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND [1], DBFIND [2]
DBFIND [3], DBMATCH [1], DBMATCH [2], DBMATCH [3], DBOPEN [1], DBOPEN [2]
DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3], GET_LINELIST, NUM2STR
CALLED BY:
IMPORT_PLAN, IMPORT_STUDY, TP_WRT_DWIN
Common : None.
Restrictions: Only this routine can be used to add window list definitions to
the database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a window list definition has been added to the database,
it must never be removed.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 31 March 1994
Modified : Version 1, William Thompson, GSFC, 1 August 1994
Version 2, Liyun Wang, GSFC/ARC, September 21, 1994
Added the ERRMSG keyword
Version 3, William Thompson, GSFC, 24 October 1994
Changed W_HEIGHT to 1 for GIS data.
Version 4, Liyun Wang, GSFC/ARC, November 4, 1994
CHK_DATAWIN is called to check the existence of the
given data window
Version 5, William Thompson, GSFC, 8 November 1994
Added keyword DW_ID
Version 6, William Thompson, GSFC, 29 December 1994
Fixed bug when inputs are bytes.
Version 7, William Thompson, GSFC, 2 March 1995
Enforce uniqueness for DW_DESC.
Added keyword CHECK_ONLY.
Version 8, William Thompson, GSFC, 14 March 1995
Changed DBFIND to DBMATCH for DW_DESC
Version 9, William Thompson, GSFC, 15 March 1995
Changed so that DW_DESC only needs to be unique for a
given detector.
Version 10, William Thompson, GSFC, 20 June 1995
Added tag WIN_FLAG.
Version 11, Stein Vidar Haugan, UiO, 25 September 1995
Fixed bug with DBEXT always returning arrays.
Version 12, William Thompson, GSFC, 16 May 1997
Allow for possibility of CHK_DATAWIN returning an
array.
Version : Version 12, 16 May 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_DETAIL()
Purpose : Adds a CDS detailed science plan record to the database
Explanation : This procedure takes a CDS detailed science plan entry and
adds it to the database "sci_details". This database contains
a series of such entries, making a historical list.
Use : Result = ADD_DETAIL( DEF )
IF NOT ADD_DETAIL( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
PROG_ID = Program ID, linking one or more studies
together
STUDY_ID = Number defining the study
STUDYVAR = Number giving the study variation ID
SCI_OBJ = Science objective from the daily science
meeting
SCI_SPEC = Specific science objective from meeting
CMP_NO = Campaign number
OBJECT = Code for object planned to be observed
OBJ_ID = Object identification
DATE_OBS = Date/time of beginning of observation,
in TAI format
DATE_END = Date/time of end of observation, in TAI
format
ORIG_DUR = Original duration of the observation, in
seconds, before being truncated by
following time-tagged observations.
N_RASTERS1 = Variable number of rasters parameter
TIME_TAGGED= True (1) if the start of the study is to
be a time-tagged event. Otherwise, the
study will begin immediately after the
previous study.
TRACKING = True (1) if feature tracking to be used,
or false (0) otherwise
N_POINTINGS= Number of pointings to use with study.
N_REPEAT_S = Number of times to repeat study.
FLAG_MASTER= If 0, then CDS is not flag master. If a
positive integer, then CDS is flag master,
and the number represents the scheme used
to generate the flag. Negative numbers
mean the same as positive numbers, but the
flag is local.
GSET_ID = GSET ID number
GET_RAW = True if raw data should be collected.
PROG_NUM = Study counter number (negative is
predicted). This parameter is optional.
If omitted, then 0 is assumed.
If N_POINTINGS is greater than 0, then there will be the
additional tag POINTINGS. This is an array of pointing
positions. It itself is a structure, of type
PLAN_PNT_STRUC, with the following tags:
INS_X = Pointing in X relative to sun center
INS_Y = Pointing in Y relative to sun center
ZONE_ID = Pointing zone ID
DEF is also allowed to be an array of such structures.
In such a case, the substructure POINTINGS will be
dimensioned based on the largest value of N_POINTINGS.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_DETAIL( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
NOCHECK_DB = if set, inhibit integrity checking of input plan
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBFIND [1], DBFIND [2], DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_CAMPAIGN
GET_F_RASTER, GET_GSET, GET_OBJECT, GET_PROGRAM, GET_STUDY, TAG_EXIST [1]
TAG_EXIST [2], TAI2UTC, TRIM, UNIQ [1], UNIQ [2], UNIQ [3]
CALLED BY:
IMPORT_PLAN, MOD_DETAIL
Common : None.
Restrictions: Only this routine or DEL_DETAIL can be used to add or delete
science details descriptions to or from the database.
Modifying the database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 25 July 1994
Modified : Version 1, William Thompson, GSFC, 3 August 1994
Version 2, Liyun Wang, GSFC/ARC, September 21, 1994
Added the ERRMSG keyword
Version 3, William Thompson, GSFC, 8 November 1994
Changed how GET_OBJECT is called
Version 4, William Thompson, GSFC, 21 November 1994
Added item N_REPEAT_S
Version 5, William Thompson, GSFC, 13 December 1994
Modified to write times out to millisecond accuracy.
Version 6, William Thompson, GSFC, 20 December 1994
Changed OBJECT to three characters
Version 7, William Thompson, GSFC, 13 February 1995
Changed the way pointing is handled
Version 8, William Thompson, GSFC, 28 March 1995
Added tag ZONE_ID
Version 9, William Thompson, GSFC, 8 May 1995
Modified to pay attention to DELETED field in database
Version 10, William Thompson, GSFC, 20 June 1995
Added tag FLAG_MASTER
Version 11, William Thompson, GSFC, 29 June 1995
Changed to round off times to millisecond accuracy in
the structure.
Version 12, William Thompson, GSFC, 5 July 1995
Allow FLAG_MASTER to be any positive or negative
integer number.
Version 13, William Thompson, GSFC, 30 August 1995
Allow DEF to be an array
Version 14, William Thompson, GSFC, 28 September 1995
Added tags ORIG_DUR, GSET_ID, GET_RAW
Version 15, William Thompson, GSFC, 11 December 1995
Check validity of GSET_ID when using GIS.
Version 16, Zarro, GSFC, 10 December 1996
Added NOCHECK_DB keyword to turbocharge database
updates -- should only be used if integrity checks are
have been applied already.
Version 17, Zarro, GSFC, 16 January 1997
Inhibited GET_CAMPAIGN error message for CMP_NO=1
since this value is being used by EIT.
Version 18, 03-Jun-1997, William Thompson, GSFC
Include PROG_NUM in database writes.
Version 19, Zarro, GSFC, 7 June 1997
Inhibited GET_CAMPAIGN error message for any
invalid campaign #. Prevents an entire set of
plans from being rejected when CMP_NO is invalid
in a single entry.
Version : Version 19
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_EFF_AREA
Purpose : Adds an effective area curve to database
Category : CDS, Calibration, Class3
Explanation : This routine adds an effective area curve as a function of
mirror position for one of the CDS spectral ranges to the
database.
Syntax : ADD_EFF_AREA, DATE_EFF, SPECTRUM, EFF_AREA
Examples : ADD_EFF_AREA, '1995/12/02', 'N2', 0.00040
Inputs : DATE_EFF = The date, and optionally time, that the value
becomes effective. In other words, the calibration
value should be applied to all science data taken on
or after that date. Can be in any CDS time format.
The current date is also stored along with the data.
When the database is read in, the most current
version for a given date is used.
For example, if there were two values of DATE_EFF in
the database,
DATE_EFF = 1995/12/02
DATE_EFF = 1996/09/16
then the first would be used for all data taken
between 1995/12/02 and 1996/09/16, and the second
would be used for all data from 1996/09/16 on. If
there was more than one entry in the database with
an effective date of 1996/09/16, then the most
recent one would be used.
There is one thing to watch out for in maintaining
the database. Taking the above example, if one
added a calibration with an effective date of
1996/05/01, then it would be applied to data between
that date and the next date in the database,
i.e. 1996/09/16. If one wanted the new calibration
to apply to all data after 1996/05/01, then one
would have to also add a new entry for 1996/09/16.
SPECTRUM = A character string representing the spectrum,
e.g. "N1" or "NIS1".
EFF_AREA = The effective area as a function of mirror position,
given as an array of 256 values. Although larger
than the number of actual mirror positions, storing
the data in this way makes it easier to extract out
the data for a given mirror position. E.g., for
mirror position 76, the effective area would be
EFF_AREA(76).
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
ANYTIM2TAI, DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCLOSE [1], DBCLOSE [2]
DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_UTC, PRIV_ZDBASE, UTC2TAI
Common : None.
Restrictions: None.
Side effects: None.
Prev. Hist. : None.
History : Version 1, 16-Sep-1996, William Thompson, GSFC
Contact : WTHOMPSON
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_EFFICIENCY
Purpose : Adds an overall efficiency value to database
Category : CDS, Calibration, Class3
Explanation : This routine adds an overall efficiency value for one of the
CDS spectral ranges to the database.
Syntax : ADD_EFFICIENCY, DATE_EFF, SPECTRUM, EFFICIENCY
Examples : ADD_EFFICIENCY, '1995/12/02', 'N2', 0.00040
Inputs : DATE_EFF = The date, and optionally time, that the value
becomes effective. In other words, the calibration
value should be applied to all science data taken on
or after that date. Can be in any CDS time format.
The current date is also stored along with the data.
When the database is read in, the most current
version for a given date is used.
For example, if there were two values of DATE_EFF in
the database,
DATE_EFF = 1995/12/02
DATE_EFF = 1996/09/16
then the first would be used for all data taken
between 1995/12/02 and 1996/09/16, and the second
would be used for all data from 1996/09/16 on. If
there was more than one entry in the database with
an effective date of 1996/09/16, then the most
recent one would be used.
There is one thing to watch out for in maintaining
the database. Taking the above example, if one
added a calibration with an effective date of
1996/05/01, then it would be applied to data between
that date and the next date in the database,
i.e. 1996/09/16. If one wanted the new calibration
to apply to all data after 1996/05/01, then one
would have to also add a new entry for 1996/09/16.
SPECTRUM = A character string representing the spectrum,
e.g. "N1" or "NIS1".
EFFICIENCY = The overall efficiency value.
Opt. Inputs : None.
Outputs : None.
Opt. Outputs: None.
Keywords : None.
Calls : ***
ANYTIM2TAI, DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCLOSE [1], DBCLOSE [2]
DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_UTC, PRIV_ZDBASE, UTC2TAI
Common : None.
Restrictions: None.
Side effects: None.
Prev. Hist. : None.
History : Version 1, 16-Sep-1996, William Thompson, GSFC
Version 2, 21-May-2002, William Thompson, GSFC
Allow N4 for NIS-2 second order.
Contact : WTHOMPSON
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_EXP_COMM()
Purpose : Adds a CDS experiment comment entry to the as-run database
Explanation : This procedure takes a comment pertaining to the CDS
raster-level (experiment) as-run entry and adds it to the
database "exper_comment". This database contains a series of
such entries, making a historical list.
Use : Result = ADD_EXP_COMM( COMM )
IF NOT ADD_EXP_COMM( COMM ) THEN ...
Inputs : COMM = This is an anonymous structure containing the following
tags:
SEQ_NUM = Experiment sequence number. This serves
as a link to the experiment database.
COMM_NO = Comment ID number. Initially, this is -1.
It is updated by this routine to reflect
the ID number in the database.
COMMENT = A comment.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_EXP_COMM( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3], GET_EXPER
GET_UTC, LOCK_DATABASE, MOD_EXPER, TRIM, UNLOCK_DATABASE, UTC2TAI
Common : None.
Restrictions: Only this routine can be used to add entries to the
EXPER_COMMENT database. Modifying the database by hand could
corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once an entry has been added to the database, it must never be
removed.
The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 7 March 1996
Modified : Version 1, William Thompson, GSFC, 7 March 1996
Version 2, William Thompson, GSFC, 11 April 1996
Call LOCK_DATABASE and UNLOCK_DATABASE
Version : Version 2, 11 April 1996
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_EXPER()
Purpose : Adds a CDS experiment entry to the as-run database
Explanation : This procedure takes a CDS raster-level (experiment) as-run
entry and adds it to the database "experiment". This database
contains a series of such entries, making a historical list.
Use : Result = ADD_EXPER( OBS )
IF NOT ADD_EXPER( OBS ) THEN ...
Inputs : OBS = This is an anonymous structure containing the following
tags:
PROG_NUM = Study counter number.
SEQ_NUM = Unique sequence number. This serves as
the primary key to the database. Note
that SEQ_NUM is *not* assigned by this
routine.
OBS_SEQ = A character string derived from the raster
number and the variation number,
e.g. "R4V3".
COUNT = The number of repeated observations making
up this experiment. Normally 1.
SEQ_IND = The raster counter
RAS_ID = The raster ID number
RAS_VAR = The raster variation index
EXPTIME = The exposure time, in seconds
OBS_MODE = The observing mode.
DW_ID = The data window ID number
DATE_OBS = Date/time of beginning of observation,
in TAI format
DATE_END = Date/time of end of observation, in TAI
format
OBT_TIME = Onboard date/time of beginning of
observation, in TAI format
OBT_END = Onboard date/time of end of observation,
in TAI format
XCEN = Center of instrument field-of-view in
solar X
YCEN = Center of instrument field-of-view in
solar Y
ANGLE = Angle of instrument relative to solar
north
IXWIDTH = Width of field-of-view in instrument X
IYWIDTH = Width of field-of-view in instrument Y
INS_X0 = The instrument origin pointing in X
INS_Y0 = The instrument origin pointing in Y
INS_ROLL = The instrument roll angle
SC_X0 = The spacecraft pointing in X
SC_Y0 = The spacecraft pointing in Y
SC_ROLL = The spacecraft roll
WAVEMIN = The minimum wavelength of observation, in
Angstroms.
WAVEMAX = The maximum wavelength, in Angstroms
TRACKING = True if tracking is on
SER_ID = The series ID number
OPSLBITS = The OPS-L status bits at the start of the
observation.
OPSRBITS = The OPS-R status bits at the start of the
observation.
SLIT_POS = The slit position at the start of the
observation.
MIR_POS = The mirror position at the start of the
observation.
EV_ENAB = True if event recognition enabled
COMP_ERR = True if a compression error was
encountered.
VDS_PMCP = The VDS MCP programmable voltage setting
VDS_MODE = The VDS readout mode.
VDS_ORI = True if the VDS telemetry data is oriented
by columns
VDS_ACC = True if VDS is operated in accumulate mode
GSET_ID = GIS Setup ID
DETECTOR = Either N or G for NIS/GIS.
ZONE_ID = Pointing zone ID
SLIT_NUM = Slit number
FILENAME = FITS file name
SEQVALID = True for valid science data
DATASRC = Data source, either Q(uicklook) or F(inal
distribution).
It can also be an array of such structures.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_EXPER( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
CDS_MESSAGE, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBDELETE [1], DBDELETE [2]
DBDELETE [3], DBFIND [1], DBFIND [2], DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3]
DB_INFO [1], DB_INFO [2], DB_INFO [3], GET_DATAWIN, GET_EXPER, GET_RASTER, GET_UTC
LOCK_DATABASE, TRIM, UNLOCK_DATABASE, UTC2TAI
Common : None.
Restrictions: Only this routine can be used to add entries to the EXPERIMENT
database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once an entry has been added to the database, it must never be
removed.
The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 30 June 1995
Modified : Version 1, William Thompson, GSFC, 30 June 1995
Version 2, William Thompson, GSFC, 4 August 1995
Changed so that SEQ_NUM is not assigned by this
routine.
Version 3, William Thompson, GSFC, 21 February 1996
Modified to be more robust. It will complain about not
finding IDs in the databases, but will insert the
catalog entry anyway.
Version 4, William Thompson, GSFC, 23 February 1996
Modified for version 2 of the experiment databases.
Version 5, William Thompson, GSFC, 1 April 1996
Added database locking capability.
Version 6, William Thompson, GSFC, 1 April 1996
Added parameter DATASRC
Version 7, William Thompson, GSFC, 9 April 1996
Split off locking mechanism to separate routines
LOCK_DATABASE, UNLOCK_DATABASE
Version 8, William Thompson, GSFC, 25 March 1997
Added check to make sure entry didn't appear while the
routine was running.
Version : Version 8, 25 March 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_F_RASTER()
Purpose : Adds a fundamental raster definition to the database
Explanation : This procedure takes the fundamental parameters of a raster
definition and adds them to the database "raster". The ID
number for the raster is assigned.
Use : Result = ADD_F_RASTER( DEF )
IF NOT ADD_F_RASTER( DEF ) THEN ...
Inputs : DEF = This is a structure of type "cds_f_raster" containing the
following tags:
RAS_ID = Raster ID number. Initially, this is
zero. It is updated by this routine to
reflect the ID number in the database.
DETECTOR = Either "G" for GIS or "N" for NIS.
RAS_DESC = A short description of the raster, giving
its purpose.
SLIT_NUM = The ID number for the slit to be used.
XSTEP = The step size in the X direction, in arcsec.
YSTEP = The step size in the Y direction, in arcsec.
NX = The number of exposure positions in X.
NY = The number of exposure positions in Y.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
The tag RAS_ID in the input structure is updated to reflect
the ID number assigned in the database.
Opt. Outputs: None.
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 = ''
Result = ADD_F_RASTER( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
RAS_ID = If the definition matches one that is already in the
database, then this keyword returns the ID of the
matching fundamental raster. Otherwise, a -1 is returned.
CHECK_ONLY= If this keyword is set, then the routine only checks to see
if the proposed entry is valid, but does not attempt to
place it in the database.
Calls : ***
CHK_F_RASTER, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3]
DBEXT [4], DBFIND [1], DBFIND [2], DBFIND [3], DBMATCH [1], DBMATCH [2], DBMATCH [3]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3], NUM2STR
CALLED BY:
IMPORT_PLAN, IMPORT_STUDY, TP_WRT_FRAST
Common : None.
Restrictions: Only this routine can be used to add fundamental raster
definitions to the database. Modifying the database by hand
could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a raster definition has been added to the database, it
must never be removed.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 4 April 1994
Modified : Version 1.0, William Thompson, GSFC, 4 May 1994
Version 2, Liyun Wang, GSFC/ARC, September 21, 1994
Added the keyword ERRMSG.
Version 3, Liyun Wang, GSFC/ARC, November 4, 1994
CHK_F_RASTER is called to check the existence of the
given fundamental raster
Version 4, William Thompson, GSFC, 8 November 1994
Added keyword RAS_ID
Version 5, William Thompson, GSFC, 29 December 1994
Fixed bug when inputs are bytes.
Version 6, William Thompson, GSFC, 2 March 1995
Enforce uniqueness for RAS_DESC.
Added keyword CHECK_ONLY.
Version 7, William Thompson, GSFC, 14 March 1995
Changed DBFIND to DBMATCH for RAS_DESC
Version : Version 7, 14 March 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_F_STUDY()
Purpose : Adds a fundamental study definition to the database
Explanation : This procedure takes the fundamental parameters of a study
definition and adds them to the databases "study",
"study_title", and "study2". The ID numbers for the study and
title are assigned.
Use : Result = ADD_F_STUDY( DEF )
IF NOT ADD_F_STUDY( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
STUDY_ID = Study ID number. Initially, this is -1.
It is updated by this routine to reflect
the ID number in the database.
TITLE_ID = Study title ID number. Initially, this
is -1. It is updated by this routine to
reflect the ID number in the database.
OBS_PROG = Name of the study
TITLE = A descriptive title for the study
CATEGORY = The study category, either "T"est,
"S"cience or "C"alibration.
N_RASTER_DEF= The number of rasters in the definition.
RASTERS = A array listing the rasters to be used
during the study.
The raster descriptions themselves are structures, of
type "cds_f_st_ras", with the following tags:
RAS_ID = Raster ID number, pointing to the
definition of the raster.
POINTING = How to handle the pointing. Valid
entries are:
1 = No pointing, supply in plan
0 = Absolute pointing
-1 = Offset value from first raster
INS_X = Together with INS_Y, the pointing to use
when user-supplied values are not
allowed. Only valid when POINTING=0
(absolute) or POINTING=-1 (relative to
1st raster).
INS_Y = ...
If N_RASTER_DEF is 0, then the RASTERS tag can be
omitted. However, in that case, an additional tag must
be added,
VAR_POINT = Either Y or N depending on whether the
study has variable pointing or fixed
pointing.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
The tags STUDY_ID and TITLE_ID in the input structure are
updated to reflect the ID numbers assigned in the database.
Opt. Outputs: None.
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 = ''
Result = ADD_F_STUDY( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
STUDY_ID = If the definition matches one that is already in the
database, then this keyword returns the ID of the
matching study. Otherwise, a -1 is returned.
CHECK_ONLY= If this keyword is set, then the routine only checks to see
if the proposed entry is valid, but does not attempt to
place it in the database.
Calls : ***
CHK_F_STUDY, CHK_T_STUDY, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1]
DBBUILD [2], DBBUILD [3], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBDELETE [1]
DBDELETE [2], DBDELETE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND [1]
DBFIND [2], DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_INFO [1], DB_INFO [2]
DB_INFO [3], NUM2STR
CALLED BY:
IMPORT_PLAN, IMPORT_STUDY, MK_STUDY
Common : None.
Restrictions: Only this routine can be used to add fundamental study
definitions to the database. Modifying the database by hand
could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a study definition has been added to the database, it
must never be removed.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 28 April 1994
Modified : Version 1, William Thompson, GSFC, 3 August 1994
Version 2, Liyun Wang, GSFC/ARC, September 21, 1994
Added the keyword ERRMSG.
Version 3, Liyun Wang, GSFC/ARC, November 4, 1994
CHK_F_STUDY is called to check the existence of the
given fundamental study
Version 3.1, Zarro GSFC/ARC, November 7, 1994
Added DBSTUDY_ID
Version 4, William Thompson, GSFC/ARC, 8 November 1994
Renamed DBSTUDY_ID keyword to STUDY_ID.
Changed how it is determined.
Fixed bug with duplicate name check.
Version 5, William Thompson, GSFC, 21 November 1994
Removed item N_RASTERS0
Added item N_RASTER_DEF
Version 6, William Thompson, GSFC, 29 December 1994
Fixed bug when inputs are bytes.
Version 7, William Thompson, GSFC, 10 February 1995
Changed N_POINTINGS to VAR_POINT.
Changed definition of POINTING.
Removed VAR_RASTERS.
Version 8, William Thompson, GSFC, 2 March 1995
Enforce uniqueness for TITLE.
Added keyword CHECK_ONLY.
Version 9, William Thompson, GSFC, 14 March 1995
Used DBMATCH instead of DBFIND for TITLE.
Version 10, William Thompson, GSFC, 12 May 1995
Modified to split off separate study_title database
Version 11, William Thompson, GSFC, 6 October 1995
Modified to allow for cases with N_RASTER_DEF=0.
Version : Version 11, 6 October 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_FLAG()
Purpose : Adds a CDS flag receiver science plan record to the database
Explanation : This procedure takes a CDS flag receiver science plan entry and
adds it to the database "sci_flag". This database contains a
series of such entries, making a historical list.
Use : Result = ADD_FLAG( DEF )
IF NOT ADD_FLAG( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
PROG_ID = Program ID, linking one or more studies
together
STUDY_ID = Number defining the study
STUDYVAR = Number giving the study variation ID
SCI_OBJ = Science objective from the daily science
meeting
SCI_SPEC = Specific science objective from meeting
CMP_NO = Campaign number
OBJECT = Code for object planned to be observed
OBJ_ID = Object identification
RCVR_START = Date/time of beginning of receiver status,
in TAI format
RCVR_STOP = Date/time of end of receiver status, in
TAI format
ORIG_DUR = Original duration of the observation, in
seconds, before being truncated by
following time-tagged observations.
N_RASTERS1 = Variable number of rasters parameter
TRACKING = True (1) if feature tracking to be used,
or false (0) otherwise
N_POINTINGS= Number of pointings to use with study.
Can be either 0 or 1.
REPOINT = Either 1 to allow repoints or 0 to
disallow.
GSET_ID = GSET ID number
If N_POINTINGS is greater than 0, then there will be the
additional tag POINTINGS. This is an array of pointing
positions. It itself is a structure, of type
PLAN_PNT_STRUC, with the following tags:
INS_X = Pointing in X relative to sun center
INS_Y = Pointing in Y relative to sun center
ZONE_ID = Pointing zone ID
DEF is also allowed to be an array of such structures.
In such a case, the substructure POINTINGS will be
dimensioned based on the largest value of N_POINTINGS.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_FLAG( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBFIND [1], DBFIND [2], DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_CAMPAIGN
GET_F_RASTER, GET_GSET, GET_OBJECT, GET_PROGRAM, GET_STUDY, TAI2UTC, TRIM, UNIQ [1]
UNIQ [2], UNIQ [3]
CALLED BY:
MOD_FLAG
Common : None.
Restrictions: Only this routine or DEL_FLAG can be used to add or delete
flag descriptions to or from the database. Modifying the
database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 25 July 1994
Modified : Version 1, William Thompson, GSFC, 3 August 1994
Version 2, Liyun Wang, GSFC/ARC, September 21, 1994
Added the keyword ERRMSG.
Version 3, William Thompson, GSFC, 8 November 1994
Modified how GET_OBJECT was called
Version 4, William Thompson, GSFC, 21 November 1994
Added item N_REPEAT_S
Version 5, William Thompson, GSFC, 13 December 1994
Modified to write times out to millisecond accuracy.
Version 6, William Thompson, GSFC, 20 December 1994
Changed OBJECT to three characters
Version 7, William Thompson, GSFC, 13 February 1995
Changed the way pointing is handled
Version 8, William Thompson, GSFC, 28 March 1995
Added tag ZONE_ID
Version 9, William Thompson, GSFC, 8 May 1995
Modified to pay attention to DELETED field in database
Version 10, William Thompson, GSFC, 29 June 1995
Modified to change times in structure to millisecond
accuracy.
Version 11, William Thompson, GSFC, 5 July 1995
Added tag REPOINT.
Version 12, William Thompson, GSFC, 31 August 1995
Allow DEF to be an array
Version 13, William Thompson, GSFC, 6 October 1995
Added tags ORIG_DUR, GSET_ID
Removed tag N_REPEAT_S
Force N_POINTINGS to be either 0 or 1
Version 14, William Thompson, GSFC, 11 December 1995
Check validity of GSET_ID when using GIS.
Version : Version 14, 11 December 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_GSET()
Purpose : Adds an entry to the GIS setup database.
Explanation : This procedure adds an entry to the GIS setup description
catalog. The ID number for the GIS setup description is
assigned.
Use : Result = ADD_GSET( DEF )
IF NOT ADD_GSET( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
GSET_ID = GIS setup ID number. Initially, this
is zero. It is updated by this routine to
reflect the ID number in the database.
HVOLT = High voltages (4)
LLD = Low level discriminators (4)
LUT_CHKSUM = LUT checksum in hexidecimal notation (4)
LUT_PAR = LUT parameters (4,11)
RAW_ID = RAW GIS science data file ID (4)
SLIT_NUM = Slit number
ZONE_ID = Zone ID number
FIL_ID = Filament ID number, or 0 for science data
FFB = Front face bias, either -1 or +1
DET_USED = Whether or not detector is used, either 0
or 1 (4)
GSET_DESC = Free format descriptions (4)
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
The tag GSET_ID in the input structure is updated to reflect
the ID number assigned in the database.
Opt. Outputs: None.
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 = ''
Result = ADD_GSET( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
SAME_DATA [1], SAME_DATA [2]
CALLED BY:
mk_gset
Common : None.
Restrictions: Only this routine can be used to add GSET setup entries to
the database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a GIS setup definition has been added to the database,
it must never be removed.
There is currently no safeguard to prevent the same data being
added to the database twice.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 7 September 1995
Modified : Version 1, William Thompson, GSFC, 7 September 1995
Version 2, William Thompson, GSFC, 14 September 1995
Replace FIL_CUR with FFB
Version 3, William Thompson, GSFC, 28 September 1995
Make LUT_CHKSUM an array.
Make LUT_PAR floating point.
Version 4, C D Pike, RAL, 2-October-95
Fix checking of LUT checksum string lengths.
Version 5, William Thompson, GSFC, 4 October 1995
Correct bug with LUT_CHKSUM and GSET_DESC not being
written correctly.
Version 6, William Thompson, GSFC, 25 January 1996
Modified definition of LUT_PAR and added DET_USED.
Version : Version 6, 25 January 1996
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_INST_DLYD()
Purpose : Adds an entry to the instrument delayed command database.
Explanation : This procedure adds an entry for a given instrument for delayed
command upload time to the "inst_delayed_cmd" database.
Use : Result = ADD_INST_DLYD( RES )
IF ADD_INST_DLYD( RES ) EQ 0 THEN ...
Inputs : RES = A structure variable containing the following tags:
INSTRUME = Single letter code specifying the
instrument.
EARLIEST = The start time of the reserved time
LATEST = The end time of the reserved time.
NUM_CMDS = The expected average number of OBDH block
commands per minute between the start time
and end time.
It can also be an array of such structures.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_INST_DLYD( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3]
GET_INSTRUMENT
CALLED BY:
READ_KAP
Common : None.
Restrictions: Only this routine or CLR_INST_DLYD can be used to add or delete
delayed command time entries to the database. Modifying the
database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: None.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 6 March 1996
Modified : Version 1, William Thompson, GSFC, 6 March 1996
Version : Version 1, 6 March 1996
[Previous]
[Next]
NAME:
ADD_LASCO_LOGO
PURPOSE:
This function inserts the LASCO logo into the corner of an image
CATEGORY:
LASCO_SYNOPTIC
CALLING SEQUENCE:
Result = ADD_LASCO_LOGO(Img)
INPUTS:
Img: Input image
KEYWORDS:
LEFT When set, puts logo on lower left corner
OUTPUTS:
Result: Output image with same type and dimenstion as input
CALLS: ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], FILEPATH
CALLED BY:
MAKE_DAILY_IMAGE, MKMOVIE, MKMOVIE0 obsolete version of mkmoviepro, MK_IMG
WRUNMOVIE [2]
COMMON:
ADD_LASCO_LOGO_COMMON, w_logo
Temporary storage for the logo
PROCEDURE:
Checks to see if the logo array has been read in, and restores it
if not. Then inserts the logo into the lower, right hand corner.
MODIFICATION HISTORY:
Written by: Scott Paswaters, NRL, Dec 1997
99/07/14 N Rich Add LEFT keyword
@(#)add_lasco_logo.pro 1.3 07/14/99 LASCO IDL LIBRARY
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_LINELIST()
Purpose : Adds a line list definition to the database
Explanation : This procedure takes a line list definition and adds it to line
list databases "linelist" and "linelist2". The ID number for
the linelist is assigned.
Use : Result = ADD_LINELIST( DEF )
IF NOT ADD_LINELIST( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
LL_ID = Line list ID number. Initially, this is
zero. It is updated by this routine to
reflect the ID number in the database.
DETECTOR = Either "G" for GIS or "N" for NIS.
LL_DESC = A description of the line list, e.g.
"Temperature sensitive line pairs". Can be
up to 65 characters.
LINES = An array containing the line definitions.
The line definitions themselves are structures, of type
"cds_lines", with the following tags:
LINENAME = Line name, e.g. "He II 304". Can be up to
12 characters.
WAVELNTH = The wavelength of the line, in Angstroms.
GR_ORDER = The grating order
CEN_PIX = The central detector pixel.
WAVEBAND = The wavelength band, 1 or 2 for NIS, 1-4 for
GIS.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
The tag LL_ID in the input structure is updated to reflect
the ID number assigned in the database.
Opt. Outputs: None.
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 = ''
Result = ADD_LINELIST( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
LL_ID = If the definition matches one that is already in the
database, then this keyword returns the ID of the
matching linelist. Otherwise, a -1 is returned.
CHECK_ONLY= If this keyword is set, then the routine only checks to see
if the proposed entry is valid, but does not attempt to
place it in the database.
Calls : ***
CHK_LINELIST, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBDELETE [1], DBDELETE [2]
DBDELETE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4], DBFIND [1], DBFIND [2]
DBFIND [3], DBMATCH [1], DBMATCH [2], DBMATCH [3], DBOPEN [1], DBOPEN [2]
DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3], NUM2STR
CALLED BY:
IMPORT_PLAN, IMPORT_STUDY, TP_WRT_LLIST
Common : None.
Restrictions: Only this routine can be used to add line list definitions to
the database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a line list definition has been added to the database, it
must never be removed.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 30 March 1994
Modified : Version 1.0, William Thompson, GSFC, 2 June 1994
Version 2, Liyun Wang, GSFC/ARC, September 21, 1994
Added the keyword ERRMSG.
Version 3, Liyun Wang, GSFC/ARC, November 4, 1994
CHK_LINELIST is called to check the existence of the
given line list
Version 4, William Thompson, GSFC, 8 November 1994
Added keyword LL_ID
Version 5, William Thompson, GSFC, 2 March 1995
Enforce uniqueness for LL_DESC.
Added keyword CHECK_ONLY.
Version 6, William Thompson, GSFC, 14 March 1995
Changed DBFIND to DBMATCH for LL_DESC.
Version 7, William Thompson, GSFC, 15 March 1995
Removed LL_TITLE. Changed so that LL_DESC only needs
to be unique for a given detector.
Version 8, William Thompson, GSFC, 16 May 1997
Allow for possibility of CHK_LINELIST returning an
array.
Version : Version 8, 16 May 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_MAIN()
Purpose : Adds a CDS main entry to the as-run database
Explanation : This procedure takes a CDS study-level (main) as-run entry and
adds it to the database "main". This database contains
a series of such entries, making a historical list.
Use : Result = ADD_MAIN( OBS )
IF NOT ADD_MAIN( OBS ) THEN ...
Inputs : OBS = This is an anonymous structure containing the following
tags:
PROG_NUM = Study counter number. This forms the
primary key for this database.
PROG_ID = Program ID, linking one or more studies
together
PROG_IND = An index, reflecting one's position within
a repeated sequence of studies via the
N_REPEAT_S mechanism.
STUDY_ID = Number defining the study
STUDYVAR = Number giving the study variation ID
OBS_PROG = Name of the study
DETECTOR = Detector, "N", "G", or "B"(oth).
SCI_OBJ = Science objective from the daily science
meeting
SCI_SPEC = Specific science objective from meeting
CMP_NO = Campaign number
OBJECT = Code for object planned to be observed
OBJ_ID = Object identification
DATE_OBS = Date/time of beginning of observation,
in TAI format
DATE_END = Date/time of end of observation, in TAI
format
OBT_TIME = Onboard date/time of beginning of
observation, in TAI format
OBT_END = Onboard date/time of end of observation,
in TAI format
XCEN = Center of instrument field-of-view in
solar X
YCEN = Center of instrument field-of-view in
solar Y
ANGLE = Angle of instrument relative to solar
north
IXWIDTH = Width of field-of-view in instrument X
IYWIDTH = Width of field-of-view in instrument Y
SEQ_FROM = Start of range of observing sequence
numbers.
SEQ_TO = End of range of observing sequence
numbers.
It can also be an array of such structures.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_MAIN( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
CDS_MESSAGE, DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2]
DBBUILD [3], DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBOPEN [1], DBOPEN [2]
DBOPEN [3], GET_CAMPAIGN, GET_MAIN, GET_OBJECT, GET_PROGRAM, GET_STUDY, GET_UTC
LOCK_DATABASE, TRIM, UNLOCK_DATABASE, UTC2TAI
Common : None.
Restrictions: Only this routine can be used to add entries to the MAIN
database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once an entry has been added to the database, it must never be
removed.
The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 30 June 1995
Modified : Version 1, William Thompson, GSFC, 30 June 1995
Version 2, William Thompson, GSFC, 21 February 1996
Modified to be more robust. It will complain about not
finding IDs in the databases, but will insert the
catalog entry anyway.
Version 3, William Thompson, GSFC, 2 April 1996
Modified for version 3 of the catalog.
Version 4, William Thompson, GSFC, 9 April 1996
Added calls to LOCK_DATABASE, UNLOCK_DATABASE
Version 5, William Thompson, GSFC, 25 March 1997
Added check to make sure that the entry didn't appear
while the routine was running.
Version : Version 5, 25 March 1997
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_MIRSHIFT()
Purpose : Register NIS mirror shift calibrations in the database.
Category : Calibration, NIS, Coordinates
Explanation : Adds an NIS mirror shift calibration to the database. The
calibration is marked with the current date/time.
Syntax : Result = ADD_MIRSHIFT( DATE_EFF, SPECTRUM, COEFF )
Examples : IF NOT ADD_MIRSHIFT('1995-12-2',1,COEFF) THEN ...
Inputs : DATE_EFF = The date, and optionally time, that the value
becomes effective. In other words, the calibration
value should be applied to all science data taken on
or after that date. Can be in any CDS time format.
The current date is also stored along with the data.
When the database is read in, the most current
version for a given date is used.
For example, if there were two values of DATE_EFF in
the database,
DATE_EFF = 1995/12/02
DATE_EFF = 1996/09/16
then the first would be used for all data taken
between 1995/12/02 and 1996/09/16, and the second
would be used for all data from 1996/09/16 on. If
there was more than one entry in the database with
an effective date of 1996/09/16, then the most
recent one would be used.
There is one thing to watch out for in maintaining
the database. Taking the above example, if one
added a calibration with an effective date of
1996/05/01, then it would be applied to data between
that date and the next date in the database,
i.e. 1996/09/16. If one wanted the new calibration
to apply to all data after 1996/05/01, then one
would have to also add a new entry for 1996/09/16.
SPECTRUM = Either 1 or 2
COEFF = The NIS mirror shift calibration coefficients. The
polynomial
SHIFT = POLY(MIR_POS - 128, COEFF)
returns the shift as a function of mirror position.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_MIRSHIFT( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
ANYTIM2TAI, DBBUILD [1], DBBUILD [2], DBBUILD [3], DBCLOSE [1], DBCLOSE [2]
DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_UTC, PRIV_ZDBASE, UTC2TAI
Common : None.
Restrictions: None.
Side effects: None.
Prev. Hist. : None.
History : Version 1, 22-Jan-1999, William Thompson, GSFC
Contact : WTHOMPSON
[Previous]
[Next]
NAME:
ADD_MISSING_BLOCKS
PURPOSE:
Masks blocks in the input image which are identified in the MISSLIST
keyword.
CATEGORY:
LASCO Level 1 post-processing
CALLING SEQUENCE:
Result = add_missing_blocks(image, header)
INPUTS:
image LASCO image with filled-in missing blocks (if any)
header LASCO header structure
KEYWORD PARAMETERS:
OUTPUTS:
image with missing blocks masked
CALLS: ***
C2_WARP, C3_WARP, DATATYPE [1], DATATYPE [2], DATATYPE [3], LASCO_FITSHDR2STRUCT
STR_SEP
COMMON BLOCKS:
SIDE EFFECTS:
RESTRICTIONS:
PROCEDURE:
Obtain coordinates of missing blocks from MISSLIST keyword; create
a mask of the blocks; warp the mask; multiply image by the mask
MODIFICATION HISTORY:
Written by: Nathan Rich, 8/29/02.
@(#)add_missing_blocks.pro 1.1 10/01/02 LASCO IDL LIBRARY
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_NRT_RES()
Purpose : Adds an entry to the NRT reserved database.
Explanation : This procedure adds an entry for a given instrument for NRT
reserved time to the "nrt_reserved" database.
Use : Result = ADD_NRT_RES( RES )
IF ADD_NRT_RES( RES ) EQ 0 THEN ...
Inputs : RES = A structure variable containing the following tags:
INSTRUME = Single letter code specifying the
instrument.
START_TIME = The start time of the reserved time
END_TIME = The end time of the reserved time.
CMD_RATE = The expected average number of OBDH block
commands per minute between the start time
and end time.
STATUS = The acceptance status for this activity.
Possible values are REQUESTED, CONFIRMED,
or DENIED. Only the first character is
stored in the database.
It can also be an array of such structures.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_NRT_RES( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3]
GET_INSTRUMENT
CALLED BY:
READ_KAP
Common : None.
Restrictions: Only this routine or CLR_NRT_RES can be used to add or delete
NRT reserved entries to the database. Modifying the database
by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: None.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 3 April 1995
Modified : Version 1, William Thompson, GSFC, 3 April 1995
Version 2, William Thompson, GSFC, 22 May 1995
Modified to allow array inputs.
Version : Version 2, 22 May 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_OTHER_OBS()
Purpose : Adds a plan entry for another observatory to database
Explanation : This procedure takes an "Other_Obs" science plan entry from the
KAP and adds it to the database "other_obs". This database
contains a series of such entries, making a historical list.
Use : Result = ADD_OTHER_OBS( DEF )
IF NOT ADD_OTHER_OBS( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
TELESCOP = The name of the telescope.
MNEMONIC = The mnemonic for the telescope.
SCI_OBJ = Science objective
SCI_SPEC = Specific science objective
NOTES = Further notes about the observation
START_TIME = Date/time of beginning of observation,
in TAI format
END_TIME = Date/time of end of observation, in TAI
format
OBJECT = Code for object planned to be observed
OBJ_ID = Object identification
CMP_NO = Campaign number
It can also be an array of such structures.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_OTHER_OBS( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBOPEN [1], DBOPEN [2], DBOPEN [3]
GET_CAMPAIGN, GET_OBJECT
CALLED BY:
READ_KAP
Common : None.
Restrictions: Only this routine or DEL_PLAN can be used to add or delete
science plan descriptions to or from the database.
Modifying the database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: None.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 12 April 1995
Modified : Version 1, William Thompson, GSFC, 12 April 1995
Version : Version 1, 12 April 1995
[Previous]
[Next]
PROJECT:
SOHO - CDS
NAME:
ADD_PATH
PURPOSE:
Add directory (and optionally all its subdirs) into IDL path
EXPLANATION:
CALLING SEQUENCE:
ADD_PATH, path_name [,/append] [,index=index]
INPUTS:
path_name -- A string scalar of a valid directory name.
OPTIONAL INPUTS:
INDEX -- Position in the !path where the directory name is inserted;
ignored if the keyword APPEND is set.
OUTPUTS:
None, but !path is changed.
OPTIONAL OUTPUTS:
None.
KEYWORD PARAMETERS:
APPEND -- By default, the given directory name is added in the
beginning of !path. Set this keyword will add the directory
name in the end of !path.
EXPAND -- Set this keyword if the PATH_NAME needs to be expanded.
CALLS: ***
ARR2STR [1], Arr2Str [2], CHK_DIR [1], CHK_DIR [2], CONCAT_DIR [1], CONCAT_DIR [2]
CONCAT_DIR [3], DATATYPE [1], DATATYPE [2], DATATYPE [3], STR_SEP, concat_dir [4]
CALLED BY:
DO_EIT_SCALING, EIT__DEFINE, GET_GEV, GET_NAR, HSI_LIGHTCURVE_TEST, HXRS__DEFINE
ITOOL_RD_FITS, LOAD_EIT_COLOR, LOAD_PATH, READ_EIT_FILE, SPECPLOT__DEFINE
hessi_version
COMMON BLOCKS:
None.
RESTRICTIONS:
None.
SIDE EFFECTS:
None.
CATEGORY:
Utilities, OS
PREVIOUS HISTORY:
Written October 8, 1994, by Liyun Wang, GSFC/ARC
MODIFICATION HISTORY:
Version 2, Liyun Wang, GSFC/ARC, October 17, 1994
Added EXPAND keyword
VERSION:
Version 2, October 17, 1994
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_PLAN()
Purpose : Adds a SoHO/CDS science plan record to the database
Explanation : This procedure takes a SoHO/CDS science plan entry and
adds it to the database "sci_plan". This database contains
a series of such entries, making a historical list.
Use : Result = ADD_PLAN( DEF )
IF NOT ADD_PLAN( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
SCI_OBJ = Science objective from the daily science
meeting
SCI_SPEC = Specific science objective from meeting
NOTES = Further notes about the observation
START_TIME = Date/time of beginning of observation,
in TAI format
END_TIME = Date/time of end of observation, in TAI
format
OBJECT = Code for object planned to be observed
OBJ_ID = Object identification
PROG_ID = Program ID, linking one or more studies
together
XCEN = Center(s) of instrument FOV along X
axis, given as a character string.
YCEN = Center(s) of instrument FOV along Y
axis, given as a character string.
CMP_NO = Campaign number
DISTURBANCES = Description of any disturbances
It can also be an array of such structures.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
Keywords : INSTRUMENT = Instrument to add plan entry for. Can be passed
either as the instrument name or as a single
character code value. Normally, this routine is
used for adding CDS records. However, the use of
the INSTRUMENT keyword allows it to be used with
the SOC planning tool.
ERRMSG = If defined and passed, then any error messages
will be returned to the user in this parameter
rather than depending on the MESSAGE routine in
IDL. If no errors are encountered, then a null
string is returned. In order to use this feature,
ERRMSG must be defined first, e.g.
ERRMSG = ''
Result = ADD_PLAN( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBFIND [1], DBFIND [2], DBFIND [3], DBOPEN [1], DBOPEN [2], DBOPEN [3], GET_CAMPAIGN
GET_INSTRUMENT, GET_OBJECT, GET_PROGRAM, TAI2UTC, TRIM, UNIQ [1], UNIQ [2], UNIQ [3]
CALLED BY:
IMPORT_PLAN
Common : None.
Restrictions: The INSTRUMENT keyword must *only* be used with the SOC
planning tool. Its use disables some CDS-specific checks.
Only this routine or DEL_PLAN can be used to add or delete
science plan descriptions to or from the database.
Modifying the database by hand could corrupt its integrity.
The data types and sizes of the structure elements must match
the definitions in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: The dates in the structure are rounded off to millisecond
accuracy.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 26 July 1994
Modified : Version 1, William Thompson, GSFC, 2 August 1994
Version 2, Liyun Wang, GSFC/ARC, September 22, 1994
Added the keyword ERRMSG.
Version 3, William Thompson, GSFC, 8 November 1994
Modified how GET_OBJECT is called.
Version 4, William Thompson, GSFC, 13 December 1994
Modified to write times out to millisecond accuracy.
Version 5, William Thompson, GSFC, 20 December 1994
Changed OBJECT to three characters
Version 6, William Thompson, GSFC, 8 May 1995
Modified to pay attention to DELETED field in database
Version 7, William Thompson, GSFC, 16 May 1995
Added keyword INSTRUMENT
Version 8, William Thompson, GSFC, 22 May 1995
Made INS variable a named structure.
Version 9, William Thompson, GSFC, 29 June 1995
Changed so that time in structure is rounded off to
millisecond accuracy.
Version 10, William Thompson, GSFC, 30 August 1995
Added tags XCEN, YCEN
Allow input to be an array
Version 11, Zarro, GSFC, 14 January 1997
Made CMP_NO = 1 a valid ID to allow adding
EIT plans
Version : Version 11
[Previous]
[Next]
Name: add_pro
Purpose: perform rudimentary checks on input idl module(s) and place it
online if everything copecetic
Input Parameters
module - name of module(s) (including path) or directory containing
multiple modules to check
Calling Sequence:
add_pro, module [,/doc]
CALLS:
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_PROGRAM()
Purpose : Adds a CDS program definition to the database
Explanation : This procedure takes a CDS multi-observation program definition
and adds it to the database "program".
Use : Result = ADD_PROGRAM( DEF )
IF NOT ADD_PROGRAM( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
PROGNAME = Name of the program.
PROG_ID = Unique identifier number. Initially this is
zero. It is updated by this routine to
reflect the ID number in the database.
PROGDESC = Up to five lines of text describing the
program.
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
Opt. Outputs: None.
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 = ''
Result = ADD_PROGRAM( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
CALLED BY:
XPROGRAM_ADD
Common : None.
Restrictions: Only this routine can be used to add program descriptions to
the database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a program description has been added to the database, it
must never be removed.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 21 July 1994
Modified : Version 1.0, William Thompson, GSFC, 21 July 1994
Version 2, Liyun Wang, GSFC/ARC, September 22, 1994
Added the keyword ERRMSG.
Version : Version 2, September 22, 1994
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_RAW()
Purpose : Adds an entry to the GIS raw data file catalog.
Explanation : This procedure adds an entry to the GIS raw data file catalog.
The ID number for the raw data file is assigned.
Use : Result = ADD_RAW( DEF )
IF NOT ADD_RAW( DEF ) THEN ...
Inputs : DEF = This is an anonymous structure containing the following
tags:
RAW_ID = Raw data file ID number. Initially, this
is zero. It is updated by this routine to
reflect the ID number in the database.
RAW_DESC = Free format description
START_TIME = Start time of data taking, in TAI format.
DET_NUM = GIS detector number: 1-4
SLIT_NUM = Slit number
HVOLT = High voltage value
LLD = Low level discriminator value
CNT_RATE = Count rate range (min, max)
RAW_FILE = Raw data file name
FFB = Front face bias
FIL_ID = Filament ID number
FIL_CUR = Filament current
ZONE_ID = Zone ID number
Opt. Inputs : None.
Outputs : The result of the function is a logical value representing
whether or not the operation was successful, where 1 is
successful and 0 is unsuccessful.
The tag RAW_ID in the input structure is updated to reflect
the ID number assigned in the database.
Opt. Outputs: None.
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 = ''
Result = ADD_RAW( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]
DBOPEN [1], DBOPEN [2], DBOPEN [3], DB_INFO [1], DB_INFO [2], DB_INFO [3]
CALLED BY:
CAT_RAW
Common : None.
Restrictions: Only this routine can be used to add raw data file entries to
the database. Modifying the database by hand could corrupt its
integrity.
The data types and sizes of the structure elements must match
the definitions in the database. The string lengths must not
exceed the lengths defined in the database.
!PRIV must be 2 or greater to use this routine.
Side effects: Once a raw data file definition has been added to the database,
it must never be removed.
The date in the structure is rounded off to millisecond
accuracy.
There is currently no safeguard to prevent the same data being
added to the database twice.
Category : Planning, Databases.
Prev. Hist. : None.
Written : William Thompson, GSFC, 7 September 1995
Modified : Version 1, William Thompson, GSFC, 7 September 1995
Version 2, William Thompson, GSFC, 14 September 1995
Added RAW_DESC, rename FF_BIAS to FFB to match GSET
database.
Version : Version 2, 14 September 1995
[Previous]
[Next]
Project : SOHO - CDS
Name : ADD_RES_TYPE()
Purpose : Adds a resource type name to the database
Explanation : This procedure adds a resource type name such as "DSN_CONTACT"
to the "resource_type" database. The ID number for the
resource type is assigned.
Use : Result = ADD_RES_TYPE( TYPE )
IF ADD_RES_TYPE( TYPE ) EQ 0 THEN ...
Inputs : TYPE = A string parameter containing the name of the resource
type. Can be up to 30 characters long.
Opt. Inputs : None.
Outputs : The result of the function is the ID number assigned to the
resource type. If not successful, then 0 is returned instead.
Opt. Outputs: None.
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 = ''
Result = ADD_RES_TYPE( ERRMSG=ERRMSG, ... )
IF ERRMSG NE '' THEN ...
CHECK_ONLY= If this keyword is set, then the routine only checks to see
if the proposed entry is valid, but does not attempt to
place it in the database.
Calls : ***
DATATYPE [1], DATATYPE [2], DATATYPE [3], DBBUILD [1], DBBUILD [2], DBBUILD [3]
DBCLOSE [1], DBCLOSE [2], DBCLOSE [3], DBEXT [1], DBEXT [2], DBEXT [3], DBEXT [4]