Page History
...
Below are the lists of fields which can be used to define detector and access calibrations
Detector metadata
Field name | Description | More details, example |
---|---|---|
dettype | detector type | CSPAD, CSPAD2X2, EPIX100A, etc. |
detname | detector unique name | (if any) ex.: Camera1 |
detalias | alias name | if it is hard to memorize the entire name, ex.: 'cspad1' |
detidx | detector index | integer number which codes the hardware version |
detidxalias | symbolic alias of the index | can be used if it is hard to memorize the index integer number |
detcompidx:001 | list of component indexes | just in case if we are going to retrieve calibration parameters for separate components |
detidxprev | detector index for previous version | detector index for previous version (if available) for the purpose of old calibration search |
detidxnext | detector index for next version | detector index for next version (if available) for the purpose of new calibration search |
dettsec | time-stamp | time stamp associated with beginning of the validity range for new configuration |
detcom:001 | comments for this hardware version | as it says {key:comment} |
dettag:001 | other tags | just in case if something is forgotten in this table |
Calibration parameters' metadata
Field name | Description | More details, example |
---|---|---|
calibtype | calibration type | ex.: geometry, pixel_status, pixel_gain, pedestals, common_mode, etc. |
tsec | time stamp | beginning of the validity range |
exp | original experiment | (if available) where calibration constants were obtained |
runnum | original run number | (if available) where calibration constants were obtained |
runbegin | begin run number | (if available) for validity range |
runend | end run number | (if available) for validity range |
source | original DAQ data source | data source from DAQ, ex.: 'CxiDs2.0:Cspad.0' |
srcalias | data source alias | ex.: 'cspad' |
calibvers | version tag | in order to access using symbolic name or some alias |
calibversalias | version alias | if it is hard to memorize version tag |
com:001 | comments for this version | as it says {key:comment}
|
tag:001 | other tags | just in case if something is forgotten in this table |
In case of numpy array their metadata are stored with an object.
Text file needs in n-d array metadata
n-d array metadata
Field name | Description | More details, example |
---|---|---|
dtype | data type | int, float, double, etc |
ndims | number of dimensions (N) | as it says |
dim:1 | size of dim.1 | ... |
dim:2 | size of dim.2 | ... |
... | ... | ... |
dim:N | size of dim.N | ... |
Architecture
Requirements
- instrument independent (detector can be moved)
- experiment independent (detector can be moved)
- calibration data for a particular detector should be transferable (as a self consistent file)
- calibration data should be managed through API only (in order to prevent adding/removing unknown files without history)
- API + GUI for central management
Combination of FS + DB-like file (hdf5 for uniformity)
Location in LCLS
/reg/g/psdm/detector/alignment/...
/reg/g/psdm/detector/calib/ # "/reg/g" is it good?
...
- cspad2x2/
- pnccd/
- epix100a/
- cspad/
- <detname-detid>.h5
- <detname-detiid>.h5
Location in local
- <path>/calibdet/cspad/<detname-detid>.h5 # keep path?
- <path>/<detname-detid>.h5 # or use it directly?
TBD
Open questions
- Do we have to account for detector version, FEE version, controller version, etc?
- one DB file per
- detector version idx
- detector name (idx-s inside?)
- db location
- file name
- master file
Overview
Content Tools