本文整理汇总了C++中Jet::size_comp方法的典型用法代码示例。如果您正苦于以下问题:C++ Jet::size_comp方法的具体用法?C++ Jet::size_comp怎么用?C++ Jet::size_comp使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Jet
的用法示例。
在下文中一共展示了Jet::size_comp方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: fillOutputNtuples
void JetEvaluator::fillOutputNtuples(PHCompositeNode *topNode) {
if (Verbosity() > 2) cout << "JetEvaluator::fillOutputNtuples() entered" << endl;
JetRecoEval* recoeval = _jetevalstack->get_reco_eval();
//JetTruthEval* trutheval = _jetevalstack->get_truth_eval();
//-------------------------
// fill the reco jet ntuple
//-------------------------
if (_do_recojet_eval) {
if (Verbosity() > 1) cout << "JetEvaluator::filling recojet ntuple..." << endl;
JetMap* recojets = findNode::getClass<JetMap>(topNode,_recojetname.c_str());
if (!recojets) {
cerr << PHWHERE << " ERROR: Can't find " << _recojetname << endl;
exit(-1);
}
// for every recojet
for (JetMap::Iter iter = recojets->begin();
iter != recojets->end();
++iter) {
Jet* recojet = iter->second;
Jet* truthjet = recoeval->max_truth_jet_by_energy(recojet);
float id = recojet->get_id();
float ncomp = recojet->size_comp();
float eta = recojet->get_eta();
float phi = recojet->get_phi();
float e = recojet->get_e();
float pt = recojet->get_pt();
float gid = NAN;
float gncomp = NAN;
float geta = NAN;
float gphi = NAN;
float ge = NAN;
float gpt = NAN;
float efromtruth = NAN;
if (truthjet) {
gid = truthjet->get_id();
gncomp = truthjet->size_comp();
geta = truthjet->get_eta();
gphi = truthjet->get_phi();
ge = truthjet->get_e();
gpt = truthjet->get_pt();
efromtruth = recoeval->get_energy_contribution(recojet,truthjet);
}
float recojet_data[14] = {(float) _ievent,
id,
ncomp,
eta,
phi,
e,
pt,
gid,
gncomp,
geta,
gphi,
ge,
gpt,
efromtruth
};
_ntp_recojet->Fill(recojet_data);
}
}
//-------------------------
// fill the truth jet ntuple
//-------------------------
if (_do_truthjet_eval) {
if (Verbosity() > 1) cout << "JetEvaluator::filling truthjet ntuple..." << endl;
JetMap* truthjets = findNode::getClass<JetMap>(topNode,_truthjetname.c_str());
if (!truthjets) {
cerr << PHWHERE << " ERROR: Can't find " << _truthjetname << endl;
exit(-1);
}
// for every truthjet
for (JetMap::Iter iter = truthjets->begin();
iter != truthjets->end();
++iter) {
Jet* truthjet = iter->second;
Jet* recojet = recoeval->best_jet_from(truthjet);
float gid = truthjet->get_id();
float gncomp = truthjet->size_comp();
float geta = truthjet->get_eta();
float gphi = truthjet->get_phi();
float ge = truthjet->get_e();
float gpt = truthjet->get_pt();
float id = NAN;
//.........这里部分代码省略.........
示例2: sqrt
int
LeptoquarksReco::AddJetInformation( type_map_tcan& tauCandidateMap, JetMap* recojets, type_map_cdata* map_calotower )
{
/* Loop over tau candidates */
for (type_map_tcan::iterator iter = tauCandidateMap.begin();
iter != tauCandidateMap.end();
++iter)
{
Jet* jetx = recojets->get( (iter->second)->get_property_uint( PidCandidate::jet_id ) );
/* calculate transverse mass of jet */
float jet_mtrans = sqrt( pow( jetx->get_mass(), 2 ) +
pow( jetx->get_pt(), 2 ) );
/* count jet ncomp above thresholds */
unsigned int jet_ncomp_above_0p1 = 0;
unsigned int jet_ncomp_above_1 = 0;
unsigned int jet_ncomp_above_10 = 0;
for (Jet::ConstIter jcompiter = jetx->begin_comp(); jcompiter != jetx->end_comp(); ++jcompiter)
{
RawTowerDefs::CalorimeterId calo_id = RawTowerDefs::NONE;
switch ( jcompiter->first )
{
case Jet::CEMC_TOWER:
calo_id = RawTowerDefs::CEMC;
break;
case Jet::HCALIN_TOWER:
calo_id = RawTowerDefs::HCALIN;
break;
case Jet::HCALOUT_TOWER:
calo_id = RawTowerDefs::HCALOUT;
break;
default:
break;
}
/* continue if no calorimeter id found */
if ( calo_id == RawTowerDefs::NONE )
continue;
/* get tower container from map, find tower in tower container, get tower energy */
float e_component = 0;
if ( map_calotower->find( calo_id ) != map_calotower->end() )
e_component = ( ( ( map_calotower->find( calo_id ) )->second ).first )->getTower( jcompiter->second )->get_energy();
/* check if energy is above threshold and count up matching counters accordingly */
if ( e_component > 0.1 )
jet_ncomp_above_0p1++;
if ( e_component > 1 )
jet_ncomp_above_1++;
if ( e_component > 10 )
jet_ncomp_above_10++;
}
/* set tau candidate jet properties */
(iter->second)->set_property( PidCandidate::jet_eta , jetx->get_eta() );
(iter->second)->set_property( PidCandidate::jet_phi , jetx->get_phi() );
(iter->second)->set_property( PidCandidate::jet_etotal , jetx->get_e() );
(iter->second)->set_property( PidCandidate::jet_etrans , jetx->get_et() );
(iter->second)->set_property( PidCandidate::jet_ptotal , jetx->get_p() );
(iter->second)->set_property( PidCandidate::jet_ptrans , jetx->get_pt() );
(iter->second)->set_property( PidCandidate::jet_minv , jetx->get_mass() );
(iter->second)->set_property( PidCandidate::jet_mtrans , jet_mtrans );
(iter->second)->set_property( PidCandidate::jet_ncomp , (uint)jetx->size_comp() );
(iter->second)->set_property( PidCandidate::jet_ncomp_above_0p1 , jet_ncomp_above_0p1 );
(iter->second)->set_property( PidCandidate::jet_ncomp_above_1 , jet_ncomp_above_1 );
(iter->second)->set_property( PidCandidate::jet_ncomp_above_10 , jet_ncomp_above_10 );
(iter->second)->set_property( PidCandidate::jet_ncomp_emcal , (uint)jetx->count_comp( Jet::CEMC_TOWER ) );
}
return 0;
}