SSWIDL Examples
What is SSWIDL?
Many Hinode/SOT data retrieval, calibration and analysis routines are written in Harris Geospatial Solutions' Interactive Data Language (IDL), and available via an installation of the SolarSoftWare (SSW) system, or "SolarSoft" for short. SolarSoft is a software distribution system used throughout solar physics research, and is comprised of publicly-available integrated software libraries, databases, and system utilities that provide a coordinated data analysis environment for solar physics research. It is largely hardware-, language- and site-independent, with mirroring capabilities to keep installations at various sites consistent. Below, setting up a new SSW installation and upgrating an existing installation are discussed, whereas tasks specific to SOT-FG and SOT-SP are discussed in the following sections.
Doing a Clean Install of SSW
To do a clean install of SSW, follow these steps:
-
Navigate to the main SSW installation webpage. This is the webpage containing instructions for installing SSW on different operating systems.
-
Next, click on the "SSW INSTALLATION FORM" link. The installation form allows the user to select the top-level path in which the software will reside, along with which packages are to be downloaded. For SOT-related software, select the SOT checkbox. If you think that you will be using the SSW interface to the Virtual Solar Observatory (see this section), then the VSO package should also be selected.
-
After completing the installation form, click on the "Generate Installation Script" button near the bottom of the page. The website will then give you an indication of how much disk space your SSW installation will occupy, and provide you with a link to your personalized installation script or batch file.
-
Next, save the installation script or batch file to disk by right-clicking on the link underneath the installation table. Run the script or batch file on your machine. On Windows systems, the batch file will be contained in an archive, which needs to be unzipped. Running the script or batch file will cause the SSW packages to be downloaded.
At this point, SSW and its constituent packages will (should) have been downloaded to your system. On Unix and Unix-like systems, a few more steps are required for IDL to have access to this software, as described on the SSW setup webpage. First, it is necessary to define the SSW environment variable so that it points to the top-level path of the SSW tree:
setenv SSW [whatever you specified on the form]
SSW also needs to know which packages are available. This is achieved by
defining the SSW_INSTR
environment variable so that it includes the packages
that were downloaded:
setenv SSW_INSTR "sot vso [etc.]"
Then, after sourcing the setup file,
source $SSW/gen/setup/setup.ssw [/loud]
one simply types sswidl
(an alias that was defined in the setup file) at the Unix prompt to start up IDL. IDL combined with the SolarSoft libraries and databases is frequently referred to as "SSWIDL".
TECHNICAL NOTE: The setenv commands above apply only to the C shell (csh) or related shells. If using Bourne or bash, then the proper syntax for setting an environment variable is
export VARIABLE=value
.
TECHNICAL NOTE: After the setup file
setup.ssw
is sourced, an alias namedsetssw
will be defined that allows users to load specific libraries and instrument packages. This feature is useful when the SSW startup process is found to be undesireably lengthy, a situation often caused by a large number of packages being loaded when SSWIDL is starting up. In these situations, users can reduce the startup time by loading a smaller number of packages. For example, if one only needs the AIA and Chianti packages, then enteringsetssw aia chianti
will cause SSWIDL to only load those two packages upon startup until either setssw is invoked again or the SSW_INSTR environment variable is changed.
Updating Packages for an Existing SSWIDL Installation
If you already have an existing SSWIDL installation and you simply want to add
a new package or update an existing package, then at an IDL>
prompt issue a
command of the form
ssw_upgrade,/spawn,/loud,/package1 [,/package2] [,/...]
For example, adding or updating the SOT package is achieved by entering the
following (note that some systems also require the /passive_ftp
flag):
ssw_upgrade,/spawn,/loud,/sot [,/passive_ftp]
After adding new packages, be sure to add these to the list of instruments in
the SSW_INSTR
environment variable. More information regarding SSW upgrades
is available on the SSW upgrade
webpage.
Some SSW packages are dependent on others (as listed here), and these should be handled automatically during installation and upgrading.
The basic mechanism for accessing SOT data through SSW is through the SOT
catalog, a database structure that is composed of a select information for
each data product produced by the instrument. Specifically, the SOT catalog
contains a subset of SOT FITS header keywords (such as field of view, filter
positions, and image type) for each Level 0 file in the catalog. The main
SSW routine for reading and searching the catalog is called sot_cat.pro
and
is described in more detail in the
examples below.
The SOT catalog is stored in an ancillary SSW library referred to as the SSW database or "SSWDB". This database needs to be on your local machine in order to access the SOT catalog in an SSW session. If there is already a local copy of the SSWDB, then you can add the relevant SOT data by running
sswdb_upgrade, ‘hinode/sot’, /spawn, /loud
at the IDL>
prompt.
Installing or Updating SOT-Related Catalogs and Databases
Various SOT-related catalogs and databases are stored in ancillary SSW libraries referred to as SSW databases or "SSWDBs". These databases need to be local in order to access the SOT catalog in an SSW session, and to perform other tasks such as running some calibration routines. Installing or updating the SSWDBs for SOT is achieved by running
sswdb_upgrade,'hinode/sot',/spawn,/loud
at the IDL>
prompt. Because the SOT data catalog is constantly being updated
as new data is added to the database, you may need to upgrade your local copy
of the catalog via the ssw_upgrade.pro
routine frequently. The first install
of the SOT SSWDB will take some time to fully download because it includes
dark-removal and flat-field calibration images that occupy several tens of
gigabytes. More information on installing and upgrading SSW libraries can be
found at this link.