Skip to content
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

Selection framework lesson #71

Merged
merged 4 commits into from
Jun 1, 2015
Merged

Conversation

apuignav
Copy link
Contributor

Addresses #46.

@betatim
Copy link
Member

betatim commented May 29, 2015

(not read all of the content yet) Could this be a replacement for "General intro to stripping"? I have no good idea what you'd write there that isn't simply pages and pages of text. Maybe if we add a bit of "stripping" here and there in this it would make a much better topic?

@betatim
Copy link
Member

betatim commented May 29, 2015

Travis is unhappy, which PR do we have to merge first?

@apuignav
Copy link
Contributor Author

apuignav commented May 29, 2015 via email

The typical approach is to build the decay from the bottom up. Therefore, we need to

1. Get input pions and kaons and filter them according to our physics needs.
2. Combine a pion and a kaon to build a D0, filtering in the necessary physics quantities.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like the english "filtering in the necessary physics". How about "and applying selection cuts to the D0."

@apuignav
Copy link
Contributor Author

apuignav commented May 29, 2015 via email


To do that, we need to know a little bit more about how the LHCb analysis framework works.
As discussed in the [Gaudi introduction](01-davinci.html), `Gaudi` is based on the event-by-event sequential (chained) execution of algorithms wrapped in a `GaudiSequencer`, which takes care of handling the execution order such that processing stops when an algorithm is *not passed*.
However, it doesn't handle is the data dependencies between these algorithms nor gives easy access to the used algorithms.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"However, .. handle is the data" -> "It does not handle the data ..."

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"nor gives" -> "nor does it give"

@betatim
Copy link
Member

betatim commented May 29, 2015

Let's try and merge #57 first then.

For me the stripping is all about writing these selection sequences. Made even more complicated by adding all these dictionaries and stuff :-/ Afer reading it all I agree that we should keep it separate.

DaVinci().UserAlgorithms += [dstar_seq.sequence()]


# EOF
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To make this more consistent with (most) of the other files:

  1. Move all imports to the top of the file, combining all the imports from Configurables;
  2. All double quotes " to single ';
  3. Remove last three lines

Seeing a the cuts for the D0 CombineParticles are made as variables like d0_daughters, should the same be done for the D*+ CombineParticles?

Personally, I would not alias the Std* containers. I think it makes the Selection instantiations less obvious.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Double quotes cannot always be changed due to the use of ADMASS, the rest is changed.

I will keep the alias to the Std* containers to help with interchangeability with DataOnDemand.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aha OK.

@alexpearce
Copy link
Member

Sorry for all the comments! This is a very nice lesson, I like how each step progresses in to the next.

@apuignav
Copy link
Contributor Author

apuignav commented Jun 1, 2015

Thanks a lot! Changes have been implemented, as soon as #57 is merged I'll push.

betatim added a commit that referenced this pull request Jun 1, 2015
@betatim betatim merged commit 4857f1a into lhcb:master Jun 1, 2015
@betatim
Copy link
Member

betatim commented Jun 1, 2015

Thanks a lot for the reviewing and writing a nice topic.

🍰 for everyone!

@apuignav apuignav deleted the selection-framework branch June 1, 2015 09:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants