Event filter for (a combination of) arbitrary event generators [message #15933] |
Sun, 09 March 2014 12:11 |
MartinJGaluska
Messages: 203 Registered: March 2010 Location: Germany
|
first-grade participant |
From: *pools.arcor-ip.net
|
|
Dear all,
I am proud to announce that Katja Kleeberg and myself have ported and extended the event filter which I originally implemented for PndDpmDirect to FairPrimaryGenerator. FairPrimaryGenerator can now deal with event filters in a similar way as it handles event generators.
I also came up with a new concept for event filtering in FairRoot which I will present in the computing session of the next PANDA CM.
For the new event filter capabilities we implemented a virtual base class FairEvtFilter. As a ready to use filter we derived FairEvtFilterOnCounts from it. The code structure will be presented in the computing session of the next PANDA CM in more detail.
Toggle Spoiler
The information in this box is outdated, see newer posts for relevant information!
A warning: The code is not yet ready for production as it has NOT been tested extensively so far and some functionality is still missing. We will have to introduce some changes to the code like moving functionality from FairEvtFilterOnCounts to the base class FairEvtFilter. However, if you are in desperate need for such filter capabilities, the code is accessible here (please report errors):
https://subversion.gsi.de/trac/fairroot/browser/pandaroot/development/mg aluska/eventFilter
You have to replace / add the corresponding files in the $VMCWORKDIR/base and $VMCWORKDIR/base/sim and recompile.
[Updated on: Sun, 25 May 2014 09:23] Report message to a moderator
|
|
|
Re: Event filter for (a combination of) arbitrary event generators [message #16356 is a reply to message #15933] |
Thu, 17 April 2014 15:52 |
MartinJGaluska
Messages: 203 Registered: March 2010 Location: Germany
|
first-grade participant |
From: *physik.uni-giessen.de
|
|
Hello all,
I have just uploaded the latest version of the event filter to my development branch. It is a major revision. Note that it is not yet a "final" version as Katja and I still need to test and verify the code. However, the latest version contains all the functionality that we have planned for the final event filter.
Feel free to try it and please report bugs when you find them.
Added functionalities:
- dedicated veto filters (if the event matches any of the veto filters, it will be rejected)
- NOT, AND and OR are available for logical connections between multiple regular (non-veto) filters
- vertex, angles and momentum constraints added
- automated quality assurance prepared
- code restructured for easier maintainance
- filter statistics are written to root file (in folder FairEvtFilter)
I believe it is now time to discuss how to make use of the event filter in the Fast Simulation for the scrutiny process simulations and how to finally integrate the changes into the main FairRoot.
I would suggest for now to rename the changed FairRoot files and upload them into the scrut14/pgenerators folder of trunk. We can use the renamed files in our standard macros for the Fast Simulation instead of the original FairRoot ones until the changes are included in the FairRoot classes. What do you think?
Kind regards,
Martin
[Updated on: Thu, 17 April 2014 15:57] Report message to a moderator
|
|
|
|
Re: Event filter for (a combination of) arbitrary event generators [message #16710 is a reply to message #16410] |
Sun, 25 May 2014 09:14 |
MartinJGaluska
Messages: 203 Registered: March 2010 Location: Germany
|
first-grade participant |
From: *pools.arcor-ip.net
|
|
Hello all,
the event filter is available to be used and it is compiled by default in trunk. The necessary code is located in trunk/pgenerators/eventFilter.
While we are waiting for Katja to write a tutorial which will be located here:
https://panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRootEventFilte rTutorial
I have uploaded two example macros in the folder trunk/macros/eventFilter in which the usage of the filter is demonstrated.
I would like to ask all interested people to try the event filter and send me bug reports. Once it has been tested by the community it will also be included in the scrut release. The more people use the filter the sooner this can happen.
As some of you know the code has been ready and working for several weeks now. However, I had to change the event filter code, because it was decided that the changes to the external packages should be as minimal as possible. In the end I only needed to add one method to FairGenericStack.
While doing the necessary changes, I added a filter on invariant masses of up to 5 particles due to popular demand. Note that this is a PandaRoot specific capability as it uses the Rho package. PndEvtFilter adds the PandaRoot specific code to FairEvtFilter. As a nice side effect of the implementation you can now easily write your own event filter which does exactly what you need by deriving from PndEvtFilter and using my custom FillList implementation. After that, you can use the tools you are familiar with from analysis to decide whether the event matches or not.
Kind regards,
Martin
[Updated on: Sun, 25 May 2014 09:30] Report message to a moderator
|
|
|