PACS - PCSS

Generate User Manual from XML as PDF

Usage of TestExecutionBrowser just to get an overview

In JIDE :

from herschel.access.util import *
t=TestExecutionBrowser()

Size of level 0.5 data structures in PCSS

Typical Spectrometer observation after decompression :

One second of Spectrometer data (default mode/3 raw channels) :

Basic science data + reduction add on (error, wavelength)


Detectors : 26 * 18 Ramp length : 64 Readout frequency : 256 Hz NrSubRamps : 8 All data as doubles : 8 Byte

Readouts : 26 * 18 * 256/64 * 8 * 8 = 120 KB Wavelength : same as above : 120 KB Error : same as above : 120 KB

Raw data


Readout frequency : 256 Hz All data as doubles : 8 Byte Nr raw channels : 3

Raw data : 256 * 8 * 3 = 6 KB

DecMec data:


Readout frequency : 256 Hz All data as int : 4 Byte DecMec entries : 13

256 * 4 * 13 = 13KB

==> ~ 380 KB per second

One hour :


==> ~ 1,3 GB per hour

Observation duration <= 3hour (there may be exceptions, but then we reduce the number of user)


==> ~ 4 GB per observation

Before and after reduction step


==> ~ two times before and after processing step 8 GB /person

Product Access Layer

The Product Access Layer (PAL) is now available in PCSS. We encourage everybody to use it. Basic documentation you find under :

ftp://ftp.rssd.esa.int/pub/HERSCHEL/csdt/releases/doc/ia/document/urm/html/ch02.html

A typical example for Frames is :

storage=ProductStorage()
storage.register(SimplePool.getInstance()) 
reference=storage.save(frames)
print reference.urn

from herschel.pacs.signal import *
reference = storage.load("urn:simple.default:herschel.pacs.signal.Frames:1")

#get back your saved product
p = reference.getProduct()

To use the GUI Browser to find your Products you may use :

from herschel.ia.pal.browser import ProductBrowser
from herschel.ia.pal.browser import ProductBrowserDialog

p=ProductBrowser(storage)
d=ProductBrowserDialog(p)

To get out the Data you need to move it in the Basket (marking in the GUI). Then you may extract it from the basket :

prod=p.getJideBasket().toArray()[0].getProduct()