48 auto&
input = iInput.at(
"input");
49 auto pfdata =
input.allocate<
float>();
50 auto& vpfdata = (*pfdata)[0];
52 auto& input_cat0 = iInput.at(
"input_cat0");
53 auto pfchg = input_cat0.allocate<
float>();
54 auto& vpfchg = (*pfchg)[0];
56 auto& input_cat1 = iInput.at(
"input_cat1");
57 auto pfpdgId = input_cat1.allocate<
float>();
58 auto& vpfpdgId = (*pfpdgId)[0];
60 auto& input_cat2 = iInput.at(
"input_cat2");
61 auto pffromPV = input_cat2.allocate<
float>();
62 auto& vpffromPV = (*pffromPV)[0];
65 for (
const auto&
pf : pfs) {
76 vpfdata.push_back(
pf.dxy());
77 vpfdata.push_back(
pf.dz());
78 vpfdata.push_back(
pf.eta());
79 vpfdata.push_back(
pf.mass());
81 vpfdata.push_back(
pf.puppiWeight());
89 vpffromPV.push_back(
pf.fromPV());
94 <<
"<DeepMETSonicProducer::acquire>:" << std::endl
95 <<
" The number of particles is equal to or exceeds the maximum considerable for DeepMET" << std::endl;
107 input.toServer(pfdata);
108 input_cat0.toServer(pfchg);
109 input_cat1.toServer(pfpdgId);
110 input_cat2.toServer(pffromPV);
const unsigned int max_n_pf_
static const std::unordered_map< int, int32_t > charge_embedding
static std::string const input
const bool ignore_leptons_
const edm::EDGetTokenT< std::vector< pat::PackedCandidate > > pf_token_
Abs< T >::type abs(const T &t)
static const std::unordered_map< int, int32_t > pdg_id_embedding
float scale_and_rm_outlier(float val, float scale)
Log< level::Warning, false > LogWarning
std::unique_ptr< TritonClient > client_