28 """Configuration for culling garbage peaks after merging footprints.
30 Peaks may also be culled after detection or during deblending; this configuration object
31 only deals with culling after merging Footprints.
33 These cuts are based on three quantities:
34 - nBands: the number of bands in which the peak was detected
35 - peakRank: the position of the peak within its family, sorted from brightest to faintest.
36 - peakRankNormalized: the peak rank divided by the total number of peaks in the family.
38 The formula that identifie peaks to cull is:
40 nBands < nBandsSufficient
41 AND (rank >= rankSufficient)
42 AND (rank >= rankConsider OR rank >= rankNormalizedConsider)
44 To disable peak culling, simply set nBandsSufficient=1.
46 nBandsSufficient = RangeField(dtype=int, default=2, min=1,
47 doc=
"Always keep peaks detected in this many bands")
48 rankSufficient = RangeField(dtype=int, default=20, min=1,
49 doc=
"Always keep this many peaks in each family")
50 rankConsidered = RangeField(dtype=int, default=30, min=1,
51 doc=(
"Keep peaks with less than this rank that also match the "
52 "rankNormalizedConsidered condition."))
53 rankNormalizedConsidered = RangeField(dtype=float, default=0.7, min=0.0,
54 doc=(
"Keep peaks with less than this normalized rank that"
55 " also match the rankConsidered condition."))