Developing #146
Developing #134: Симуляция эксперимента - первое приближение
Developing #162: Фукнционал телескопа Т1
Поиск трека в квадратном телескопе QTelescope
Status: | Закрыта | Start date: | 02/26/2018 | |
---|---|---|---|---|
Priority: | Нормальный | Due date: | 03/04/2018 | |
Assignee: | Mikhail Kozlov | % Done: | 100% | |
Category: | - | |||
Target version: | - |
Description
Нужно сделать класс ERQTelescopeTrackFinder. Который востанавливает трек на QTelescope.
Трек его состоит из точки на мишени: она либо есть в дереве благодаря BeamDet. Либо пользователь задает ее из макроса.
так же в трек входят точки, которые следуют из зажженных стрипов на самом QTelescope. Тут два варианта: либо у тебя есть двухстронняя станция. Либо у тебя есть две станции: одна X, другая Y и точка собирается по показаниям обоих.
То есть в интерфейсе класса должен быть метод указывающий какая станция умеет возвращать точку, либо какая пара станций умеет возвращать точку.
SetHitStation(stationID)
SetHitStation(stationID, stationID2)
Поэтому нужно сделать следующее:
1) понять что за станции работают на нахождение точки. Пусть пока есть только двусторонние.
2) Найти координату на телескопе в локальной СК станции
3) перевести координату глобольную ск
Фактически ERQTelescopeTrack будет содержать две точки. Мишень и точку на сработавшей станции.
Для того, что бы телескоп "вернул точку" необходимо выполнить
какие-то действия над результатом дижитизации. Причем эти действия формируются пользователем
по результатам анализа дижитизированных или калиброванных данных в интерактивной сессии.
Точку могут сформировать стрипы прошедшие отбор по следующим критериям, которые являются интерфейсами данного класса:
1) отбираются стрипы, у которых едепы попадают в заданный диапазон
2) разница едеп между X и Y не превосходит заданной величины
3) временные отметки всех использованных сигналов совпадают в пределах заданной ошибки
4) критерий идентификации DeltaE-E. Этот критерий реализовать сложнее всего. И я пока предлагаю отложить его. Возможно даже увести в этап анализа.
Треков может получиться несколько. Каждый из них идет в следующий этап реконструкции
Результат:
Точка попадения в детектор реконструируется согласно ожиданию. Симмуляция проводилась с помощью макроса в прикрепленном файле в ветке "dev"
commit 1dd63218bf1d8f45e4c40de2a11f51551da20c57
Merge: 57a4593 743bfd0
Author: Mikhail Kozlov
Date: Tue Mar 6 20:20:44 2018 +0300
С помощью прикрленного макроса для просмотра видим:
Нам интересен последний столбец (картины 3 и 6). На верху видим из номеров стрипов реконструированные точки попадения в детектор, внизу точкы полученные в симмуляции. Пучок вылетал из точки (5, 2, 2) под углом градусов. Телескоп состоял из одного тонкого и одного толстого слоя кремния и был помещен в точке (5, 2, 10). Картинка прекрасная, варирование параметров пучка дает ожидаемые результаты.
Известные проблемы:
- Если не включены задачи ERBeamDetDigitizer и ERBeamDetTrackFinder поиск трэка не работает.
- Нет возможности отключить первый слой телескопа, чтобы избежать от рассеяния в тонкой платине кремня - мелочь.
- Реконструкция не чувствительна на множественность. Был один расчет, который не удается повторить, где тяжелая частица пролетела в плоскости пластины через несколько стрипов (в ветке point был виден прекрасный намек на пик Брэгга). В реконструкции естественно засветилось много стрипов с обоих сторон и получилась матрица возможных позицией. Поскольку энерговыделение было большое, не удалось отсечь событие по порогам реконструкции. С этим пока можно легко жить.
History
#1 Updated by Vitaliy Schetinin almost 7 years ago
- Related to Developing #138: Проверка работы реконструкции телескопа T1 added
#2 Updated by Vitaliy Schetinin almost 7 years ago
- Description updated (diff)
#3 Updated by Vratislav Chudoba almost 7 years ago
- Related to deleted (Developing #138: Проверка работы реконструкции телескопа T1)
#4 Updated by Vratislav Chudoba almost 7 years ago
- Parent task set to #134
#5 Updated by Mikhail Kozlov almost 7 years ago
Слил в dev поиск трека.
Для пунктов:
1) отбираются стрипы, у которых едепы попадают в заданный диапазон
2) разница едеп между X и Y не превосходит заданной величины
введены интерфейсы:
- qtelescopeTrackFinder->SetStripEdepRange(0., 100.); // [GeV]
- qtelescopeTrackFinder->SetEdepMaxDiffXY(0.5); // [GeV]
Для задания точки на мишени в отсутствие BeamDetTrack введен интерфейс qtelescopeTrackFinder->SetTargetPoint(0., 0., 0.).
При его ипользовании в наличие BeamDetTrack треки бимдет игнорируются.
#6 Updated by Vratislav Chudoba almost 7 years ago
- % Done changed from 0 to 50
Не может быть в задаче какая-нибудь проблема с памятью? Расчет сильно замедляется с ростущим номером события.
#7 Updated by Vratislav Chudoba almost 7 years ago
- File exp1803_sim_digi.C added
Позиция в телескопе восстанавливается странно. Пользуюсь пучком
generator->SetBoxXYZ(5, 0., 5.5, 1., 2.);
который летит строго вдоль оси Z и вижу следующую картину:
Макрос симмуляции прилагается. На третьей картинке статистика показывает 8670850 входов не смотря на то, что разыгривал всего лишь 100 событий.
#8 Updated by Vratislav Chudoba almost 7 years ago
- Priority changed from Низкий to Нормальный
- % Done changed from 50 to 80
Известные проблемы:
- Если не включены задачи ERBeamDetDigitizer и ERBeamDetTrackFinder поиск трэка не работает.
- Нет возможности отключить первый слой телескопа, чтобы избежать от рассеяния в тонкой платине кремня - мелочь.
#9 Updated by Vratislav Chudoba almost 7 years ago
- File exp1803_sim_digi_T1pos.C added
- File showT1Sim.C added
- Description updated (diff)
- Status changed from Открыта to Закрыта
- % Done changed from 80 to 100
#10 Updated by Vratislav Chudoba almost 7 years ago
- Description updated (diff)
- Parent task changed from #134 to #162