Solar-B home EIS Uguide Requirements Setup QL Uguide DA Uguide Calibration FITS

EIS Data Analysis Userguide

Quick links:

How do I get my hands on the data?
How do I do cosmic ray removal

The EIS data analysis software package will hopefully be a joint effort where scientist using EIS data and developing useful software share their contributions through SolarSoft (SSW). The EIS team will provide software to calibrate data and access the data easily, and from thre on, each and everyone is basically free to do whatever they may please with the data.

That being said, we (the Oslo group) will of course take part in devlopment of data analysis software and distribution through SSW. This software is described here.

  • How do I get my hands on the data

    The easiest way of accessing data in a file called "mydatafile" is through the IDL procedure called eis_getdata:

    SSWIDL> eis_getdata, myfilename, wd, (iwin = iwin, /all, hdr = hdr, /ccsds)

    The inputs parameters are:

  • myfilename: Name of data file (in CCSDS or FITS format. Default is FITS - see CCSDS keyword described below.)

    The output parameters are:

  • wd: data cube returned. Could be called anything by the user.

    The keyword parameters (optional) are:

  • iwin: Set this keyword to a series of line window numbers to return those line windows. e.g. iwin = [0,3,5] returns line wwindows 0, 3 and 5 from the raster.
  • all: set this keyword to return all line windows. If this is not set AND iwin is not set, line window 0 is returned as default.
  • hdr: Set this (e.g.hdr=hdr) to return the header information.
  • ccsds: Set this if the data file is a telemetry file (the default is FITS).

    Example1: The data file myfilename is a FITS file containing a scanning raster with 200 raster positions, 512 pixels along the slit, 25 line windows each of 32 pixels width. Return line windows 3, 12 and 24. I also want the FITS header.

    SSWIDL>eis_getdata, myfilename, wd, iwin=[3,12,24], hdr = hdr.

    The wd cube should now have dimensions: [32, 512, 200, 3] or [nlambda, nslit, nraster, nlines].

    Example2: The data file myfilename is a `CCSDS file containing a full CCD exposure. 512 pixels along the slit, 4 line windows each of 1024 pixels width. Return all line windows. I also want the telemetry header

    SSWIDL>eis_getdata, myfilename, wd, /all, hdr = hdr, /ccsds

    The wd cube should now have dimensions: [1024, 512, 1, 4] or [nlambda, nslit, nraster, nlines].

  • I want to calculate velocities, widths etc. How?

    There are two ways of calculating intensity, velocity and width from the line profiles. It can either be done from the QL control window XCONTROL, by clicking the "moments" button, or it can be done using a procedure called "eis_getmoments". In the first case, results are displayed using the QL, in the latter, the user will get hands on access to the calculated quantities.

    In both cases, the user need to manually interact in order to define line and continuum pixels. In the future this could be done automatically from e.g. line IDs, but o far the logic around this has not been worked out. Input from the planning tool may be needed, and we're not there yet.

    The usage of eis_getmoments is decribed in what follows:

    SSWIDL> eis_getmoments, file, int, vel, wid, iwin =iwin, all = all, gauss = gauss, $ moment = moment, ccsds = ccsds, lamtype = lamtype, $ line_def = line_def


  • file: Name of file (string) containing EIS data (and headers).


  • iwin: The line number indexes (starting with 0, max 24.)
  • all: process all line windows
  • gauss: set this to use gaussian fits to calculate int, vel, wid. This calls a CDS procedure called XCFIT.
  • moment: (Default) Use moments to calculate int, vel, wid
  • line_def: Use pre-stored pixel definitions for line and continuum. (not yet fully implemented!!) These are stored in text files, as pixels defining where on the CCD the spectral line and it's (to be subtracted) continuum is.
  • lamptype: Can take two values: lamtype='pix' (DEFAULT) for pixel wavelength scale or lamtype='wav' for wavelength scale in Ångstrøm.
  • ccsds: set this keyword if telemetry file. Standard is fits.


  • int: intensity (0th order moment). Normally int[x,y, nwin]
  • vel: velocity (1st order momemt). Normally vel[x,y, nwin]
  • wid: width (2nd order moment). Normally wid[x,y, nwin]

    example 1: Calculate int, vel wid, from Line window 0 from CCSDS file1= 'file1.dat':

    SSWIDL> eis_getmoments, file1, int,vel,wid, iwin=0, /ccsds

    example 2: Get line windows 2 and 3 from fitsfile file2='file2.fits'. Use wavelength scale and gaussian fits:

    IDL> eis_getmoments, file2,int,vel, wid, iwin=[2,3], lamtype='wav', /gauss

  • How do I do Cosmic Ray Removal

    There is a routine called "" to do cosmic ray removal for one line window and on eexposure. So far there is now script available to process many line windows and several exposures automatically. eis_despike is based on the SSW procedure called "", which has been extensively used and tested on CDS data.

    To do cosmic ray removal do:

    SSWIDL> eis_despike, wd_in, wd_despike


  • wd_in: Linw window before CR removal


  • wd_despike: Line window after CR removal


  • no_neighbours
  • no_fill
  • info

    For description of keywords, see documentation of in SSW.

  • I want to make a movie from several rasters. How?

  • Index Previous Next

    Updated 11-May-2006 by Øivind Wikstøl