Feature #12862
Updated by Pavel Belecky 10 months ago
Задача: подобрать такие параметры создания seed-ов, чтобы * повысить эффективность seeding-а (приоритетное требование); * понизить долю дубликатов seeding-а. Объяснение требований: * в В идеале повысить эффективность означает, что для каждого реального трека существует ≥ 1 seed-а; * понижение Понижение доли дубликатов, означает, что для каждого реального трека существует чем меньше seed-ов, тем лучше. Но при этом > 0. <!-- улучшить эффективность seeding-а, т.е. увеличить покрытие реальных треков seed-ами. --> Накладываемые ограничения: * Z координата вершины столкновения принимается равной 0 (это уже фиксировано в приведенном ниже root-файле и больше нигде не используется); * ведется Ведется поиск первичных треков. <!-- При этом нужно чтобы доля дубликатов была минимальна, т.е. для каждого реального трека чем меньше найдено seed-ов, тем лучше (но при этом > 0). --> <!-- Т.е. для каждого реального трека нужно чтобы был хотя бы один seed и количество seed-ов для этого реального трека было минимальным --> <!-- Для решения этой задачи надо найти значения параметров, которые описаны ниже. --> root-файл для тестирования: * вкладка Файлы->ROOT files->evetest_1000ev.root_withlogs.tar https://forge.ispras.ru/attachments/11956 Параметры, которые надо подобрать (файл MpdTpcConfig.h): <!-- упорядочены по степени важности на мой взгляд --> * CotThetaMax — котангенс максимального угла theta; <pre> где theta - угол наклона (трека) к оси Z. на текущий момент этот параметр рассчитывается автоматически в файле MpdTpcConfig.cxx в зависимости от максимального значения псевдобыстроты EtaMax: расширяем значение etaMax: etaMaxWithMargin = 1.3 * EtaMax; CotThetaMax вычисляется по определению псевдобыстроты eta CotThetaMax = 0.5 * (exp(etaMaxWithMargin) - exp(-etaMaxWithMargin)); </pre> * SeedBinSizeR — размер bin-а для R. У точки (space point), входящей в seed, измерение по R огрубляется до соответствующего ей bin-а. <pre> сейчас = 10._mm </pre> * SeedDeltaRmin — минимальное расстояние по R между любыми точками в seed-е; <pre> сейчас = 10._mm </pre> * SeedDeltaRmax — максимальное расстояние по R между любыми точками в seed-е; <pre> сейчас = 60._mm </pre> * SeedDeltaZmax — максимальное расстояние по Z между любыми точками в seed-е; <pre> сейчас = 20._cm </pre> * MaxSeedsPerSpM — максимальное количество seed-ов, проходящих через одну точку (SpM — space point middle) <pre> сейчас = 3 </pre> * SigmaScattering — параметр, влияющий на допустимую величину угла между двумя половинками одного seed-а <pre> сейчас = 5 </pre> * MaxPtScattering — параметр, влияющий на допустимую величину угла между двумя половинками одного seed-а <pre> сейчас = 5._GeV; </pre> * RadLengthPerSeed — параметр, влияющий на допустимую величину угла между двумя половинками одного seed-а. В коде помечен как <code>OK</code> <pre> сейчас = 0.05; // OK </pre> * SeedPtMin — минимальное значение поперечного импульса. Влияет на минимальный допустимый радиус кривизны трека. <pre> сейчас = PtMin, где PtMin = 0._GeV </pre> * ImpactMax — максимальное значение impact parameter. Impact parameter — это расстояние между рассеивающим силовым центром и линией первоначального движения рассеивающейся частицы. <pre> сейчас = 3._mm </pre> Как осуществлять перебор: * для параметров задать минимальное и максимальное значение, и идти с шагом по решетке; * оптимизатор черного ящика; * эволюционная оптимизация; * байесовская оптимизация. <!-- 333 aa — is bbb -->