Declaration of the member function that actually performs the reconstruction.
137 for (JEvt::const_iterator shower = in.begin(); shower != in.end(); ++shower) {
140 shower->getE(), 0.0);
146 for (JDataL0_t::const_iterator i = dataL0.begin(); i != dataL0.end(); ++i) {
149 top.insert(i->getPMTIdentifier());
160 for (JDetectorSubset_t::iterator module = subdetector.begin();
161 module != subdetector.end(); ++module) {
166 for (
unsigned int i = 0; i != dom.size(); ++i) {
172 buffer.push_back(
JPMTW0(dom.getPMT(i), rate_Hz, top.count(
id)));
176 this->step.resize(2);
180 double f_h = 1 - 0.681 * (
std::pow(shower->getE()/0.863, -0.207));
183 log10(sh.getE()),
log10(f_h*sh.getE()), sh.getBjY()),
184 buffer.begin(), buffer.end());
186 double NDF =
getCount(buffer.begin(), buffer.end()) - this->step.size();
188 JShower3EY sh_fit(this->value.getPosition(), this->value.getDirection(),
189 this->value.getT(),
correct(this->value.getEem() + this->value.getEh()), this->value.getBy());
191 double y =
getFinalBjY(this->value.getEem(), this->value.getEh());
193 sh_fit.rotate_back(
R);
195 sh_fit.add(sh.getPosition());
198 NDF, sh_fit.getE()));
200 out.rbegin()->setW(5, y);
201 out.rbegin()->setW(6, this->value.getEem());
202 out.rbegin()->setW(7, this->value.getEh());
Data structure for direction in three dimensions.
Data structure for a composite optical module.
const JModuleRouter & router
Template specialisation of L0 builder for JHitL0 data type.
Auxiliary class for handling PMT geometry, rate and response.
Data structure for vertex fit.
double getRate() const
Get default rate.
JFit getFit(const JHistory &history, const JTrack3D &track, const double Q, const int NDF, const double energy=0.0, const int status=SINGLE_STAGE)
Get fit.
3D track with energy and Bjorken Y.
double getQuality(const double chi2, const int N, const int NDF)
Get quality of fit.
double fit_step
simplex initial step
const JSummaryRouter & summary
Data structure for vector in three dimensions.
set_variable E_E log10(E_{fit}/E_{#mu})"
static JTimeRange T_ns
Time window with respect to Cherenkov hypothesis [ns].
T pow(const T &x, const double y)
Power .
JDirection3D getDirection(const JFit &fit)
Get direction.
static const int JSHOWER_BJORKEN_Y
Detector subset without binary search functionality.
Data structure for fit of straight line in positive z-direction with energy.
then JCookie sh JDataQuality D $DETECTOR_ID R
const JClass_t & getReference() const
Get reference to object.
double getFinalBjY(double E_em, double E_h)
then if[[!-f $DETECTOR]] then JDetector sh $DETECTOR fi cat $WORKDIR trigger_parameters txt<< EOFtrigger3DMuon.enabled=1;trigger3DMuon.numberOfHits=5;trigger3DMuon.gridAngle_deg=1;ctMin=0.0;TMaxLocal_ns=15.0;EOF set_variable TRIGGEREFFICIENCY_TRIGGERED_EVENTS_ONLY INPUT_FILES=() for((i=1;$i<=$NUMBER_OF_RUNS;++i));do JSirene.sh $DETECTOR $JPP_DATA/genhen.km3net_wpd_V2_0.evt.gz $WORKDIR/sirene_ ${i}.root JTriggerEfficiency.sh $DETECTOR $DETECTOR $WORKDIR/sirene_ ${i}.root $WORKDIR/trigger_efficiency_ ${i}.root $WORKDIR/trigger_parameters.txt $JPP_DATA/PMT_parameters.txt INPUT_FILES+=($WORKDIR/trigger_efficiency_ ${i}.root) done for ANGLE_DEG in $ANGLES_DEG[*];do set_variable SIGMA_NS 3.0 set_variable OUTLIERS 3 set_variable OUTPUT_FILE $WORKDIR/matrix\[${ANGLE_DEG}\deg\].root $JPP_DIR/examples/JReconstruction-f"$INPUT_FILES[*]"-o $OUTPUT_FILE-S ${SIGMA_NS}-A ${ANGLE_DEG}-O ${OUTLIERS}-d ${DEBUG}--!fiif[[$OPTION=="plot"]];then if((0));then for H1 in h0 h1;do JPlot1D-f"$WORKDIR/matrix["${^ANGLES_DEG}" deg].root:${H1}"-y"1 2e3"-Y-L TR-T""-\^"number of events [a.u.]"-> o chi2
int getCount(const T &hit)
Get hit count.
JPosition3D getPosition(const JFit &fit)
Get position.
Template specialisation of class JModel to match hit with bright point.
double roadWidth_m
road width [m]
Data structure for normalised vector in positive z-direction.
const JShowerEnergyCorrection & correct