This page is gives some usage information regarding the PEGASUS Worklow Management System. If you would like to obtain more information abut this software, please contact burston [at] mps.mpg.de.
Before embarking on running the Track'n'Map pipeline yourself, please make sure that there is no existing data already ingested into the DRMS that you could use before making possible duplicate records under a different series name. There is no benefit to this.
If you want to know what tracking and mapping is, have a look here.
Setting up
Download this ".pegasusrc" file to your home directory.
First you need to verify you can use pegasus
>show-properties
(problems?)
Edit/create your ".pegasusrc" file.
Pay attention to this setting:
pegasus.catalog.replica.file
Get grid certification
>grid-cert-request
Read the screen and follow the instructions. (Problems?)
Initiate your grid proxy.
>grid-proxy-init -valid 8640:00
Which then tells you how long it is valid for (approx. 4 months).
Make a directory where you will run the pipeline from and download this tar package and unpack the files (series_v2.0.jsd, params.hmi).
Now you should be set up to go and not have to repeat any of the above.
Running the pipeline
1. Create a series (if the one you want to add to doesn't exist already).
For this you need to edit the series_v2.0.jsd file
You need to modify these parameters:
Seriesname:
Author:
Owner:
The "Seriesname" field can be anything after the punkt, but before that must be "mps_yourusername"
(to delete the series: >delete_series seriesname )
Also, just check the type of data in the "Data:" line (float, double, int etc) and the value of the "Retention". The Retention is measured in days and is how long before the series (or only the records?) is deleted.
Now create the series
>create_series series_v2.0.jsd
See documentation here JSOC create_series
Still got Problems?
2. Modify the params.hmi file
version=2.0 ---make sure this is the correct version number
daxfile=MapTrackDAX.dax --- don't touch this
in_series=hmi.m_45s --- name of the input series you want to get data from
out_series=mps_schunker.m_hmi_lowres --- the name of the output series (this must exist - if not create one in step 1.)
t_start=2010.11.11_00:00:00_TAI --- the start time of the data you want to use
missing_frames=b --- fill any missing frames with blank (there is also an interpolation option - not tested)
workflowname=trackmap
namespace=MPS
mapping_exec=drms_mapping
cube_exec=drms_cube_care
projection_type=postel --- type of projection, for now use only Postel
n_trac_regions=1 --- the total number of tracked regions
n_spg=1 ---- how many frames to overlap the cubes in time. Negative is overlap, positive puts gaps in between (ignored if n_trac_regions=1)
n_phi=1 --- the number of longitudes of the centre of mapped regions
n_lambda=1 --- the number of latitudes of the centre of mapped regions
n_map_jobs=30 --- the number of cpu’s to split this run over (this has not been optimised)
phi_cen_first_box=2.5337940 --- Carrington longitude of centre of map at central time (radians)
lambda_cen_first_box=-0.33161256 --- Carrington latitude of centre of map at central time (radians)
dx=0.001 --- pixel size in the horizontal direction of maps in units of solar radians
dy=0.001 --- pixel size in the vertical direction of maps in units of solar radians
a0=-0.02893 --- constant of differential rotation profile (for more information on tracking rates see here)
a2=-0.3441 --- coefficient for sin^2 of differential rotation profile
a4=-0.5037 --- coefficient for sin^4 of differential rotation profile
spec=norm --- specified tracking, see below
ar_number=11084 --- active region number ( if not applicable put “NA”)
2.1 Possible tracking options
centre: Tracks centred on the sub-observation point of HMI at the middle time. Ignores the "phi_cen_first_box" and "lambda_cen_first_box" parameters. Goes to the frame at the middle of the time range and gets OBS_L0 and OBS_B0, it then tracks forward and backward in time to beginning and end of the cube at the rate specified by the tracking coefficients (a0,a2,a4) at OBS_B0.
eqcentre: Tracks centred on the meridian at the equator at the middle time. Ignores the "phi_cen_first_box" and "lambda_cen_first_box" parameters. Goes to the frame at the middle of the time range and gets OBS_L0, it then tracks forward and backward in time to beginning and end of the cube at the rate specified by the tracking coefficients (a0,a2,a4) at the equator (ie. latitude is 0 degrees).
norm: this is 'normal' tracking. It tracks at the latitude specified in "lambda_cen_first_box" centred at the middle frame forward and backward in time to beginning and end of the time series. It does NOT check if it is on the visible side of the Sun.
fixed: tracked at the Carrington rotation rate centred at the given co-ordinates.
(Questions?)
-
3.Run the java script to create a dax file using params.in
> export CLASSPATH=/opt/pegasus/default/lib/pegasus.jar:/opt/pegasus/default/lib/vdl.jar:/data/seismo2/workflows/Assets/JAVA:/data/seismo2/workflows/Assets/JAVA/postgresql-9.0-801.jdbc4.jar
> java -classpath $CLASSPATH CreateDAXv2p0 params.hmi 5
The number at the end indicates the level of verbosity ranging from 1 to 5, useful for debugging. If there is no argument then only necessary information is output to screen.
Then follow the instructions printed to the screen (yes, read the screen) there are three more steps to get the pipeline running and instructions how to monitor the progress of your pipeline.
Goodluck!
While you are waiting for it to finish please read about cleaning up or you will shortly run out of disk space.
From the command line:
seismo_cluster> drms_mapping inlist=my_map.list outlist=my_cube_care.list -d
seismo_cluster> drms_cube_care list=my_cube_care.list ds=mps_schunker.V_test_33 t_start=2010.04.10_04:00:00_TAI t_end=2010.04.10_20:00:00_TAI a0=-0.02893 a2=-0.3441 a4=-0.5037 cadence=45 -b