SDO map software



The IDL map software is very useful for handling image data. Here I give some software that I use for SDO. Some of the routines are in Solarsoft, others you can get from http://files.pyoung.org/idl/sdo/.

Preparation

I download cutouts from the JSOC. A page on the EIS Wiki explains how to do this.

Because of concerns about the AIA de-spiking routine, I do not use the 'Register' option for AIA cutouts.

Reading into a map

I have my own routine that reads SDO files into an IDL map:

IDL> map=sdo2map(filename)

The advantages over the standard read_sdo + index2map combination are:

  1. The AIA images are divided by the exposure time.
  2. The .time tag is set to the .t_obs tag of index, and is converted to UTC format (HMI files are TAI format by default).
  3. I make a correction for the SDO roll angle.
  4. I make a correction for the rare case of bad exposure times.
  5. I have a call to a cosmic ray cleaning routine (which can be applied if the data have previously been re-spiked).

Making a smooth movie sequence

If you take a set of cutouts and make a movie from them (with movie_map.pro for example), then you will notice the occasional pixel jumps in the sequence. This is not due to image jitter, but just the rounding of cutouts to the nearest pixel. To get rid of the jumps I do:

IDL> newmap=sdo_align_map(map)

This makes use of the IDL bilinear routine to give a nice smooth movie. Note that the routine is not cross-correlating images: it simply adjusts the images so that smooth tracking of the region occurs.

To view the movie, just use the standard IDL routine movie_map:

IDL> movie_map, newmap [,/log]

Extracting a sub-region from cutouts

Often you will see an interesting feature within the SDO cutouts for which you will want to do a second cutout. The standard routine (when working with maps) is sub_map.pro, but for a sequence of cutouts that are tracking a feature it's necessary to specify xrange= and yrange= with the /pixel keyword. Thus a little effort is required to convert the coordinates of the feature that you're interested in to pixel units.

An alternative is to give xrange= and yrange= in the call to sdo_align_map:

IDL> newmap=sdo_align_map(map, xrange=xrange, yrange=yrange)

Making a difference map movie

The following routine mimics 'movie_map' by using the map structure to create a difference movie:

IDL> movie_map_diff, map, mode=mode

The keyword mode

Writing a map movie sequence to a mp4 file

For a paper or webpage you will need to convert a SDO image sequence into a standard movie format. The following routine takes a map sequence and writes it to a mp4:

IDL> write_movie_map_mp4, map, outfile='movie.mp4'



Page maintained by Dr Peter Young