 |
DAS
3.0
Das Analysis System
|
#include <fjcore.hh>
|
| PseudoJet () |
|
| PseudoJet (const double px, const double py, const double pz, const double E) |
|
template<class L > |
| PseudoJet (const L &some_four_vector) |
|
| PseudoJet (bool) |
|
virtual | ~PseudoJet () |
|
double | E () const |
|
double | e () const |
|
double | px () const |
|
double | py () const |
|
double | pz () const |
|
double | phi () const |
|
double | phi_std () const |
|
double | phi_02pi () const |
|
double | rap () const |
|
double | rapidity () const |
|
double | pseudorapidity () const |
|
double | eta () const |
|
double | pt2 () const |
|
double | pt () const |
|
double | perp2 () const |
|
double | perp () const |
|
double | CorrPt () const |
|
double | kt2 () const |
|
double | m2 () const |
|
double | m () const |
|
double | mperp2 () const |
|
double | mperp () const |
|
double | mt2 () const |
|
double | mt () const |
|
double | modp2 () const |
|
double | modp () const |
|
double | Et () const |
|
double | Et2 () const |
|
double | cos_theta () const |
|
double | theta () const |
|
double | operator() (int i) const |
|
double | operator[] (int i) const |
|
double | kt_distance (const PseudoJet &other) const |
|
double | plain_distance (const PseudoJet &other) const |
|
double | squared_distance (const PseudoJet &other) const |
|
double | delta_R (const PseudoJet &other) const |
|
double | delta_phi_to (const PseudoJet &other) const |
|
double | beam_distance () const |
|
std::valarray< double > | four_mom () const |
|
PseudoJet & | boost (const PseudoJet &prest) |
|
PseudoJet & | unboost (const PseudoJet &prest) |
|
PseudoJet & | operator*= (double) |
|
PseudoJet & | operator/= (double) |
|
PseudoJet & | operator+= (const PseudoJet &) |
|
PseudoJet & | operator-= (const PseudoJet &) |
|
void | reset (double px, double py, double pz, double E) |
|
void | reset (const PseudoJet &psjet) |
|
template<class L > |
void | reset (const L &some_four_vector) |
|
void | reset_PtYPhiM (double pt_in, double y_in, double phi_in, double m_in=0.0) |
|
void | reset_momentum (double px, double py, double pz, double E) |
|
void | reset_momentum (const PseudoJet &pj) |
|
void | reset_momentum_PtYPhiM (double pt, double y, double phi, double m=0.0) |
|
template<class L > |
void | reset_momentum (const L &some_four_vector) |
|
void | set_cached_rap_phi (double rap, double phi) |
|
int | user_index () const |
|
void | set_user_index (const int index) |
|
void | set_user_info (UserInfoBase *user_info_in) |
|
template<class L > |
const L & | user_info () const |
|
bool | has_user_info () const |
|
template<class L > |
bool | has_user_info () const |
|
const UserInfoBase * | user_info_ptr () const |
|
const SharedPtr< UserInfoBase > & | user_info_shared_ptr () const |
|
SharedPtr< UserInfoBase > & | user_info_shared_ptr () |
|
std::string | description () const |
|
bool | has_associated_cluster_sequence () const |
|
bool | has_associated_cs () const |
|
bool | has_valid_cluster_sequence () const |
|
bool | has_valid_cs () const |
|
const ClusterSequence * | associated_cluster_sequence () const |
|
const ClusterSequence * | associated_cs () const |
|
const ClusterSequence * | validated_cluster_sequence () const |
|
const ClusterSequence * | validated_cs () const |
|
void | set_structure_shared_ptr (const SharedPtr< PseudoJetStructureBase > &structure) |
|
bool | has_structure () const |
|
const PseudoJetStructureBase * | structure_ptr () const |
|
PseudoJetStructureBase * | structure_non_const_ptr () |
|
const PseudoJetStructureBase * | validated_structure_ptr () const |
|
const SharedPtr< PseudoJetStructureBase > & | structure_shared_ptr () const |
|
template<typename StructureType > |
const StructureType & | structure () const |
|
template<typename TransformerType > |
bool | has_structure_of () const |
|
template<typename TransformerType > |
const TransformerType::StructureType & | structure_of () const |
|
virtual bool | has_partner (PseudoJet &partner) const |
|
virtual bool | has_child (PseudoJet &child) const |
|
virtual bool | has_parents (PseudoJet &parent1, PseudoJet &parent2) const |
|
virtual bool | contains (const PseudoJet &constituent) const |
|
virtual bool | is_inside (const PseudoJet &jet) const |
|
virtual bool | has_constituents () const |
|
virtual std::vector< PseudoJet > | constituents () const |
|
virtual bool | has_exclusive_subjets () const |
|
std::vector< PseudoJet > | exclusive_subjets (const double dcut) const |
|
int | n_exclusive_subjets (const double dcut) const |
|
std::vector< PseudoJet > | exclusive_subjets (int nsub) const |
|
std::vector< PseudoJet > | exclusive_subjets_up_to (int nsub) const |
|
double | exclusive_subdmerge (int nsub) const |
|
double | exclusive_subdmerge_max (int nsub) const |
|
virtual bool | has_pieces () const |
|
virtual std::vector< PseudoJet > | pieces () const |
|
int | cluster_hist_index () const |
|
void | set_cluster_hist_index (const int index) |
|
int | cluster_sequence_history_index () const |
|
void | set_cluster_sequence_history_index (const int index) |
|
◆ anonymous enum
Enumerator |
---|
X | |
Y | |
Z | |
T | |
NUM_COORDINATES | |
SIZE | |
◆ PseudoJet() [1/4]
◆ PseudoJet() [2/4]
PseudoJet |
( |
const double |
px, |
|
|
const double |
py, |
|
|
const double |
pz, |
|
|
const double |
E |
|
) |
| |
◆ PseudoJet() [3/4]
782 reset(some_four_vector);
◆ PseudoJet() [4/4]
◆ ~PseudoJet()
◆ _ensure_valid_rap_phi()
void _ensure_valid_rap_phi |
( |
| ) |
const |
|
inlineprivate |
◆ _finish_init()
◆ _reset_indices()
◆ _set_rap_phi()
void _set_rap_phi |
( |
| ) |
const |
|
private |
3763 _phi = atan2(this->
py(),this->
px());
3767 if (this->
E() == abs(this->
pz()) &&
_kt2 == 0) {
3768 double MaxRapHere =
MaxRap + abs(this->
pz());
3769 if (this->
pz() >= 0.0) {
_rap = MaxRapHere;}
else {
_rap = -MaxRapHere;}
3771 double effective_m2 = max(0.0,
m2());
3772 double E_plus_pz =
_E + abs(
_pz);
3773 _rap = 0.5*log((
_kt2 + effective_m2)/(E_plus_pz*E_plus_pz));
◆ associated_cluster_sequence()
◆ associated_cs()
◆ beam_distance()
double beam_distance |
( |
| ) |
const |
|
inline |
◆ boost()
3880 if (prest.
px() == 0.0 && prest.
py() == 0.0 && prest.
pz() == 0.0)
3882 double m_local = prest.
m();
3883 assert(m_local != 0);
3884 double pf4 = (
px()*prest.
px() +
py()*prest.
py()
3885 +
pz()*prest.
pz() +
E()*prest.
E() )/m_local;
3886 double fn = (pf4 +
E()) / (prest.
E() + m_local);
3887 _px += fn*prest.
px();
3888 _py += fn*prest.
py();
3889 _pz += fn*prest.
pz();
◆ cluster_hist_index()
int cluster_hist_index |
( |
| ) |
const |
|
inline |
◆ cluster_sequence_history_index()
int cluster_sequence_history_index |
( |
| ) |
const |
|
inline |
◆ constituents()
◆ contains()
bool contains |
( |
const PseudoJet & |
constituent | ) |
const |
|
virtual |
◆ CorrPt()
◆ cos_theta()
double cos_theta |
( |
| ) |
const |
|
inline |
581 return std::min(1.0, std::max(-1.0,
_pz/sqrt(
modp2())));
◆ delta_phi_to()
double delta_phi_to |
( |
const PseudoJet & |
other | ) |
const |
3958 double dphi = other.
phi() -
phi();
3960 if (dphi < -
pi) dphi +=
twopi;
◆ delta_R()
double delta_R |
( |
const PseudoJet & |
other | ) |
const |
|
inline |
◆ description()
string description |
( |
| ) |
const |
3965 return "standard PseudoJet (with no associated clustering information)";
◆ E()
◆ e()
◆ Et()
◆ Et2()
◆ eta()
◆ exclusive_subdmerge()
double exclusive_subdmerge |
( |
int |
nsub | ) |
const |
◆ exclusive_subdmerge_max()
double exclusive_subdmerge_max |
( |
int |
nsub | ) |
const |
◆ exclusive_subjets() [1/2]
std::vector< PseudoJet > exclusive_subjets |
( |
const double |
dcut | ) |
const |
◆ exclusive_subjets() [2/2]
std::vector< PseudoJet > exclusive_subjets |
( |
int |
nsub | ) |
const |
4036 if (
int(subjets.size()) < nsub) {
4038 err <<
"Requested " << nsub <<
" exclusive subjets, but there were only "
4039 << subjets.size() <<
" particles in the jet";
4040 throw Error(err.str());
◆ exclusive_subjets_up_to()
std::vector< PseudoJet > exclusive_subjets_up_to |
( |
int |
nsub | ) |
const |
◆ four_mom()
valarray< double > four_mom |
( |
| ) |
const |
3778 valarray<double> mom(4);
◆ has_associated_cluster_sequence()
bool has_associated_cluster_sequence |
( |
| ) |
const |
◆ has_associated_cs()
bool has_associated_cs |
( |
| ) |
const |
|
inline |
◆ has_child()
◆ has_constituents()
bool has_constituents |
( |
| ) |
const |
|
virtual |
◆ has_exclusive_subjets()
bool has_exclusive_subjets |
( |
| ) |
const |
|
virtual |
◆ has_parents()
◆ has_partner()
bool has_partner |
( |
PseudoJet & |
partner | ) |
const |
|
virtual |
◆ has_pieces()
bool has_pieces |
( |
| ) |
const |
|
virtual |
◆ has_structure()
bool has_structure |
( |
| ) |
const |
◆ has_structure_of()
826 return dynamic_cast<const typename TransformerType::StructureType *
>(
_structure.
get()) != 0;
◆ has_user_info() [1/2]
bool has_user_info |
( |
| ) |
const |
|
inline |
◆ has_user_info() [2/2]
bool has_user_info |
( |
| ) |
const |
|
inline |
◆ has_valid_cluster_sequence()
bool has_valid_cluster_sequence |
( |
| ) |
const |
◆ has_valid_cs()
bool has_valid_cs |
( |
| ) |
const |
|
inline |
◆ is_inside()
bool is_inside |
( |
const PseudoJet & |
jet | ) |
const |
|
virtual |
◆ kt2()
◆ kt_distance()
double kt_distance |
( |
const PseudoJet & |
other | ) |
const |
3944 double distance = min(
_kt2, other.
_kt2);
3945 double dphi = abs(
phi() - other.
phi());
3946 if (dphi >
pi) {dphi =
twopi - dphi;}
3947 double drap =
rap() - other.
rap();
3948 distance = distance * (dphi*dphi + drap*drap);
◆ m()
793 return mm < 0.0 ? -std::sqrt(-mm) : std::sqrt(mm);
◆ m2()
◆ modp()
◆ modp2()
◆ mperp()
573 {
return sqrt(std::abs(
mperp2()));}
◆ mperp2()
◆ mt()
575 {
return sqrt(std::abs(
mperp2()));}
◆ mt2()
◆ n_exclusive_subjets()
int n_exclusive_subjets |
( |
const double |
dcut | ) |
const |
◆ operator()()
double operator() |
( |
int |
i | ) |
const |
3797 err <<
"PseudoJet subscripting: bad index (" << i <<
")";
3798 throw Error(err.str());
◆ operator*=()
◆ operator+=()
3850 _E += other_jet.
_E ;
◆ operator-=()
3858 _E -= other_jet.
_E ;
◆ operator/=()
3843 (*this) *= 1.0/coeff;
◆ operator[]()
double operator[] |
( |
int |
i | ) |
const |
|
inline |
585 {
return (*
this)(i); };
◆ perp()
◆ perp2()
◆ phi()
◆ phi_02pi()
double phi_02pi |
( |
| ) |
const |
|
inline |
◆ phi_std()
◆ pieces()
◆ plain_distance()
double plain_distance |
( |
const PseudoJet & |
other | ) |
const |
3952 double dphi = abs(
phi() - other.
phi());
3953 if (dphi >
pi) {dphi =
twopi - dphi;}
3954 double drap =
rap() - other.
rap();
3955 return (dphi*dphi + drap*drap);
◆ pseudorapidity()
double pseudorapidity |
( |
| ) |
const |
3803 if (
px() == 0.0 &&
py() ==0.0)
return MaxRap;
3804 if (
pz() == 0.0)
return 0.0;
3807 return -log(tan(
theta/2));
◆ pt()
◆ pt2()
◆ px()
◆ py()
◆ pz()
◆ rap()
◆ rapidity()
double rapidity |
( |
| ) |
const |
|
inline |
◆ reset() [1/3]
void reset |
( |
const L & |
some_four_vector | ) |
|
|
inline |
609 const PseudoJet * pj = fjcore::cast_if_derived<const PseudoJet>(&some_four_vector);
613 reset(some_four_vector[0], some_four_vector[1],
614 some_four_vector[2], some_four_vector[3]);
◆ reset() [2/3]
◆ reset() [3/3]
void reset |
( |
double |
px, |
|
|
double |
py, |
|
|
double |
pz, |
|
|
double |
E |
|
) |
| |
|
inline |
◆ reset_momentum() [1/3]
void reset_momentum |
( |
const L & |
some_four_vector | ) |
|
|
inline |
627 some_four_vector[2], some_four_vector[3]);
◆ reset_momentum() [2/3]
◆ reset_momentum() [3/3]
void reset_momentum |
( |
double |
px, |
|
|
double |
py, |
|
|
double |
pz, |
|
|
double |
E |
|
) |
| |
|
inline |
◆ reset_momentum_PtYPhiM()
void reset_momentum_PtYPhiM |
( |
double |
pt, |
|
|
double |
y, |
|
|
double |
phi, |
|
|
double |
m = 0.0 |
|
) |
| |
3921 assert(phi_in < 2*twopi && phi_in > -
twopi);
3922 double ptm = (m_in == 0) ? pt_in : sqrt(pt_in*pt_in+m_in*m_in);
3923 double exprap = exp(y_in);
3924 double pminus = ptm/exprap;
3925 double pplus = ptm*exprap;
3926 double px_local = pt_in*cos(phi_in);
3927 double py_local = pt_in*sin(phi_in);
3928 reset_momentum(px_local,py_local,0.5*(pplus-pminus),0.5*(pplus+pminus));
◆ reset_PtYPhiM()
void reset_PtYPhiM |
( |
double |
pt_in, |
|
|
double |
y_in, |
|
|
double |
phi_in, |
|
|
double |
m_in = 0.0 |
|
) |
| |
|
inline |
◆ set_cached_rap_phi()
void set_cached_rap_phi |
( |
double |
rap, |
|
|
double |
phi |
|
) |
| |
◆ set_cluster_hist_index()
void set_cluster_hist_index |
( |
const int |
index | ) |
|
|
inline |
◆ set_cluster_sequence_history_index()
void set_cluster_sequence_history_index |
( |
const int |
index | ) |
|
|
inline |
◆ set_structure_shared_ptr()
◆ set_user_index()
void set_user_index |
( |
const int |
index | ) |
|
|
inline |
◆ set_user_info()
◆ squared_distance()
double squared_distance |
( |
const PseudoJet & |
other | ) |
const |
|
inline |
◆ structure()
const StructureType & structure |
◆ structure_non_const_ptr()
◆ structure_of()
const TransformerType::StructureType & structure_of |
831 throw Error(
"Trying to access the structure of a PseudoJet without an associated structure");
832 return dynamic_cast<const typename TransformerType::StructureType &
>(*_structure);
◆ structure_ptr()
◆ structure_shared_ptr()
◆ theta()
◆ unboost()
3895 if (prest.
px() == 0.0 && prest.
py() == 0.0 && prest.
pz() == 0.0)
3897 double m_local = prest.
m();
3898 assert(m_local != 0);
3899 double pf4 = ( -
px()*prest.
px() -
py()*prest.
py()
3900 -
pz()*prest.
pz() +
E()*prest.
E() )/m_local;
3901 double fn = (pf4 +
E()) / (prest.
E() + m_local);
3902 _px -= fn*prest.
px();
3903 _py -= fn*prest.
py();
3904 _pz -= fn*prest.
pz();
◆ user_index()
◆ user_info()
const L& user_info |
( |
| ) |
const |
|
inline |
646 if (
_user_info.get() == 0)
throw InexistentUserInfo();
647 return dynamic_cast<const L &
>(*
_user_info.get());
◆ user_info_ptr()
◆ user_info_shared_ptr() [1/2]
◆ user_info_shared_ptr() [2/2]
◆ validated_cluster_sequence()
◆ validated_cs()
◆ validated_structure_ptr()
3995 throw Error(
"Trying to access the structure of a PseudoJet which has no associated structure");
◆ operator*
3824 coeff_times_jet *= coeff;
3825 return coeff_times_jet;
◆ _cluster_hist_index
◆ _E
◆ _kt2
◆ _phi
◆ _px
◆ _py
◆ _pz
◆ _rap
◆ _structure
◆ _user_index
◆ _user_info
The documentation for this class was generated from the following files:
- /builds/cms-analysis/general/DasAnalysisSystem/Core/Installer/Core/JetObservables/interface/fjcore.hh
- /builds/cms-analysis/general/DasAnalysisSystem/Core/Installer/Core/JetObservables/src/fjcore.cc
int cluster_hist_index() const
Definition: fjcore.hh:704
virtual bool has_associated_cluster_sequence() const
Definition: fjcore.hh:501
void _set_rap_phi() const
Definition: fjcore.cc:3759
FJCORE_BEGIN_NAMESPACE const double MaxRap
Definition: fjcore.hh:532
void set_cluster_hist_index(const int index)
Definition: fjcore.hh:705
bool has_associated_cluster_sequence() const
Definition: fjcore.cc:3968
void reset_momentum(double px, double py, double pz, double E)
Definition: fjcore.hh:803
virtual bool has_partner(const PseudoJet &reference, PseudoJet &partner) const
Definition: fjcore.cc:4127
double _px
Definition: fjcore.hh:714
double py() const
Definition: fjcore.hh:547
double cos_theta() const
Definition: fjcore.hh:580
int _user_index
Definition: fjcore.hh:717
double mperp2() const
Definition: fjcore.hh:572
virtual const ClusterSequence * validated_cs() const
Definition: fjcore.cc:4124
virtual bool has_parents(const PseudoJet &reference, PseudoJet &parent1, PseudoJet &parent2) const
Definition: fjcore.cc:4133
FJCORE_BEGIN_NAMESPACE const double pi
Definition: fjcore.hh:191
double _rap
Definition: fjcore.hh:715
bool has_valid_cluster_sequence() const
Definition: fjcore.cc:3975
double phi_02pi() const
Definition: fjcore.hh:553
SharedPtr< UserInfoBase > _user_info
Definition: fjcore.hh:712
double perp() const
Definition: fjcore.hh:567
double plain_distance(const PseudoJet &other) const
Definition: fjcore.cc:3951
void _ensure_valid_rap_phi() const
Definition: fjcore.hh:720
virtual double exclusive_subdmerge_max(const PseudoJet &reference, int nsub) const
Definition: fjcore.cc:4154
virtual bool object_in_jet(const PseudoJet &reference, const PseudoJet &jet) const
Definition: fjcore.cc:4136
const double pseudojet_invalid_phi
Definition: fjcore.hh:533
virtual std::string description() const
Definition: fjcore.hh:500
double phi() const
Definition: fjcore.hh:549
double _kt2
Definition: fjcore.hh:716
virtual const ClusterSequence * associated_cluster_sequence() const
Definition: fjcore.cc:4121
virtual std::vector< PseudoJet > pieces(const PseudoJet &) const
Definition: fjcore.cc:4157
const ClusterSequence * validated_cs() const
Definition: fjcore.cc:3978
@ SIZE
Definition: fjcore.hh:596
void set_user_index(const int index)
Definition: fjcore.hh:631
double pseudorapidity() const
Definition: fjcore.cc:3802
@ X
Definition: fjcore.hh:596
double modp2() const
Definition: fjcore.hh:576
double pz() const
Definition: fjcore.hh:548
void _reset_indices()
Definition: fjcore.hh:785
virtual double exclusive_subdmerge(const PseudoJet &reference, int nsub) const
Definition: fjcore.cc:4151
double _py
Definition: fjcore.hh:714
double e() const
Definition: fjcore.hh:545
virtual std::vector< PseudoJet > constituents(const PseudoJet &reference) const
Definition: fjcore.cc:4139
SharedPtr< PseudoJetStructureBase > _structure
Definition: fjcore.hh:711
double px() const
Definition: fjcore.hh:546
virtual bool has_valid_cluster_sequence() const
Definition: fjcore.hh:503
double rap() const
Definition: fjcore.hh:557
const double pseudojet_invalid_rap
Definition: fjcore.hh:534
double _phi
Definition: fjcore.hh:715
@ Y
Definition: fjcore.hh:596
T * get() const
Definition: fjcore.hh:342
void set_cached_rap_phi(double rap, double phi)
Definition: fjcore.cc:3915
virtual int n_exclusive_subjets(const PseudoJet &reference, const double &dcut) const
Definition: fjcore.cc:4145
const PseudoJetStructureBase * validated_structure_ptr() const
Definition: fjcore.cc:3993
virtual bool has_child(const PseudoJet &reference, PseudoJet &child) const
Definition: fjcore.cc:4130
double squared_distance(const PseudoJet &other) const
Definition: fjcore.hh:588
Definition: fjcore.hh:535
double m() const
Definition: fjcore.hh:791
virtual std::vector< PseudoJet > exclusive_subjets(const PseudoJet &reference, const double &dcut) const
Definition: fjcore.cc:4142
int _cluster_hist_index
Definition: fjcore.hh:717
double E() const
Definition: fjcore.hh:544
@ Z
Definition: fjcore.hh:596
Definition: fjcore.hh:462
void reset()
Definition: fjcore.hh:308
double m2() const
Definition: fjcore.hh:570
double _pz
Definition: fjcore.hh:714
const double twopi
Definition: fjcore.hh:192
virtual bool has_pieces(const PseudoJet &) const
Definition: fjcore.hh:517
@ NUM_COORDINATES
Definition: fjcore.hh:596
void _finish_init()
Definition: fjcore.cc:3754
@ T
Definition: fjcore.hh:596
virtual bool has_exclusive_subjets() const
Definition: fjcore.hh:511
void reset(double px, double py, double pz, double E)
Definition: fjcore.hh:795
double theta() const
Definition: fjcore.hh:583
virtual bool has_constituents() const
Definition: fjcore.hh:509
void reset_momentum_PtYPhiM(double pt, double y, double phi, double m=0.0)
Definition: fjcore.cc:3920
virtual std::vector< PseudoJet > exclusive_subjets_up_to(const PseudoJet &reference, int nsub) const
Definition: fjcore.cc:4148
const ClusterSequence * associated_cluster_sequence() const
Definition: fjcore.cc:3971
std::vector< PseudoJet > exclusive_subjets_up_to(int nsub) const
Definition: fjcore.cc:4031
double _E
Definition: fjcore.hh:714