CDS/GIS | ![]() |
Associated software note is #55, the User Manual.
This page contains information for the experienced GIS user. Please click on a topic in the list below. If you cannot find the information you require please contact Lucie Green.
- GIS data
- Reading GIS data into SSW IDL
- The Quick Look Data Structure (qlds)
- A quick look at the data
- Extracting data from Quick Look Data Structure
- Displaying and finding ghost details
- Ghost information files and structures
- Ghost correction
- Plotting GIS spectra
- Line fitting
- The CHIANTI dtabase
- Deriving temperature, emission measure and electron density
- GIS pointing
- Detector aging: Long-term gain depression
- List of useful routines
- CDS software library
Unlike the NIS, GIS is astigmatic and the whole of the spectrometer slit is used to produce the spectra. Data in all 4 detectors are gathered simultanously. To collect data from an area larger then the GIS slit size, the scan mirror or the slit can be moved.
GIS data is read into the IDL session in the form of a Quick Look Data Structure (see below).
For users whose instiution holds the GIS data on site it can be located and loaded into your IDL session using xcat. The routine can also be used for displaying spectra.
IDL> xcat, qlds
Then under the Read & View FITS File tab select the Read and Exit with QL data structure? to load a quick look data structure into the IDL session.
For data stored in a local directory it can be read in as a Quick Look Data Structure directly.
IDL> qlds = readcdsfits('s4384r00')
To read in multiple fits files, for example all 10 rasters of one study, use the read_cds routine.
IDL> read_cds, filelist, qldata
where filelist is the string array of file names to be read in and qldata is the array of QLDS's to be created.
The quick look data structure is the standard format of data used by the CDS software. It contains the spectral data, some wavelength calibration information, ancillary information about spacecraft pointing, and much more in a hierarchal structure.
To browse information in the qlds type:
IDL> help, qlds, /str
or
IDL> help, qlds.header, /str
or
IDL> print, qlds.hdrtext
Please note that the qlds is CDS specific and CDS routines must be used with them. For example, to copy a qlds the normal IDL command cannot be used, instead type:
IDL> qlds = copy_qlds(a)
The routine dsp_menu allows a quick look at the raw or processed GIS data.
IDL> dsp_menu,qlds
A menu is brought up and under 'Data display modes' the user can select, for example, to produce a 'Snapshot' of the data or a 'Full detector view'. Under the latter option there is a choide to 'Mark lines' and over plot pre-set line lists. It is also possible to identify lines and measure their positions and intemsities.
To display a snapshot of the data in all four detectors without going via dsp_menu type;
IDL> cds_snapshot, qlds [, /spectra, /log]
This plot will display the spectra for a sit and stare study, or an image if several rasters have been taken. For rasters set the /spectra switch to force a spectra (and not an image) to be displayed.
To extract data from the (calibrated) qlds the routines gt_windata and gt_spectrum can be used.
IDL> data = gt_windata(qlds, window [, /nocheck, /quick, /nocopy, /nopadding, errmg=errmsg])
Window is just the GIS detector number minus 1. So, for example, to extract data for GIS detector 3 type:
IDL> GIS3data = gt_windata(qlds, 2)
The data are returned are a floating point array of up to 4 dimensions:
To obtain a description about the data in GIS detector 3 the gt_windesc routine can be used
IDL> GIS3desc = gt_windesc(qlds, 2)
The returned structure GIS3desc gives the units for the data in GIS3desc.units, the flag for missing data in GIS3desc.missing and the wavelength range in GIS3desc.wavemin and GIS3desc.wavemax.
The routine ghost_plot_one displays data from one GIS detector and shows the regions of the spectrum which contain ghosts. It can be used to check whether a line is ghosted (ie. a true spectral line which has additional ghosted counts) or is a ghost line (ie. a false spectral line).
Note: the ghost_buster routine can be used to move to original location, or remove, ghosts in the GIS data.
IDL> ghost_plot_one, qlds, detector_no [,/sample, /nm, /angstroms,/logscale, /pixels, waverange=[min, max], /cross_cor]
The above routine allows switches to modify how the data are plotted. For instance, waverange can be used to zoom into a particular region of interest, by specifying a minimum and maximum wavelength to be plotted; and /sample plots a sample theoretical spectrum for comparison of where the spectral lines should lie.
The routine also plots the observed spectrum shifted by one spiral arm to longer and shorter wavelengths (called red and blue shifted) to help identify ghost locations.
To check whether a line is ghosted or is a ghost, first look to see if it is in the shaded region of the output from ghost_plot_one. If it is, check to see if there is a corresponding line in the theoretical spectrum. If there a corresponding line it is likely to be OK, but check also in the blue or red shifted spectra to see if the observed line could have additional ghosted counts.
If there is no corresponding line in the theoretical spectrum check to see if there is corresponding line in the blue or red shifted spectra. If there is, it strongly suggests that the line may be a ghost and that the counts need to be returned to their original position.
Every GSET has an associated ghost information file which contains the pixel locations of regions which are affected by ghosts, but which are not automatically corrected by ghost_buster. The ghost information files are located in the same directory as the other GIS calibration data; $CDS_GIS_CAL_INT.
Also in this directory are the ghost information structures which are used by ghost_buster to restore ghosts automatically.
In total there are 3 ways to make corrections for ghosts in the data using the routine ghost_buster:
Pointer: to check whether the region of interest in the spectrum has ghosts, the ghost_plot_one routine can be used. See 'Displaying and finding ghost details' for more information.
The routine gis_plot plots a summary of the GIS data from a detector of choice. It will plot raw or calibrated data from the qlds.
IDL> gis_plot, qlds, detector_no [, /logscale, waverange=[min,max] ]
The plots can be made in Angstroms or nm.
The routine gis_fit can be used to automatically fit clearly identified lines in the GIS spectra. This routine can be used on calibrated or uncalibrated data. In the latter case, the routine will smooth the data and make ghost corections for the unblended ghosts.
IDL> gisfit = gis_fit(qlds, /plot)
If the /plot switch is used the progress of the fitting can be followed.
The output 'gisfit' is a structure which contains the line intensities, amplitudes and widths along with the associated uncertainties. To obtain information on the structure type
IDL> help, gisfit, /str
the following is returned:
HEADER STRUCT -> Anonymous Array[1]
These structures hold the information for each line and can then be further interigated.
CHIANTI consists of a databse of atomic data and IDL procedures for for calculating spectroscopic emission line intensities at wavelengths greater than 50 Angstroms from optically thin astrophysical spectra. It is freely available and contains the most up-to-date atomic data including energy levels, transition probabilities and electron collisional excitation rates.
In order to use CHIANTI withing the IDL session the correct branch of the software tree must be loaded either when initialising IDL
IDL> setssw cds chianti
or from within IDL
IDL> ssw_path, /chianti
For more information on CHIANTI and for a User Guide see the CHIANTI homepage.
look up routines chianti_dem, dens_plotter and temp_plotter
The main IDL routine for deriving differential emission measure (DEM) analysis of EUV spectra is chianti_dem which uses the CHIANTI databse. The DEM gives an indication of the amount of plasma along the line of sight that is emitting in the observed wavelength range between temperature T and T + dT.
The GIS records spectra over small regions of the Sun. In order to check the pointing of an observation use the gt_point routine. There is also an offset in the pointing which must be corrected for (see below).
IDL> print, gt_point(qlds)
The pointing is returned in arcseconds from the solar centre in X and Y.
Other routines that could be used include dsp_point and dsp_raster.
There is a small offset in the GIS pointing. This offset varies with SOHO roll ange. With normal roll angle (ie. no roll angle) the actual GIS pointing is approximately 10'' northward of the pointing selected (and that given in the data header or the Quick Look Data Structure).
To find information on SOHO's roll angle
IDL> print, get_soho_roll ('11-mar-2005')
The returned value is the roll in degrees in the clockwise direction starting from north.
The LTGD produces 2 effects on the shape of the spectral lines; a broadening and a 'dip' in the peak line intensity. These effects have been studied over the duration of the mission. Click here to see the changes to the Fe IX 171 Angstrom line.
This effect is countered by occasionally raising the voltage across each MCP stack and by applying corrections to the data. The routine gis_calib makes the LTGD corrections.
One line summaries of all CDS software routines (GIS and NIS) can be found here. For more information on the routines type:
IDL> doc_library, 'routine_name'
FE_VIII_168 STRUCT ->
NI_XIV_169_68 STRUCT ->
FE_IX_171_07 STRUCT ->
O_VI_173_1 STRUCT ->
FE_XIII_185_7 STRUCT ->
O_VI_184_1 STRUCT ->
FE_X_184_5 STRUCT ->
FE_VIII_186_5 STRUCT ->
FE_XI_188_2 STRUCT ->
FE_X_190 STRUCT ->
FE_XIII_216_8 STRUCT ->
AL_X_332_79_2ND STRUCT ->
FE_XIV_334_17_2ND STRUCT ->
FE_XVI_335_38_2ND STRUCT ->
FE_XIV_270_5 STRUCT ->
SI_X_272 STRUCT ->
FE_XIV_274 STRUCT ->
SI_X_277_2 STRUCT ->
MG_VII_278_4 STRUCT ->
The CHIANTI database
Deriving temp, dem and ne
GIS pointing
Detector aging: long-term gain depression
List of useful routines
cds_fill_missing Fills MISSING pixels in the Quick Look Data Structure
cds_gauss Fits Gaussian with constant, linear or quadratic background
cds_snaphot Makes thumbnail sketches of 'images' from a series of GIS rasters
chianti_ne Calculate and plot CHIANTI density sensitive line ratios
chianti_ss Calculates and plots CHIANTI synthetic spectrum
chianti_tt Calculate and plot CHIANTI temperature sensitive line ratios
cfit
dsp_menu Choice of display modes for GIS data in Quick Look Data Structure format
ezfit Quick and easy Gauss fit to the data
ghost_buster Correct data for ghosts by relocating the ghost counts
ghost_info Display the ghosting information associated with a Quick Look Data Structure
ghost_plot_all Plots all 4 GIS detector spectra with likely ghost regions
ghost_plot_sampl Returns a theorectical sample GIS spectrum
gis_calib Applies GIS calibration to spectra
gis_plot Summry of GIS data from one detector
gis_smooth Corrects GIS spectra for fixed patterning
gis_write_calib Prints calibration factors for GIS spectra
gt_bimage Returns wavelength band integrated image
gt_spectrum Prints a one-dimensional spectrum at a specified point
gt_windata Returns a block of data from one detector
gt_windesc Return descriptor structure (description) for a data extraction window
read_cds Read in a sequence of CDS fits files
CDS software library