Go to the documentation of this file.
33 for (
auto & src : srcs){
35 JPMT src_pmt = src->getPMT() ;
37 NBPulse* src_pulse = src->getNBPulse() ;
39 for(
auto & tgt : tgts){
41 JPMT tgt_pmt = tgt->getPMT() ;
43 NBPulse* tgt_pulse = tgt->getNBPulse() ;
51 double delta_t0 = t_flight - delta_traw ;
55 corrections.push_back(delta_t0 - delta_t0_old) ;
61 sort (corrections.begin() , corrections.end()) ;
63 int index = int(0.5*corrections.size()) ;
65 return corrections[index] ;
80 for(
auto & sm : SuperMods){
84 if(sm->get_good_sources().size()>0){
96 for(
int j=0 ;
j < nPMTs ;
j++){
double getT0() const
Get time offset.
const JModule & getModule(const JModuleAddress &address) const
Get module parameters.
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
Router for direct addressing of PMT data in detector data structure.
JDetector Update_Detector(JDetector detector, const vector< SuperModule * > &SuperMods)
Produces a new detector file by updating the existing t0s of the PMTs.
Logical location of module.
double get_PMT_distance(JPMT src_pmt, JPMT tgt_pmt)
Calculate the distance between two JPMTs in the detector.
const JPMT & getPMT(const int index) const
Get PMT.
Analyzes the signal of a nanobeacon in a PMT.
int getNumberOfModules(const JDetector &detector)
Get number of modules.
int getID() const
Get identifier.
double getPeakTime()
Get the arrival time of the nanobeacon pulse.
Data structure for PMT geometry and calibration.
Auxiliary class for object identification.
int getNumberOfPMTs(const JModule &module)
Get number of PMTs.
void setT0(const double t0)
Set time offset.
const JModuleLocation & getLocation() const
Get location.
double computeMedianCorrection(JDetector *det, vector< SuperPMT * > srcs, vector< SuperPMT * > tgts)
It uses the pmts from a source module and from a target module.
const JPMT & getPMT(const JPMTAddress &address) const
Get PMT.