rm ntptwiki.txt; cat ntp.txt | sed 's/$/
/' >ntptwiki.txt PUT MAX objects + check that we never write more than that for two dimensions use fixed second [10]???? For physics objects (e, gamma may add et threshold) think!!!! Dump parametri e versione in the root tree (NOT IMMEDIATELY URGENT) Run + Event number Int_t run; Int_t event; Something like MC event type? For soups and so on... Int_t i_typev; Generator info: All generated particles Int_t allgen_n; Float_t allgen_energy[1341]; //[allgen_n] Float_t allgen_et[1341]; //[allgen_n] Float_t allgen_eta[1341]; //[allgen_n] Float_t allgen_theta[1341]; //[allgen_n] Float_t allgen_phi[1341]; //[allgen_n] Int_t allgen_pdgid[1341]; //[allgen_n] Int_t allgen_mother[1341]; //[allgen_n] Int_t allgen_status[1341]; //[allgen_n] + TLorentzVector (mass included) Vertex info: Float_t mcvtx_z; + x y Float_t datavtx_z; + Simtracks for electrons and photons in the tracker (conversion, brem) Done by Sean already??? add event PT_HAT OPTIONAL: REDUNDANT INFO Some selected particles such as e, mu, gamma, tau? with ET thresholds e, before and after photon emissiom Int_t gen_n_pho; Float_t gen_energy[3]; //[gen_n_pho] Float_t gen_et[3]; //[gen_n_pho] Float_t gen_eta[3]; //[gen_n_pho] Float_t gen_theta[3]; //[gen_n_pho] Float_t gen_phi[3]; //[gen_n_pho] Int_t gen_pdgid[3]; //[gen_n_pho] END OPTIONAL L1 TRIGGER Int_t L1iso_n; Int_t L1iso_rank[L1iso_n]; //[L1iso_n] Remove Int_t L1iso_energy[L1iso_n]; //[L1iso_n] See if integer Int_t L1iso_et[L1iso_n]; //[L1iso_n] Float_t L1iso_eta[L1iso_n]; //[L1iso_n] Float_t L1iso_phi[L1iso_n]; //[L1iso_n] Int_t L1noniso_n; Int_t L1noniso_rank[1]; //[L1noniso_n] Int_t L1noniso_energy[1]; //[L1noniso_n] Int_t L1noniso_et[1]; //[L1noniso_n] Float_t L1noniso_eta[1]; //[L1noniso_n] Float_t L1noniso_phi[1]; //[L1noniso_n] see Int_t L1jet_n; Int_t L1jet_energy[1]; //[L1jet_n] Int_t L1jet_et[1]; //[L1jet_n] Float_t L1jet_eta[1]; //[L1jet_n] Float_t L1jet_phi[1]; //[L1jet_n] see Int_t L1tau_n; Int_t L1tau_energy[1]; //[L1tau_n] Int_t L1tau_et[1]; //[L1tau_n] Float_t L1tau_eta[1]; //[L1tau_n] Float_t L1tau_phi[1]; //[L1tau_n] see Int_t L1muon_n; Int_t L1muon_energy[1]; //[L1muon_n] Int_t L1muon_et[1]; //[L1muon_n] Float_t L1muon_eta[1]; //[L1muon_n] Float_t L1muon_phi[1]; //[L1muon_n] Add HLT bit match candidates passing using SC Tracks Int_t tk_n; Float_t tk_energy[168]; //[tk_n] Float_t tk_et[168]; //[tk_n] Float_t tk_eta[168]; //[tk_n] Float_t tk_phi[168]; //[tk_n] Int_t tk_charge[168]; //[tk_n] Float_t tk_d0[168]; //[tk_n] Int_t tk_nhits[168]; //[tk_n] Float_t tk_chi2perDof[168]; //[tk_n] Float_t tk_dz[168]; //[tk_n] Float_t tk_qoverpError[168]; //[tk_n] +lost hits +errors Not full cov matrix id mc Reconstructed vertices (with links to these tracks even a little later) x,y,z dx,dy,dz HCAL Int_t hcalB_n; Float_t hcalB_eta[5184]; //[hcalB_n] Float_t hcalB_phi[5184]; //[hcalB_n] Float_t hcalB_et[5184]; //[hcalB_n] Int_t hcalF_n; Float_t hcalF_eta[1728]; //[hcalF_n] Float_t hcalF_phi[1728]; //[hcalF_n] Float_t hcalF_et[1728]; //[hcalF_n] add other type and put an energy threshold (not et) ~300 MeV Calotowers This put by Sean (check again) Int_t caltow_n; Float_t caltow_et[726]; //[caltow_n] Float_t caltow_energy[726]; //[caltow_n] Float_t caltow_eta[726]; //[caltow_n] Float_t caltow_phi[726]; //[caltow_n] Float_t caltow_emEnergy[726]; //[caltow_n] Float_t caltow_hadEnergy[726]; //[caltow_n] Float_t caltow_outerEnergy[726]; //[caltow_n] Float_t caltow_outerEt[726]; //[caltow_n] Float_t caltow_emEt[726]; //[caltow_n] Float_t caltow_hadEt[726]; //[caltow_n] Int_t caltow_emL1[726]; //[caltow_n] Int_t caltow_hadL1[726]; //[caltow_n] Int_t caltow_size[726]; //[caltow_n] ECAL Decide how to link them (probably in both directions) Also link the sc to the seed basic cluster Int_t islbc_n; Float_t islbc_energy[120]; //[islbc_n] Float_t islbc_et[120]; //[islbc_n] Float_t islbc_eta[120]; //[islbc_n] Float_t islbc_theta[120]; //[islbc_n] Float_t islbc_phi[120]; //[islbc_n] Int_t islbc_nhits[120]; //[islbc_n] Int_t islbc_photIndex[120]; //[islbc_n] Int_t islbc_scIndex[120]; //[islbc_n] Int_t islsc_n; Float_t islsc_energy[33]; //[islsc_n] Float_t islsc_et[33]; //[islsc_n] Float_t islsc_eta[33]; //[islsc_n] Float_t islsc_theta[33]; //[islsc_n] Float_t islsc_phi[33]; //[islsc_n] Int_t hybsc_n; Float_t hybsc_energy[17]; //[hybsc_n] Float_t hybsc_et[17]; //[hybsc_n] Float_t hybsc_eta[17]; //[hybsc_n] Float_t hybsc_theta[17]; //[hybsc_n] Float_t hybsc_phi[17]; //[hybsc_n] Check if there is another collection of Hybrid Clusters DUPLICATE INFO OPTIONAL Int_t vtx_n; Float_t vtx_z[30]; //[vtx_n] Int_t vtx_ntk[30]; //[vtx_n] Float_t vtx_vecmom[30]; //[vtx_n] Float_t vtx_vecmomphi[30]; //[vtx_n] Float_t vtx_absmom[30]; //[vtx_n] END OPTIONAL Put some shape variables in the basic clusters Energy, raw energy, presh energy Int_t pho_n; Float_t pho_energy[6]; //[pho_n] Float_t pho_et[6]; //[pho_n] Float_t pho_energyuncor[6]; //[pho_n] Float_t pho_etuncor[6]; //[pho_n] Float_t pho_energycor[6]; //[pho_n] Float_t pho_etcor[6]; //[pho_n] Float_t pho_energycorpre[6]; //[pho_n] Float_t pho_etcorpre[6]; //[pho_n] Float_t pho_mycorr[6]; //[pho_n] Float_t pho_SC_energy[6]; //[pho_n] Float_t pho_SC_et[6]; //[pho_n] Float_t pho_SC_eta[6]; //[pho_n] Float_t pho_SC_phi[6]; //[pho_n] Float_t pho_bcenergy[6]; //[pho_n] Int_t pho_nbc[6]; //[pho_n] Int_t pho_bcIndex[6][20]; //[pho_n] Float_t pho_bordercorr[6]; //[pho_n] Float_t pho_preshcorr[6]; //[pho_n] Float_t pho_cor[6]; //[pho_n] Float_t pho_eta[6]; //[pho_n] Float_t pho_theta[6]; //[pho_n] Float_t pho_phi[6]; //[pho_n] Float_t pho_s1[6]; //[pho_n] Float_t pho_s9[6]; //[pho_n] Float_t pho_s25[6]; //[pho_n] Float_t pho_s1t[6]; //[pho_n] Float_t pho_s9t[6]; //[pho_n] Float_t pho_s25t[6]; //[pho_n] Float_t pho_ecalr[6]; //[pho_n] Float_t pho_ecalz[6]; //[pho_n] Int_t pho_pizerotype[6]; //[pho_n] Float_t pho_pizeronn[6]; //[pho_n] OPTIONAL, LATER, ISOLATION VARIABLES Int_t pho_ntk[6]; //[pho_n] Int_t pho_ntk030[6]; //[pho_n] Int_t pho_ntk025[6]; //[pho_n] Int_t pho_ntk035[6]; //[pho_n] Int_t pho_barrel[6]; //[pho_n] Int_t pho_reco[6]; //[pho_n] Int_t pho_gen[6]; //[pho_n] Float_t pho_drmatch[6]; //[pho_n] Float_t pho_hcal030[6]; //[pho_n] Float_t pho_hcal040[6]; //[pho_n] Float_t pho_hcal050[6]; //[pho_n] Float_t pho_ecal030[6]; //[pho_n] Float_t pho_ecal040[6]; //[pho_n] Float_t pho_ecal050[6]; //[pho_n] Float_t pho_energyuncorisland[6]; //[pho_n] Float_t pho_etaisland[6]; //[pho_n] Float_t pho_phiisland[6]; //[pho_n] Float_t pho_drisland[6]; //[pho_n] Float_t pho_ecal006035[6]; //[pho_n] Float_t pho_ecal006030[6]; //[pho_n] Float_t pho_ecal006040[6]; //[pho_n] Float_t pho_ecal008035[6]; //[pho_n] Float_t pho_ecal008030[6]; //[pho_n] Float_t pho_ecal008040[6]; //[pho_n] END OPTIONAL Keep converted photons separated More or less like this Int_t convpho_n; Int_t convpho_photIndex[1]; //[convpho_n] Int_t convpho_ntracks[1]; //[convpho_n] Float_t convpho_trk1_pt[1][2]; //[convpho_n] put like this Float_t convpho_trk1_eta[1]; //[convpho_n] Float_t convpho_trk1_phi[1]; //[convpho_n] Float_t convpho_trk1_d0[1]; //[convpho_n] Float_t convpho_trk1_nhits[1]; //[convpho_n] Float_t convpho_trk1_chi2perDof[1]; //[convpho_n] Float_t convpho_trk1_dz[1]; //[convpho_n] Float_t convpho_trk2_pt[1]; //[convpho_n] Float_t convpho_trk2_eta[1]; //[convpho_n] Float_t convpho_trk2_phi[1]; //[convpho_n] Float_t convpho_trk2_d0[1]; //[convpho_n] Float_t convpho_trk2_nhits[1]; //[convpho_n] Float_t convpho_trk2_chi2perDof[1]; //[convpho_n] Float_t convpho_trk2_dz[1]; //[convpho_n] Float_t convpho_vtx_x[1]; //[convpho_n] Float_t convpho_vtx_y[1]; //[convpho_n] Float_t convpho_vtx_z[1]; //[convpho_n] Float_t convpho_vtx_r[1]; //[convpho_n] Float_t convpho_pairmass[1]; //[convpho_n] Float_t convpho_pairsep[1]; //[convpho_n] Float_t convpho_vtx_px[1]; //[convpho_n] Float_t convpho_vtx_py[1]; //[convpho_n] Float_t convpho_vtx_pz[1]; //[convpho_n] Float_t convpho_vtx_pt[1]; //[convpho_n] Float_t convpho_pairptoveretsc[1]; //[convpho_n] Float_t convpho_eoverp[1]; //[convpho_n] Float_t convpho_energy[1]; //[convpho_n] Float_t convpho_et[1]; //[convpho_n] Float_t convpho_eta[1]; //[convpho_n] Float_t convpho_phi[1]; //[convpho_n] Float_t convpho_SC_energy[1]; //[convpho_n] Float_t convpho_SC_et[1]; //[convpho_n] Float_t convpho_SC_eta[1]; //[convpho_n] Float_t convpho_SC_phi[1]; //[convpho_n] Int_t convpho_reco[1]; //[convpho_n] Electrons two separate collections (standard + GGE) add a flag con loose tight cuts for Elizabeth... (integer) pointers to tracks + number of shared hits and so on Muons two collections (Global, trackingmuons) pointers to tracks Jets: 4 o 5 tipi +gen jets (no eta no et cut) ... Missing et Elizabeth will check it No taus for the moment REMOVE ALL THIS!!! Int_t gen_islbc[3]; //[gen_n_pho] Int_t gen_id_islbc[3][10]; //[gen_n_pho] Int_t gen_tk_03_05[3]; //[gen_n_pho] Int_t gen_gsf_03_05[3]; //[gen_n_pho] Int_t gen_pho_03_05[3]; //[gen_n_pho] Int_t gen_schyb_03_05[3]; //[gen_n_pho] Int_t gen_scisl_03_05[3]; //[gen_n_pho] Int_t gen_bchyb_03_05[3]; //[gen_n_pho] Int_t gen_bcisl_03_05[3]; //[gen_n_pho] Float_t gen_tk_et_03_05[3]; //[gen_n_pho] Float_t gen_gsf_et_03_05[3]; //[gen_n_pho] Float_t gen_pho_et_03_05[3]; //[gen_n_pho] Float_t gen_schyb_et_03_05[3]; //[gen_n_pho] Float_t gen_scisl_et_03_05[3]; //[gen_n_pho] Float_t gen_bchyb_et_03_05[3]; //[gen_n_pho] Float_t gen_bcisl_et_03_05[3]; //[gen_n_pho] Float_t gen_tk_eta_03_05[3]; //[gen_n_pho] Float_t gen_gsf_eta_03_05[3]; //[gen_n_pho] Float_t gen_pho_eta_03_05[3]; //[gen_n_pho] Float_t gen_schyb_eta_03_05[3]; //[gen_n_pho] Float_t gen_scisl_eta_03_05[3]; //[gen_n_pho] Float_t gen_bchyb_eta_03_05[3]; //[gen_n_pho] Float_t gen_bcisl_eta_03_05[3]; //[gen_n_pho] Float_t gen_tk_phi_03_05[3]; //[gen_n_pho] Float_t gen_gsf_phi_03_05[3]; //[gen_n_pho] Float_t gen_pho_phi_03_05[3]; //[gen_n_pho] Float_t gen_schyb_phi_03_05[3]; //[gen_n_pho] Float_t gen_scisl_phi_03_05[3]; //[gen_n_pho] Float_t gen_bchyb_phi_03_05[3]; //[gen_n_pho] Float_t gen_bcisl_phi_03_05[3]; //[gen_n_pho] Float_t gen_tk2_et_03_05[3]; //[gen_n_pho] Float_t gen_gsf2_et_03_05[3]; //[gen_n_pho] Float_t gen_pho2_et_03_05[3]; //[gen_n_pho] Float_t gen_schyb2_et_03_05[3]; //[gen_n_pho] Float_t gen_scisl2_et_03_05[3]; //[gen_n_pho] Float_t gen_bchyb2_et_03_05[3]; //[gen_n_pho] Float_t gen_bcisl2_et_03_05[3]; //[gen_n_pho] Float_t gen_tk2_eta_03_05[3]; //[gen_n_pho] Float_t gen_gsf2_eta_03_05[3]; //[gen_n_pho] Float_t gen_pho2_eta_03_05[3]; //[gen_n_pho] Float_t gen_schyb2_eta_03_05[3]; //[gen_n_pho] Float_t gen_scisl2_eta_03_05[3]; //[gen_n_pho] Float_t gen_bchyb2_eta_03_05[3]; //[gen_n_pho] Float_t gen_bcisl2_eta_03_05[3]; //[gen_n_pho] Float_t gen_tk2_phi_03_05[3]; //[gen_n_pho] Float_t gen_gsf2_phi_03_05[3]; //[gen_n_pho] Float_t gen_pho2_phi_03_05[3]; //[gen_n_pho] Float_t gen_schyb2_phi_03_05[3]; //[gen_n_pho] Float_t gen_scisl2_phi_03_05[3]; //[gen_n_pho] Float_t gen_bchyb2_phi_03_05[3]; //[gen_n_pho] Float_t gen_bcisl2_phi_03_05[3]; //[gen_n_pho] END REMOVE ALL THIS