IDL Command: vso prep
Purpose
vso_prep is an IDL routine that can be used to remotely pre-process solar data from within an SSW enabled IDL session. The user does not have to have all the instrument software packages or calibration data installed.
Requirements
- Up-to-date SSW gen tree, installation and download instructions
- IDL version 6.4 or higher
- Sun Java version 1.5 or higher
Description
[p]vso_prep[/p], file, outfile=outfile, instrument=instrument, oprep=oprep, image_no=image_no, status=status, err=err, _extra=extra
Either file or instrument must be specified, all other parameters are optional. See table below for keyword details.
Keyword | Description | Example |
---|---|---|
file | This is either an HTTP link or a local file path to a data file that needs pre-processing. It can be empty for some instruments (such as RHESSI). | file='http://stereo-ssc.nascom.nasa.gov/data/ins_data/secchi/L0/b/img/euvi/20070420/20070420_235900_n4euB.fts', file='/home/user1/20070420_235900_n4euB.fts' |
outfile | This is an optional file name for the pre-processed file. If left empty, vso_prep will assign it a default name (prepped_ + infile). | outfile='my_prepped_data.fits' |
instrument | This parameter specifies the instrument type. It can be left empty and the system will try to find out the type by analyzing the data's FITS header. | instrument='rhessi', or 'xrt', 'eit', 'euvi', 'trace', 'eis' |
oprep | After successful pre-processing, this variable will contain a reference to the pre-processed data in form of an IDL object. This object can be displayed directly with plotman. | oprep->[p]plot[/p], oprep->[p]plotman[/p] |
image_no | This parameter is only used for TRACE pre-processing requests where it is necessary to specify the index (or indices) within a TRACE data archive. | image_no=0, image_no=[1,2,5] |
status | Is set to 1 for success and 0 for failure. | N/A |
err | This parameter will contain error messages after an error occurred. | N/A |
_extra | This is an IDL variable that absorbs all parameters not specified in the keyword list of vso_prep and passes them on to future routine calls. | N/A |
Troubleshooting
If the pre-processing fails, it is advisable to use vso_debug to receive more information on the error.
java.lang.OutOfMemoryError: Java heap space
This error occurs when Java takes up too much memory in your IDL session. To resolve this check the following:
1. The current IDL session's heap contains unreferenced objects. Removing those objects by calling the IDL command heap_gc will free up space. 2. The allowed heap size for Java is too small. The maximum amount can be increased by opening the IDL-Java Bridge configuration file at <IDL_DIR>resource/bridges/import/java/.idljavabrc (on Windows systems there is no leading "." in the file name) and then by adding the following two lines to the section labeled JVM start options:
JVM Option1 -Xms32m
JVM Option2 -Xmx128m
This will set the minimum heap space to 32MB, and the maximum to 128MB.
This error means that the IDL-Java Bridge could not determine what Java Virtual Machine should be used. Check the following:
- Sun (or since recently Oracle) Java is not installed or the wrong Java version has been selected. This can be checked by opening a console window and then by executing java -version. If this command is unknown then install Sun Java from here or follow the installation guidelines for your system (e.g. if you have Ubuntu Linux, see here). If the command returns text, check and make sure it says something like Sun Java version 1.5 (or 1.6) or Oracle Java version 1.5 (or 1.6). Should this not be the case, install the proper Sun Java version (see above). On Linux systems, Sun Java may be installed but not active. See here for more information.
- There is a variable that points to the Java Virtual Machine (JVM) library. Set this variable manually to make sure it points to an active and valid JVM: (on Linux, the command line tool locate may help finding the library libjvm.so), or use the SSW IDL routine locate_java to find an set this library.
setenv IDLJAVAB_LIB_LOCATION xyz
vso_prep failes repeatedly in IDL 6.4 and Linux
Examples
The following example shows how to search with vso_files for the level-0 EIT image which is closest to April, 21 2002 01:15 UT and then how to send the pre-processing request to the remote server with vso_prep. The pre-processed EIT image will be saves and named eit.fits and then displayed with [plotman].
file=[f]vso_files[/f]('21-apr-2002 01:15', inst='eit')
[p]vso_prep[/p], file, oprep=o, out='eit.fits'
o->[p]plotman[/p]