This is a tool to build and read from a database, which stores information about different InGrids.
In order to compile the main databaseTool, just run
nimble kochfrom this folder.
This will create the databaseTool in the src directory.
The main two purposes of the databaseTool
./databaseTool add --runPeriod path/to/runPeriod.tomlFor examples of how a runPeriod.toml file is supposed to look like,
see:
- ../resources/ChipCalibrations/Run2/runPeriod.toml An example for a Septemboard CAST run period
- ../resources/ChipCalibrations/Tpx3_Polarimetry/runPeriod.toml An example for a basic Tpx3 run period
- ../resources/ChipCalibrations/Tpx3_Test_Constraints/runPeriod.toml An example file for multiple run periods with constraints. For information about constraints, read: ../resources/ChipCalibrations/Tpx3_Test_Constraints/README.org
In order to add a chip to the InGrid database, you need to provide a
director, which follows a certain structure and call the
databaseTool as follows:
./databaseTool add --chip path/to/dir/with/chipInfowhere the directory needs to look as follows:
chipTest
├── chipInfo.txt
├── fsr3.txt
├── SCurve
│ ├── voltage_0.txt
│ ├── voltage_100.txt
│ ├── voltage_20.txt
│ ├── voltage_25.txt
│ ├── voltage_30.txt
│ ├── voltage_35.txt
│ ├── voltage_40.txt
│ ├── voltage_50.txt
│ └── voltage_60.txt
├── threshold3.txt
├── thresholdMeans3.txt
└── TOTCalib3.txtThe name of the directory does not matter. Important however, is the
content of the chipInfo.txt:
chipName: E4 W66
test: This is a test note!
board: SeptemH
chipNumber: 2
Another test comment!The fields chipName and chipNumber are required. All others (as
many as desired) will be read as (key, value) pairs and added to the database.
For a Timepix3 detector, the ToT calibration HDF5 file must be in this directory (or a symlink to it).