5 #include "EVENT/LCIO.h"
6 #include <EVENT/SimCalorimeterHit.h>
7 #include <EVENT/CalorimeterHit.h>
12 #include <UTIL/CellIDDecoder.h>
13 #include "Phys_Geom_Database.h"
14 #include <gsl/gsl_vector.h>
15 #include <gsl/gsl_matrix.h>
16 #include <gsl/gsl_blas.h>
17 #include <gsl/gsl_linalg.h>
18 #include <gsl/gsl_eigen.h>
19 #include <gsl/gsl_multifit_nlin.h>
20 #include <gsl/gsl_rng.h>
21 #include <gsl/gsl_sf_gamma.h>
22 #include <gsl/gsl_integration.h>
23 #include <gsl/gsl_sf_pow_int.h>
45 Superhit2(
float E,CalorimeterHit* chitin);
53 const float* getPosition(
int i);
57 CalorimeterHit* chit{};
87 vector <Superhit2*> neighbours{};
146 vector<Superhit2*> hits{};
150 vector<Tmpcl2*> daughters{};
154 vector<Tmpcl2*> parents{};
166 double direction[3]{};
170 double inteigen[3]{};
174 double inteigenvec[9]{};
189 Photon2(
double Ein,
double* pravac,
double* pocetak);
195 void Prob(CalorimeterHit* ch,
double cut,
double* out);
226 typedef vector<Superhit2*> Shitvec2;
227 typedef vector<Tmpcl2*> Tmpclvec2;
312 void CreateAllShits2(LCCollection* colt,CellIDDecoder<CalorimeterHit>&
id,vector<Superhit2*>* calo);
318 void TotalPrecalc2(vector<Superhit2*>* calo,CellIDDecoder<CalorimeterHit>&
id,
319 unsigned int nelem,
int Ncut);
323 void Precalc2(vector< Superhit2* >& shvec,
double r,
double z,
double cell,
double dist,
bool tip,
int stove,
int module,CellIDDecoder<CalorimeterHit>&
id);
328 void GridTransform2( CalorimeterHit* clh,
float& radius,
float& halfz,
float& cellsize,
float*X,
329 bool tip,
int stove,
int module,CellIDDecoder<CalorimeterHit>&
id);
335 void FindCores2(Shitvec2* secal1, vector< Tmpclvec2>& bbb , vector <PROTSEED2> * prs2,
336 unsigned int N, vector<float> miipstep,
CoreCut2 Ccut);
340 void cluster5( vector<Superhit2*>* shv, vector<Tmpcl2*>* clv);
345 double giveMeEEstimate2(
int nivo,
double Ecore, vector<CoreCalib2> cc);
349 void CreateCalibrationLDC00(vector<CoreCalib2>* cc);
352 void LineCaloIntersectD2(
double* X1,
double* dir,
double&d,
double&zmax,
double*X);
353 void LineCaloIntersect2(
double* X1,
double* X2,
double&d,
double&zmax,
double*X);
354 double LinePointDistance2(
double* X1,
double* X2,
double* X0);
355 void PointOnLine3(
const double* X1,
const double* X2,
const float* X0,
double* Xline);
356 void PointOnLine22(
const double* Xstart,
const double* dir,
const float* X0,
double* Xline);
357 void ModuleNormal2(
double* X1,
double& zmax,
double* X0);
358 void ClusterInCluster2(
Tmpcl2* cl, vector<Tmpcl2*>& clv);
360 inline double Dot2(
double* X1,
double* X2);
361 void ClusterInCluster2(
Tmpcl2* cl, vector<Tmpcl2*>& clv,vector<Tmpcl2*>& clout);
container for keeping the parameters of the core fineder together
Definition: KITutil.h:284
Definition: KITutil.h:182
unsigned int MinHitSplit
minimal number of hits in i-th level cluster to be accepted for splitting of the core ...
Definition: KITutil.h:304
double b
Eestimate = a+b*Ecore , b parameter of this funcition.
Definition: KITutil.h:248
unsigned int MinHit0
minimal number of hits needed for 0-th level cluster to be accepted as a core candidate ...
Definition: KITutil.h:300
double Distcut
distance cut for core merging
Definition: KITutil.h:292
Basic cluster class for reconstruction.
Definition: KITutil.h:114
int level
level of cluster
Definition: KITutil.h:236
double Emax
upper validity range of energy estimation funciton in GeV
Definition: KITutil.h:256
double Emin
lower validity range of energy estimation funciton in GeV
Definition: KITutil.h:252
double Coscut
angular cut for core merging (value of the cosine is stored not the angle!)
Definition: KITutil.h:296
container for storing the EM shower core candidates
Definition: KITutil.h:262
double Enom
nominal i.e.
Definition: KITutil.h:240
double a
Eestimate = a+b*Ecore , a parameter of this funcition.
Definition: KITutil.h:244
double Rcut
fluctuation suppresion cut
Definition: KITutil.h:288
int level
level of the cluster
Definition: KITutil.h:270
Tmpcl2 * cl
pointer to the cluster
Definition: KITutil.h:266
Basic hit class for reconstruction, contains the calorimeter hit plus additional parameters.
Definition: KITutil.h:35
container for holding the numbers needed for energy estimation
Definition: KITutil.h:232
bool active
flag to activate deactivate
Definition: KITutil.h:278