189 {
190
191 TH1D* h_tres = new TH1D("h_tres", ";Time residuals [ns]; Entries", 100, -50, 150);
192 TH1D* h_likelihood = new TH1D ("h_likelihood", " ; Likelihood; Reconstructed Events ", 100, -1000, 1000);
193 TH1D* h_beta0 = new TH1D("h_beta0", "; beta0; Reconstructed Events", 20, 0, 1);
194 TH1D* h_energy = new TH1D ("h_energy", " ; Energy [GeV]; Reconstructed Events ", 65, 0, 9);
196 TH1D* h_zenith = new TH1D("h_zenith", "; cosZenith; Reconstructed Events", 20, -1, 1);
197 TH1D* h_azimuth = new TH1D("h_azimuth", "; cosAzimuth; Reconstructed Events", 20, -1, 1);
198 TH1D* h_radial_position = new TH1D ("h_radial_position", "; Radial Position [m]; Reconstructed Events", 60, 0, 4.2);
200 TH1D* h_z_position = new TH1D ("h_z_position", "; Z Position [m] ; Reconstructed Events", 50, 0, 3.2);
202
204
206
209
210 if (!evt->empty()) {
211
212 JEvt::iterator best = evt->begin();
213 h_energy -> Fill(best->getE());
214 h_likelihood -> Fill(best->getQ());
215 h_z_position -> Fill(best->getZ());
216 h_radial_position -> Fill(sqrt(best->getX()*best->getX() + best->getY()*best->getY()));
217
222
225 buildL0(
JDAQTimeslice(*event,
false), router, back_inserter(dataL0));
226
227 for (std::vector<JHitL0>::const_iterator hit = dataL0.begin(); hit != dataL0.end(); ++hit) {
228
229 h_tres -> Fill(hit->getT() - track.
getT(hit->getPosition()));
230 }
231 }
232 }
233
234 f.mkdir("Reco");
235 f.cd("Reco");
236
237 h_energy->Write();
238 h_likelihood -> Write();
239 h_z_position -> Write();
240 h_radial_position -> Write();
241 h_zenith -> Write();
242 h_azimuth -> Write();
243 h_beta0 -> Write();
244 h_tres -> Write();
245 }
double getT(const JVector3D &pos) const
Get arrival time of Cherenkov light at given position.
JVersor3D getDirection(const JVector3D &pos) const
Get photon direction of Cherenkov light on PMT.
double getTheta() const
Get theta angle.
double getPhi() const
Get phi angle.
General purpose class for parallel reading of objects from a single file or multiple files.
virtual const multi_pointer_type & next() override
Get next element.
virtual bool hasNext() override
Check availability of next element.
static const int JGANDALF_BETA0_RAD
KM3NeT Data Definitions v3.6.0 https://git.km3net.de/common/km3net-dataformat.
JTrack3E getTrack(const Trk &track)
Get track.
void setLogarithmicX(TList *list)
Make x-axis of objects in list logarithmic (e.g. after using log10()).