The IPP Simulation Test ("Simtest") has been revised to be more automatic than its previous incarnations. The desire has been for it to run through with the least possible amount of user intervention and interactivity. At the present time (release 2.6), it requires a few pantasks commands to set up, and will run all the way through the creation, registration, detrend, chip, camera, fake, warp, stack, and diff stages; the magic stage will also be populated, though not run.

See the source file: source:/trunk/ippTasks/


This page refers to the revised Simtest, which will not be released until IPP 2.6. If you are using an earlier version of the IPP (e.g., 2.5.1), then these instructions are not relevant to you.


Having installed the IPP, go to a fresh directory.

Welcome to pantasks - parallel task scheduler
pantasks: module
pantasks: simtest
USAGE: simtest (dbname) (hostname) (init)
 if (init) == run    : just run the analysis tasks
 if (init) == inject : (re)create the database and (re)inject the images
 if (init) == new    : restart completely from scratch

there are additional options which may be specified by setting the following variable names:
  PPSIM_RECIPE     : define the recipe to use when generating the fake data
  SIMTEST_CAMERA   : define an alternate camera (otherwise uses entry in sequence file)
  SIMTEST_SEQUENCE : define the set of observations generated (simtest.basic.config)
  SIMTEST_AUTO     : define the analysis steps to perform (
  SIMTEST_THREADS  : set the number of threads for the processing node (0)

the following macros can be used to set up specific simtest suites:
  simtest.setup.basic : run standard simtest suite
  simtest.setup.detverify : run detrend creation and detrend verification
  simtest.setup.flatcorr : run a flat-field correction demonstration
  • dbname is your database name: it must have already been set up (e.g., using dbadmin), though it needn't have been created (using pxadmin) since the simtest will do that, depending on the init value you give it.
  • hostname is the name of a processing node: you must be able to ssh to this node without it prompting for a password.

So you can start by setting any of the variables like so:

pantasks: $SIMTEST_THREADS=2

and then run the appropriate setup macro:

pantasks: simtest.setup.basic

Then enter the appropriate usage command with the dbname, hostname and init option. After this, the database will be (re)created, simulated images will be generated, and the usual processing should automatically take place all the way through to the diff stage. As usual, you can track how things go using the status command in pantasks, or using the IPP Monitor (if you've got it set up).


2008-09-04 : Gene's notes on this latest version of

The idea is that there are various things which we would like to be able to modify, theoretically independently. The camera, sequence, and auto should all be independent. (The 'auto' is the analysis steps performed as define in the file, eg, or; suggestions of a better name are welcome). by default, if you run:

simtest (dbname) (hostname) new

you will get the same simtest run we used to run. Now, however, if you set SIMTEST_CAMERA to MEGACAM (uppercase required), then you get the same 'observations', but using megacam instead of simtest.

I've also added a function in (simtest.setup.flatcorr) to set these variables in an appropriate way for the flatcorr analysis.