// test-application for class My3Vector // T3Vector.cpp // #include // pre-prozessor command #include "My3Vector.h" #include "MyLVector.h" using namespace std; // declare namespace int main() { My3Vector a, b(1.,1.,-1.), c(0.,2.,1.); // create 3 ThreeVec objects a = b.Add(c); // add ThreeVec b and c, result is stored in a cout << a.Length() << endl; //cout << a.SkalarProd(b) << endl; //cout << a.Winkel(b)*180./3.1415 << endl; a.Print(); b.Print(); c.Print(); MyLVector d(45.6,1.,1.,0.), e(45.6,-1.,-1.,0.); double mass = d.Mass(e); d.Print(); e.Print(); cout << mass << endl; cout << "=============================" << endl; // Higgs example // https://twiki.cern.ch/twiki/bin/view/AtlasPublic/EventDisplaysFromHiggsSearches // and more infos: https://atlas.cern/updates/briefing/higgs-golden-channel // https://atlas.cern/discover/physics // // H->ZZ-> 4mu //m_4l=123.5 GeV. m_12=84 GeV, m_34=34.2 GeV. //mu_1: pt=37.8 GeV, eta=0.61 phi=1.46. //mu_2: pt=29.2 GeV, eta=-0.95, phi=-2.47. //mu_3: pt=10.3 GeV, eta=0.62 phi=-1.41. //mu_4: pt=32.6 GeV eta=-0.16, phi=2.85 // // inv mass plot, animated gif: https://cds.cern.ch/record/2230893?ln=de // MyLVector tr1, tr2, tr3, tr4; tr1.setPtEtaPhiM(37.8, 0.61, 1.46, 0.105); tr2.setPtEtaPhiM(29.2,-0.95,-2.47, 0.105); tr3.setPtEtaPhiM(10.3, 0.62,-1.41, 0.105); tr4.setPtEtaPhiM(32.6,-0.16, 2.85, 0.105); MyLVector z1 = tr1.Add(tr2); MyLVector z2 = tr3.Add(tr4); z1.Print(); z2.Print(); MyLVector h = z1.Add(z2); h.Print(); cout << "z1 mass = " << z1.Mass() << endl; cout << "z2 mass = " << z2.Mass() << endl; cout << "h mass = " << h.Mass() << endl; }