In order to determine how the AO data must be stored/used, we identified the following very general use cases:
- HW setup (lab or RR) where AdSec and WFS are operated in isolation
- Alignment (getting a good flat for an instrument)
- AO calibration (measuring rec mat)
- AO closed loop on-sky or tower-test.
- Elab_lib offline/realtime performance analysis
Data types has been identified following requirements from those use cases.
We have identified five distinct data types, with different requirements wrt. storage and availability. The five types are:
- Configuration:: basic system configuration, manually written/generated and rarely changed. Required for any system operation. Examples: processes config, AO table, actuator lists, all kinds of LUTs, DSP firmware, lists of mirror positions. Stored into SVN.
- Calibration: data needed for system operation, which is measured from system itself. Possibly stored into SVN as a starting point (e.g. zero arrays). Tends to grow with time. Must be available for offline analysis. Examples: mirror flats (saved by operator), CCD backgrounds, slopenull, pupil positions.
- OL calibration: (optical loop calibration) Data needed for system operation, mostly measured from system itself and processed. Similar to Calibration, except that there is no way of setting up a sensible data set in SVN without having the system itself. Example: modal basis, RECs, gain files, modal disturbances, etc. Tend to grow in time.
- Data: performance data saved during system operation, not necessary for operation, but important to assess performance. Not present in SVN. Tend to grow in time. Must be available for offline analysis. Example: Optical loop data, Interferometer data.
- Measurement: diagnostic data not needed for any system operation, but only for extemporary offline analysis. Do not impact system operation or performance evaluation even in the extreme case of irrecoverable deletion. Example: RON tests, step responses, automatic flat saving, etc.
| OL Calib
Needed = mandatory for AO operation
SVN = stored in SVN in full (X) or as a starting point (O)
Measured = saved from the system itself and not hand-generated
elab_lib = used by the elab_lib
Acc. = tends to accumulate in time, and is timestamped
- subsytem = either adsec or wfs
- subsystem_name = name of the specific subsystem, e.g. 672a or W2
- system_name = name of a complete system, e.g. FLAO1 (equivalent to W2+672a)
- Configuration is stored in SVN at $ADOPT_SOURCE/conf/*subsystem*/*subsystem_name* (e.g conf/wfs/W2) and installed inside $ADOPT_ROOT in the same place.
- Calibration a basic set is stored in SVN at $ADOPT_SOURCE/calib/*subsystem/*subsystem_name* (for wfs and adsec) and installed inside $ADOPT_MEAS/*subsystem/*subsystem_name*. Procedures that generate calibration data (example: ccd background acquisition) will save inside $ADOPT_MEAS as well.
- OL Calibration SVN contains an empty directory structure at $ADOPT_SOURCE/calib/system/*subsystem_name* and installed inside $ADOPT_MEAS/system/*subsystem_name*. Procedures that generate OL calibration data (example: interaction matrix acquisition) will save inside $ADOPT_MEAS as well.
- Data nothing in SVN. Saved into $ADOPT_MEAS/*system_name* or $ADOPT_MEAS/*subsytem_name* as needed.
- Measure nothing in SVN. Saved into $ADOPT_MEAS/*system_name* or $ADOPT_MEAS/*subsytem_name* as needed.
FLAO1/ (system name, contains measure and data)
20100120/ (OL data for day 2010-01-20)
W2_672a/ (possible alternate system name)
W1/ (subsystem name, contains measure and data)
W2/ (subsystem name)
672a/4d/ (subsystem name)
672b/ (subsystem name)
ARGOS1/ (subsystem name)
calib/ = Calibration / OL Calibration (starts from SVN and then accumulates)
W1/ (subsytem - Calibration)
current -> W2
672a/ flat, FF matrix
current -> 672a
FLAO1/ (system name - OL Calibration)
Kalman/ (modal basis)
W1_672b/ (other possible names)
$ADOPT_ROOT/conf/ = configuration (all from SVN)
W1/ Tabella AO, FoV,LUTs , firmware
current -> W2
672a/ lec, ..CMD/ (all from SVN)
current -> 672a
Strategia di backup:
- da $ADOPT_ROOT/calib a $ADOPT_MEAS/backup_calib
- da $ADOPT_MEAS a NAS storage
OLD directory structure:
/current -> W2
/current -> 672a
/current -> W2
/adsec_data/ (opt. loop data)
/20100120_000000 (opt. loop data)
/20100120_000010 (opt. loop data)
/M2C/ (opt. loop calibration)
/mirrorStandard/... (opt. loop calibration)
/KalmanOV/... (opt. loop calibration)
/20100120_000000/a.sav (adsec measurements/necessary data)
/20100120_000010/b.sav (adsec measurements/necessary data)
/if_functions (adsec measurements)
/noise (adsec measurements)