-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Event library interface #103
Conversation
…myPXSec to return nonzero values).
…to hack things. The physics is of course wrong.
…ct lepton universality in NC interactions, and fix a couple of bugs with the lepton flavour in those same interactions.
I tested the code. There is still come problem with the definition of daughter/mother relations |
Can you be more specific? |
This is a snippet from one event. I don't know how it could be that the muon is coming out of a neutron. But I'm writing here to keep track of things, it's not necessary something you have to fix. |
Am I misreading that? Doesn't it say the mother index is zero, ie the neutrino? |
yes, it says that and the daughter of the neutron is the muon as well. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There a few major mistakes that makes the whole point of this library not even useful. I'll work on the fixes
config/EventGenerator.xml
Outdated
--> | ||
<param_set name="EventLibraryInterface"> | ||
<param type="string" name="VldContext"> </param> | ||
<param type="int" name="NModules"> 1 </param> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need a dedicated inital state appender or the flux driver will never work properly
@@ -80,6 +80,7 @@ class ProcessInfo : public TObject { | |||
bool IsWeakNC (void) const; | |||
bool IsWeakMix (void) const; | |||
bool IsDarkMatter (void) const; | |||
bool IsExternalGen (void) const; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll try to find a way to not mix physics and framework.
@@ -51,7 +51,8 @@ typedef enum EScatteringType { | |||
kScIMDAnnihilation, | |||
kScDarkMatterElastic = 101, | |||
kScDarkMatterDeepInelastic, | |||
kScDarkMatterElectron | |||
kScDarkMatterElectron, | |||
kScExternalGen = 900 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
probably it is better to define this negative as it's not physics
const int lastHad = (rec->parts.size() == nLep) ? -1 : 1+rec->parts.size(); | ||
|
||
// Neutrino is a parent to the lepton(s) | ||
event->AddParticle(init_state.ProbePdg(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we do this, we destroy the whole point of this exercise because we bypass the flux drivers that specifies the direction
0, 0, 0, PDGLibrary::Instance()->Find(tgt_pdgc)->Mass(), | ||
0, 0, 0, 0); | ||
|
||
// Include nuclear target in this position (2) by convention |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not always the case, it should be dropped and it certainly it is not supposed to be taken from the Summary at this stage
if(up.Dot(z) == 0) up = TVector3(1, 0, 0); | ||
|
||
const TVector3 x = up.Cross(z).Unit(); // Perpendicular to neutrino and up | ||
const TVector3 y = x.Cross(z).Unit(); // Defines the third axis |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should be -y
Merged manually |
for review meeting Thurs 7 May