Skip to content

Commit

Permalink
Formatting changes
Browse files Browse the repository at this point in the history
  • Loading branch information
jsamudio committed Apr 10, 2024
1 parent 8f5cee3 commit cee5119
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 49 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -198,44 +198,44 @@ void LegacyPFClusterProducer::produce(edm::Event& event, const edm::EventSetup&
auto const& pfRecHitFractionSoA = event.get(pfRecHitFractionSoAToken_).const_view();

int nRH = 0;
if (pfRecHits->metadata().size() != 0)
nRH = pfRecHits.view().size();
if (pfRecHits->metadata().size() != 0)
nRH = pfRecHits.view().size();
reco::PFClusterCollection out;
out.reserve(nRH);

auto const rechitsHandle = event.getHandle(recHitsLabel_);

if (nRH != 0) {
// Build PFClusters in legacy format
std::vector<int> nTopoSeeds(nRH, 0);
// Build PFClusters in legacy format
std::vector<int> nTopoSeeds(nRH, 0);

for (int i = 0; i < pfClusterSoA.nSeeds(); i++) {
nTopoSeeds[pfClusterSoA[i].topoId()]++;
}
for (int i = 0; i < pfClusterSoA.nSeeds(); i++) {
nTopoSeeds[pfClusterSoA[i].topoId()]++;
}

// Looping over SoA PFClusters to produce legacy PFCluster collection
for (int i = 0; i < pfClusterSoA.nSeeds(); i++) {
unsigned int n = pfClusterSoA[i].seedRHIdx();
reco::PFCluster temp;
temp.setSeed((*rechitsHandle)[n].detId()); // Pulling the detId of this PFRecHit from the legacy format input
int offset = pfClusterSoA[i].rhfracOffset();
for (int k = offset; k < (offset + pfClusterSoA[i].rhfracSize()) && k >= 0;
k++) { // Looping over PFRecHits in the same topo cluster
if (pfRecHitFractionSoA[k].pfrhIdx() < nRH && pfRecHitFractionSoA[k].pfrhIdx() > -1 &&
pfRecHitFractionSoA[k].frac() > 0.0) {
const reco::PFRecHitRef& refhit = reco::PFRecHitRef(rechitsHandle, pfRecHitFractionSoA[k].pfrhIdx());
temp.addRecHitFraction(reco::PFRecHitFraction(refhit, pfRecHitFractionSoA[k].frac()));
}
// Looping over SoA PFClusters to produce legacy PFCluster collection
for (int i = 0; i < pfClusterSoA.nSeeds(); i++) {
unsigned int n = pfClusterSoA[i].seedRHIdx();
reco::PFCluster temp;
temp.setSeed((*rechitsHandle)[n].detId()); // Pulling the detId of this PFRecHit from the legacy format input
int offset = pfClusterSoA[i].rhfracOffset();
for (int k = offset; k < (offset + pfClusterSoA[i].rhfracSize()) && k >= 0;
k++) { // Looping over PFRecHits in the same topo cluster
if (pfRecHitFractionSoA[k].pfrhIdx() < nRH && pfRecHitFractionSoA[k].pfrhIdx() > -1 &&
pfRecHitFractionSoA[k].frac() > 0.0) {
const reco::PFRecHitRef& refhit = reco::PFRecHitRef(rechitsHandle, pfRecHitFractionSoA[k].pfrhIdx());
temp.addRecHitFraction(reco::PFRecHitFraction(refhit, pfRecHitFractionSoA[k].frac()));
}
}

// Now PFRecHitFraction of this PFCluster is set. Now compute calculateAndSetPosition (energy, position etc)
if (nTopoSeeds[pfClusterSoA[i].topoId()] == 1 && allCellsPositionCalc_) {
allCellsPositionCalc_->calculateAndSetPosition(temp, paramPF);
} else {
positionCalc_->calculateAndSetPosition(temp, paramPF);
}
out.emplace_back(std::move(temp));
// Now PFRecHitFraction of this PFCluster is set. Now compute calculateAndSetPosition (energy, position etc)
if (nTopoSeeds[pfClusterSoA[i].topoId()] == 1 && allCellsPositionCalc_) {
allCellsPositionCalc_->calculateAndSetPosition(temp, paramPF);
} else {
positionCalc_->calculateAndSetPosition(temp, paramPF);
}
out.emplace_back(std::move(temp));
}
}

event.emplace(legacyPfClustersToken_, std::move(out));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,14 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE {

if (nRH != 0) {
PFClusterProducerKernel kernel(event.queue(), pfRecHits);
kernel.execute(
event.queue(), params, topology, pfClusteringVars, pfClusteringEdgeVars, pfRecHits, pfClusters, pfrhFractions);
kernel.execute(event.queue(),
params,
topology,
pfClusteringVars,
pfClusteringEdgeVars,
pfRecHits,
pfClusters,
pfrhFractions);
}

if (synchronise_)
Expand Down
34 changes: 17 additions & 17 deletions RecoParticleFlow/PFRecHitProducer/plugins/LegacyPFRecHitProducer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -55,27 +55,27 @@ void LegacyPFRecHitProducer::produce(edm::Event& event, const edm::EventSetup& s

reco::PFRecHitCollection out;
int reserveSize = 0;
if (alpakaPfRecHits.metadata().size() != 0)
reserveSize = alpakaPfRecHits.size();
if (alpakaPfRecHits.metadata().size() != 0)
reserveSize = alpakaPfRecHits.size();
out.reserve(reserveSize);

if (alpakaPfRecHits.metadata().size() != 0) {
for (size_t i = 0; i < alpakaPfRecHits.size(); i++) {
reco::PFRecHit& pfrh =
out.emplace_back(caloGeo_.at(alpakaPfRecHits[i].layer())->getGeometry(alpakaPfRecHits[i].detId()),
alpakaPfRecHits[i].detId(),
alpakaPfRecHits[i].layer(),
alpakaPfRecHits[i].energy());
pfrh.setTime(alpakaPfRecHits[i].time());
pfrh.setDepth(alpakaPfRecHits[i].depth());
for (size_t i = 0; i < alpakaPfRecHits.size(); i++) {
reco::PFRecHit& pfrh =
out.emplace_back(caloGeo_.at(alpakaPfRecHits[i].layer())->getGeometry(alpakaPfRecHits[i].detId()),
alpakaPfRecHits[i].detId(),
alpakaPfRecHits[i].layer(),
alpakaPfRecHits[i].energy());
pfrh.setTime(alpakaPfRecHits[i].time());
pfrh.setDepth(alpakaPfRecHits[i].depth());

// order in Alpaka: N, S, E, W,NE,SW,SE,NW
const short eta[8] = {0, 0, 1, -1, 1, -1, 1, -1};
const short phi[8] = {1, -1, 0, 0, 1, -1, -1, 1};
for (size_t k = 0; k < 8; k++)
if (alpakaPfRecHits[i].neighbours()(k) != -1)
pfrh.addNeighbour(eta[k], phi[k], 0, alpakaPfRecHits[i].neighbours()(k));
}
// order in Alpaka: N, S, E, W,NE,SW,SE,NW
const short eta[8] = {0, 0, 1, -1, 1, -1, 1, -1};
const short phi[8] = {1, -1, 0, 0, 1, -1, -1, 1};
for (size_t k = 0; k < 8; k++)
if (alpakaPfRecHits[i].neighbours()(k) != -1)
pfrh.addNeighbour(eta[k], phi[k], 0, alpakaPfRecHits[i].neighbours()(k));
}
}

event.emplace(legacyPfRecHitsToken_, out);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,12 @@ namespace ALPAKA_ACCELERATOR_NAMESPACE {
num_recHits += event.get(token.first)->metadata().size();

reco::PFRecHitDeviceCollection pfRecHits{(int)num_recHits, event.queue()};

if (pfRecHits->metadata().size() != 0) {
PFRecHitProducerKernel<CAL> kernel{event.queue(), num_recHits};
for (const auto& token : recHitsToken_)
kernel.processRecHits(event.queue(), event.get(token.first), setup.getData(token.second), topology, pfRecHits);
kernel.processRecHits(
event.queue(), event.get(token.first), setup.getData(token.second), topology, pfRecHits);
kernel.associateTopologyInfo(event.queue(), topology, pfRecHits);
}

Expand Down

0 comments on commit cee5119

Please sign in to comment.