#include <cmath>
#include <algorithm>
#include <iostream>
#include <type_traits>
#include <Math/VectorUtil.h>
#include <colours.h>
#include <Variation.h>
#include <GenericObject.h>
Go to the source code of this file.
|
template<typename Obj1 , typename Obj2 , class = typename std::enable_if_t<std::is_base_of_v<Darwin::Physics::AbstractGenericObject, Obj1>>, class = typename std::enable_if_t<std::is_base_of_v<Darwin::Physics::AbstractGenericObject, Obj2>>> |
auto | operator+ (Obj1 &o1, Obj2 &o2) |
|
template<typename Obj1 , typename Obj2 > |
std::ostream & | operator<< (std::ostream &s, const Darwin::Physics::Di< Obj1, Obj2 > &di) |
|
◆ operator+()
auto operator+ |
( |
Obj1 & |
o1, |
|
|
Obj2 & |
o2 |
|
) |
| |
|
inline |
Generic overload of operator+
to define composite objects as follows:
auto recdimuon = genmuons.at(0) + genmuons.at(1);
auto recW1 = recJet.at(1) + recJet.at(2),
recW2 = recJet.at(4) + recJet.at(5);
auto recT1 = recJet.at(0) + recW1,
recT2 = recJet.at(3) + recW2;
auto recTTbar = recT1 + recT2;
◆ operator<<()
95 return s <<
'[' << *di.first <<
", " << *di.second <<
"] = " << di.
CorrP4();
97 return s <<
red <<
"invalid system" <<
normal;