User Tools

Site Tools


phase1:phase1:pos

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
phase1:phase1:pos [2016/08/26 12:40] ngadiubaphase1:phase1:pos [2016/09/14 11:24] ngadiuba
Line 52: Line 52:
   make Set=pixel   make Set=pixel
  
-===== Run full calibration chain (to be finished) =====+  * **remember to power off once you are done!**
  
 +===== How to develop calibration code =====
 +
 +1) add the new calibration to the file **PixelCalibrations/src/common/PixelCalibrationFactory.cc** : this will create a new button in the calibration menu'. For instance:
 +
 +  #include "PixelCalibrations/include/PixelMyCalibration.h"
 +  #include "PixelCalibrations/include/PixelFEDMyCalibration.h"
 +  
 +  PixelCalibrationBase* PixelCalibrationFactory::getCalibration(const std::string& calibName, const PixelSupervisorConfiguration* pixSupConfPtr, SOAPCommander* soapCmdrPtr,PixelD CSSOAPCommander* dcsSoapCommanderPtr, PixelDCSPVSSCommander* pvssCommanderPtr) const{
 +  
 +    ......
 +  
 +    if (calibName=="MyCalib") {
 +      return new PixelMyCalibration(*pixSupConfPtr, soapCmdrPtr);
 +    }
 +  
 +    ......
 +      
 +  }
 +  
 +  
 +  PixelFEDCalibrationBase* PixelCalibrationFactory::getFEDCalibration(const std::string& calibName, const PixelFEDSupervisorConfiguration* pixFEDSupConfPtr, SOAPCommander* soapCmdrPtr) const{
 +  
 +    ......
 +  
 +    if (calibName=="MyCalib") {
 +      return new PixelFEDMyCalibration(*pixFEDSupConfPtr, soapCmdrPtr);
 +    }
 +  
 +    ......
 +    
 +  }
 +
 +2) create your calibration classes: PixelMyCalibration and PixelFEDMyCalibration (follow for instance PixelTBMDelayCalibration and PixelFEDTBMDelayCalibration classes)
 +
 +3) add the new calibration to the file **config/aliases.txt**
 +
 +  ...
 +  Gain99By3        19 ;
 +  GainBy3          20 ;
 +  Iana             21 ;
 +  ROCDelay         22 ;
 +  ReadbackCalibration 23 ; 
 +  Vdig 24 ;
 +  MyCalibration 25 ;
 +
 +4) add the calibration key to the file **config/configurations.txt**
 +
 +  ...
 +  key 25
 +  detconfig   0
 +  nametranslation   0
 +  fedconfig   0
 +  fecconfig   0
 +  fedcard   0
 +  dac   0
 +  maxvsf   0
 +  mask   0
 +  trim   0
 +  calib   25
 +  tbm   0
 +  portcard   0
 +  portcardmap   0
 +  ttcciconfig   0
 +  ltcconfig   0
 +  tkfecconfig   0
 +  lowvoltagemap   0
 +
 +5) edit the calib.dat file with the input parameters of the new calibration (ex: what to scan, scan range, etc..). For the example above the file should stay under **config/calib/25/calib.dat**    
 +
 +
 +  
 +===== Calibration sequence =====
 +
 +The calibration sequence is described in [[https://indico.cern.ch/event/560056/contributions/2292179/attachments/1330727/1999885/phase1-calibrations.pdf|this]] presentation.
 +
 +The calibrations parameters can be found in the corresponding calib.dat file in the config/calib directory (check the config/aliases.txt file to know which subfolder you should look at)
 +
 +A detector configuration for switch 0 and switch 1 of the fitted receiver to use for testing calibrations can be found in [[https://elog.physik.uzh.ch:8080/Pixel/168|this elog entry]]
phase1/phase1/pos.txt · Last modified: 2016/09/14 11:25 by ngadiuba