forked from iLCSoft/DDMarlinPandora
-
Notifications
You must be signed in to change notification settings - Fork 6
/
ChangeLog.txt
330 lines (270 loc) · 20.4 KB
/
ChangeLog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
DDMarlinPandora: Development package to integrate with DD4hep
--------
| v00-05 |
--------
A.Sailer
* DDMarlinPandora::CaloHitCreator:
Get normal vector from DD4hep::DetElement instead of using assumptions
about calorimeter construction to calculate phi, which are no longer true
Add options to set local NormalVector for ecal, hcal, and muon barrels
in case they are not build with layers increasing along the z-axis
ECalBarrelNormalVector
HCalBarrelNormalVector
YokeBarrelNormalVector
All three are three vectors
Correct and simplify calculation of NormalVector for cylindrical barrel
calorimeters
* Fix many compiler warnings
--------
| v00-04 |
--------
...
--------
| v00-03 |
--------
N. Nikiforou 06/04/2016
- Merged changes from MarlinPandora/TrackCreator (committed by Bono on Feb 24 wit git commit 0917739) to DDTrackCreatorILD
- Merged changes from MarlinPandora/CaloHitCreator (committed by Bono on Mar 30 wit git commit 6b381cf) to DDCaloHitCreator
-Note: commits in MarlinPandora in-between the two revisions npted above have been reverted in the last commit
N. Nikiforou 19/02/2016
- Merged changes from ILDCaloDigi (MarlinReco rev. 5432) into DDCaloDigi.
It incorporates changes to ILDCaloDigy by Daniel. The introduction of
parameters for the cell encoding fiels was not merged, since lcio files
produced with DDSim will have the standard conventions defined in
the calorimeter segmentations
- Implemented access of subdetectors by DetType flags instead of strings
- Elevated missing ECal parameters to ERROR
N. Nikiforou 17/02/2016
- Merged changes from MalrinPandora 02-02-00 up to today (7c88d10)
--------
| v00-02 |
--------
F.Gaede
- enforce unique selection in getExtension(include,exclude)
- throws exception if not unique
- bug fix: eCalBarrelExtension -> eCalEndcapExtension
for setting m_eCalEndCapInnerZ
- added DetType::FORWARD to excludeFlags for main calorimeters
- added DetType::AUXILIARY to excludeFlag for LCal ( exclude BeamCal )
- DDTrackCreatorILD.cc :
- added dd4hep units to parameters extracted from DD4hep
- protect against poor tracks ( ndf <0 or missing/poor parameters)
- added debug printout for track selection
N.Nikiforou 12/02/2016:
- Changed handling of Coil parameters: now the info is accessed from LayeredCalorimeterData
extensions attached to the drivers (Solenoid for CLICdp, SCoil02 for ILD).
- Removed/commented out obsolete and unused auxilliary static functions
N.Nikiforou 11/02/2016 (pm):
- Major overhaul using the detector type flags throught the package. No more string processor parameters
to access detectors.
- Protected some more against uncaught exceptions, but still more work needed
- Added more static helper functions to access extensions by data type flags
N.Nikiforou 11/02/2016 (am):
- Modified DDTrackCreatorILD to use det type flags. Dropped tracker/vertex detector name parameters
- Modified DDTrackCreatorILD to actually access hits in fit (offset 2) which is the definition now.
N.Nikiforou 10/02/2016:
- Started using the new facility by DD4hep that allows the accessing of detectors based on their
detector type flags. For now, just DDTrackCreatorCLIC was modified. The Marlin Processor parameters
associated with the vertex and tracker will soon be removed.
N.Nikiforou 07/09/2015:
- Many changes that require full implemetation of DDRec structures for all subdetectors
- Introduced DDTrackCreatorBase class and derived implementation classes for ILD and CLIC
- Removed references to "TPC" from DDTrackCreatorBase::Settings. Whatever was a configuration parameter
has its relevant variable and Processor parameter names changed from "Tpc" to "BarrelTracker". Also,
moved any TPC geometry-related variables from DDTrackCreatorBase::Settings to DDTrackCreatorILD proper.
- Added Parameter for DDPandoraPFANewProcessor: TrackCreatorName to select the relevant implementation
of DDTrackCreatorBase for the detector model in use (Curretly ILD or CLIC). Still need to implement
a proper factory to select the proper algorithm.
N. Nikiforou
v00-01
- first version that 'runs' with CLIC_o2_v01 and ILD_o1_v05
******************** COPIED OVER FROM MARLINPANDORA REVISION 1934 *************************************************************************
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v02-00-00
--------------------------------------------------------------------------------------------------------------------------------------------
Update to reflect change to calo hit creation API.
Allow for names "layer" and "stave" in cellID encoding string.
--------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v01-00-01
--------------------------------------------------------------------------------------------------------------------------------------------
Improve specification of CMAKE_CXX_FLAGS.
Handle cases where c++11 is not available.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v01-00-00
--------------------------------------------------------------------------------------------------------------------------------------------
Milestone v01 release.
Update to reflect recent changes to PandoraSDK.
Improved const-correctness. Algorithms are now only exposed to pointers to const managed-objects. Access to managed-object non-const functionality is now only via Pandora APIs.
Use LCContentFast if c++11 is available: contains faster versions of algorithms in the LCContent library, using e.g. KD-trees and relying on c++11.
Corrected radiation length and nuclear interaction lengths specified for Pandora CaloHits and Pandora SubDetectors.
Restored PandoraSettingsBasic.xml to repository.
Added to list of cheated neutral hadrons in PandoraSettingsPerfectPhotonNeutronK0L.xml
Updated PandoraSettings readme.
CMakeLists overhaul.
--------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-15
--------------------------------------------------------------------------------------------------------------------------------------------
Update to reflect recent changes to PandoraSDK and LCContent.
Overhaul, with emphasis on ensuring that client applications can instantiate and use multiple concurrent pandora instances.
Address issues highlighted by Coverity.
Improved member variable initialization, with default constructors for settings and local algorithms.
Move some re-usable plugins from MarlinPandora into LCContent.
Update PandoraSettings files, adding new CaloHitPreparation algorithm, using new configuration for plugins and improving list management.
Add HCAL Ring geometry details (missing from gear file; ring is treated as an endcap, so symmetry order is not specified).
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-14
--------------------------------------------------------------------------------------------------------------------------------------------
Update to reflect changes to PandoraContentApi.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-13
--------------------------------------------------------------------------------------------------------------------------------------------
Update to reflect changes to PandoraSDK.
Config overhaul; add some new PandoraSettings files and update readme.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-12
--------------------------------------------------------------------------------------------------------------------------------------------
Add hadronic energy non-linearity correction function.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-11
--------------------------------------------------------------------------------------------------------------------------------------------
Protect against missing/unavailable TrackStates.
Add modifications to allow use of hybrid ScW/SiW and full ScW ECAL models.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-10
--------------------------------------------------------------------------------------------------------------------------------------------
RESTRUCTURING
CMake and Makefile changes following updated treatment of the libraries that constitute the PandoraPFANew package.
Recover daughter or sibling tracks if they are flagged as unable to form a pfo.
Copy track states from input lcio tracks.
Fix subdetector hit number encoding.
Write out track subset collections to investigate different track usage in pfa.
Updated TrackCreator class to work with either ILD00 or ILD01 geometry.
--------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------
GENERAL INFO:
Pandora consists of the PandoraSDK (Software Development Kit), which comprises a single library and header files with flexible APIs.
There is also an optional PandoraMonitoring library, which contains event display and tree/histogram-writing functionality.
The PandoraMonitoring library depends on the PandoraSDK and ROOT.
Pandora algorithms will necessarily depend upon the PandoraSDK (and also PandoraMonitoring, if desired).
The algorithms can be built as part of a Pandora client application, such as MarlinPandora, or the standalone TestPandora binary.
Algorithms declared to be suitably generic may be designed for use by multiple client applications.
Such re-usable algorithms are best bundled together into a Pandora "content" library.
Algorithms are always registered via the client application, using the PandoraAPIs, but the client app can link against as many content libraries as required.
--------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-09
--------------------------------------------------------------------------------------------------------------------------------------------
Update MarlinPandora configuration scripts.
Recover daughter or sibling tracks if they are flagged as unable to form a pfo.
Copy track states from input lcio tracks by default.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-08
--------------------------------------------------------------------------------------------------------------------------------------------
First working implementation of code to copy lcio trackstates to pandora input track states.
Add UseOldTrackStateCalculation xml key and set default value to 1.
Include UTIL/ILDConf.h header to allow proper access to number of track hits by subdetector.
Xml parser is now in pandora namespace.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-07
--------------------------------------------------------------------------------------------------------------------------------------------
Cosmetic changes and tidy-up of floating point accuracy issues in TrackCreator constructor.
Optionally read new FTDParameters.
Allow SET and/or ETD to be missing in detector description from GEAR.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-06
--------------------------------------------------------------------------------------------------------------------------------------------
Fixed problem where minimum number of ftd hits obtained from xml steering file was assigned to wrong variable.
Updated to account for new monitoring location and added ability to link against PandoraMonitoring library.
Updated to use new pandora API for pfo extraction.
Updated to reflect recent changes to pandora APIs, including typedef changes and use of CaloHitLists, rather than OrderedCaloHitLists.
Removed PathLengthCalculator class, now unused (no longer need to specify path lengths from interaction point).
Added new PandoraSettings files following addition of new PhotonReconstruction algorithm to Pandora fine granularity content library.
Added xml files containing photon likelihood PDFs, for both one and nine bins of reconstructed cluster energy.
Updated PandoraSettings files to use new functionality of soft cluster merging and isolated hit merging algorithms.
Updated to handle "à la Videau" geometry more elegantly.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-05
--------------------------------------------------------------------------------------------------------------------------------------------
Added ability to read pandora recluster monitoring output, writing results to collections of lcio GenericObjects and lcio Relations.
Modifications for use with ILD SDHCal.
Updated to reflect changes to pandora::CartesianVector class.
Addressed issues raised by Coverity.
Updated PandoraSettings scripts to reflect recent algorithm changes.
Turned off DensityWeight and SurroundingEnergy calculations via PandoraSettings file.
Updated standalone Makefile: changed default compiler to g++ and added -O2 optimization flag.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-04
--------------------------------------------------------------------------------------------------------------------------------------------
Updated default path length to interaction length (and radiation length) conversion constants to CLIC_ILD_CDR values.
Updated CMake files to use new ILCUTIL package.
Updated CMake files to reflect restructuring of PandoraPFANew.
Updated standalone makefile to reflect restructuring of PandoraPFANew.
Made use of interfaces to pandora content libraries, allowing for quick registration of multiple algorithms and helper functions.
Added registration of FineGranularity PseudoLayerCalculator and ShowerProfileCalculator.
Changed references to "track state at ecal" to "track state at calorimeter".
Specified track (projected) time at calorimeter.
Used results of track fit to determine track direction in z.
Added new definition of reaches calorimeter for FTD tracks.
Allowed for different barrel/endcap ECalToHadGeV calibration constants.
Corrected cell unit vectors for HCal ring and other endcap-like detectors, located between the main barrels and endcaps.
Updated to reflect changes to GeometryHelper.
Made use of IsMirroredInZ subdetector parameter functionality.
Updated pandorasettings, adding new (and renaming existing) entries for particle id and energy correction functions.
Updated pandorasettings clustering parameters, specifying parameters for regions of fine or coarse granularity.
Updated steering file scripts to specify separate ECalToHadGeV calibration constants for barrel and endcap.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-03
--------------------------------------------------------------------------------------------------------------------------------------------
Updated path length to interaction length (and radiation length) conversion constants. Default values are for CLIC_ILD_01.
Added new approach to calculating path lengths through ILD-like subdetectors.
Updated to specify new api parameters, required in order to help remove geometry dependence from pandora algorithms.
Removed outdated geometry parameters.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG LCD_WG2_VALIDATION_4
--------------------------------------------------------------------------------------------------------------------------------------------
Deal with yoke plug hits and also hits that have zero absorber thickness.
Updated to reflect namespace changes to pandora::StatusCode enum and pandora::StatusCodeException class.
Added SimpleBFieldCalculator class and chose to use HighGranularityPseudoLayerCalculator class provided with PandoraPFANew library.
Updated PandoraSettings files to reflect recent changes and provided file that uses separate muon reconstruction.
Provided a gnu makefile.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-02
--------------------------------------------------------------------------------------------------------------------------------------------
Correct layer absorber thickness calculation.
Switch order of calls to register user content and create geometry.
Set BUILD_32BIT_COMPATIBLE to OFF by default.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG LCD_WG2_VALIDATION_3
--------------------------------------------------------------------------------------------------------------------------------------------
Reorganized and restructured all creator classes.
Improved exception handling.
Specify mc particle vertex and endpoint properties.
Added ability to calculate number of interaction lengths from IP to calorimeter cells.
Added detector gap treatment for ILD-based detectors.
Added track quality cut on fraction of expected TPC hits.
Added track quality cut on fractional momentum error.
Removed track start and end helix fits; MarlinUtil classes (ClusterShapes and HelixClass) were providing unreliable track state information.
Added ExternalClusteringAlgorithm, to recreate any lcio cluster collection in the pandora framework.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG LCD_WG2_VALIDATION_2
--------------------------------------------------------------------------------------------------------------------------------------------
Corrected HCal barrel normal vectors.
Allowed non-digital treatment of muon hits - default behaviour is backward compatible.
Corrected use of Kink/Prong/Split/V0 track particle identification.
Added V0 track particle identification.
Added check on expected number of track hits.
Set default value for minimum number of track hits to 4.
Set default minimum number of FTD hits (for forward tracks) to 4.
Protected against invalid/inconsistent tracking geometry information.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG LCD_WG2_VALIDATION
--------------------------------------------------------------------------------------------------------------------------------------------
Added calo hit parameter: nInteractionLengthsFromIp.
Updated to reflect Pandora header file reorganization.
New treatment of tracks with FTD, ETD and SET hits to determine whether such tracks reach the ECal surface.
--------------------------------------------------------------------------------------------------------------------------------------------
TAG v00-01
--------------------------------------------------------------------------------------------------------------------------------------------