@@ -142,7 +142,8 @@ The method stops at the first jet satisfying the mass and distance thresholds.
142142# Returns:
143143- `PseudoJet`: The jet (or subjet) satisfying the mass drop conditions, if tagging is successful, otherwise a zero-momentum PseudoJet
144144"""
145- function mass_drop (jet:: PseudoJet , clusterseq:: ClusterSequence , tag:: MassDropTagger )
145+ function mass_drop (jet:: PseudoJet{T} , clusterseq:: ClusterSequence ,
146+ tag:: MassDropTagger ) where {T <: Real }
146147 all_jets = clusterseq. jets
147148 hist = clusterseq. history
148149
@@ -188,11 +189,11 @@ This function reclusters the jet and iteratively checks the soft-drop condition
188189# Returns:
189190- `PseudoJet`: Groomed jet or zero-momentum PseudoJet if grooming fails
190191"""
191- function soft_drop (jet:: PseudoJet , clusterseq:: ClusterSequence ,
192- tag:: SoftDropTagger )
192+ function soft_drop (jet:: PseudoJet{T} , clusterseq:: ClusterSequence ,
193+ tag:: SoftDropTagger ) where {T <: Real }
193194 rad = tag. cluster_rad
194195 new_clusterseq = recluster (jet, clusterseq; R = rad, algorithm = JetAlgorithm. CA)
195- new_jet = sort! (inclusive_jets (new_clusterseq; T = PseudoJet), by = pt2, rev = true )[1 ]
196+ new_jet = sort! (inclusive_jets (new_clusterseq; T = PseudoJet{T} ), by = pt2, rev = true )[1 ]
196197
197198 all_jets = new_clusterseq. jets
198199 hist = new_clusterseq. history
@@ -238,10 +239,12 @@ Filters a jet to retain only the hardest subjets based on a specified radius and
238239# Returns:
239240- `PseudoJet`: Filtered jet composed of the hardest subjets
240241"""
241- function jet_filtering (jet:: PseudoJet , clusterseq:: ClusterSequence , filter:: JetFilter )
242+ function jet_filtering (jet:: PseudoJet{T} , clusterseq:: ClusterSequence ,
243+ filter:: JetFilter ) where {T <: Real }
242244 rad = filter. filter_radius
243245 new_clusterseq = recluster (jet, clusterseq; R = rad, algorithm = JetAlgorithm. CA)
244- reclustered = sort! (inclusive_jets (new_clusterseq; T = PseudoJet), by = pt2, rev = true )
246+ reclustered = sort! (inclusive_jets (new_clusterseq; T = PseudoJet{T}), by = pt2,
247+ rev = true )
245248
246249 n = length (reclustered) <= filter. num_hardest_jets ? length (reclustered) :
247250 filter. num_hardest_jets
@@ -265,13 +268,15 @@ Trims a jet by removing subjets with transverse momentum below a specified fract
265268# Returns:
266269- `PseudoJet`: Trimmed jet composed of retained subjets
267270"""
268- function jet_trimming (jet:: PseudoJet , clusterseq:: ClusterSequence , trim:: JetTrim )
271+ function jet_trimming (jet:: PseudoJet{T} , clusterseq:: ClusterSequence ,
272+ trim:: JetTrim ) where {T <: Real }
269273 rad = trim. trim_radius
270274 alg = trim. recluster_method
271275 frac2 = trim. trim_fraction^ 2
272276
273277 new_clusterseq = recluster (jet, clusterseq; R = rad, algorithm = alg)
274- reclustered = sort! (inclusive_jets (new_clusterseq; T = PseudoJet), by = pt2, rev = true )
278+ reclustered = sort! (inclusive_jets (new_clusterseq; T = PseudoJet{T}), by = pt2,
279+ rev = true )
275280
276281 hard = Vector {PseudoJet} (undef, 0 )
277282 for item in reclustered
0 commit comments