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
Bin lookup in the JetCorrectorParameters class #17812
Bin lookup in the JetCorrectorParameters class #17812
Commits on Feb 15, 2017
-
The function in JetCorrectorParameters used to find the bin in mRecor…
…ds which holds the correct parameters was using a linear search through all of the possible bins. Not only that, but inside of that loop was an additional loop through all of the binned variables. This is a O(N^2) process. For one binned dimension this is fine and maybe even acceptable for two dimensions, but the slowdown was huge for three dimensions of binned variables. There is now a new way of searching for the right mRecords bin when there are three binned dimensions. This is a O(ln(n_d1)+ln(n_d2)+ln(n_d3)+2) process where n_di is the number of bins in each dimension. Dimensions d<3 must have overlapping bin boundaries (although they don't need the same exact number of bins). The last dimension (3) can have bin boundaries which aren't sharred among the (d1,d2) bins. In addition to this change there was a bug fix to how the code reads the upper and lower bounds of the binned dimensions.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for e9bbc1a - Browse repository at this point
Copy the full SHA e9bbc1aView commit details -
Check first and last bin boundaries and correct and off-by-one error.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for ef64cb1 - Browse repository at this point
Copy the full SHA ef64cb1View commit details -
Move the hashing functions to the Utilities file. Clean up the code a…
…nd remove extraneous comments.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for db531d0 - Browse repository at this point
Copy the full SHA db531d0View commit details -
Working copy with N=1-3 fast lookup algorithms.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for c13ff52 - Browse repository at this point
Copy the full SHA c13ff52View commit details -
Combine all of the binIndex functions into a single binIndexN member …
…function. Create a new helper class called JetCorrectorParametersHelper and put most of the new code in there. This version of the code will not compile due to a serialization error.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for db9017c - Browse repository at this point
Copy the full SHA db9017cView commit details -
Configuration menu - View commit details
-
Copy full SHA for cc49001 - Browse repository at this point
Copy the full SHA cc49001View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2fa44ef - Browse repository at this point
Copy the full SHA 2fa44efView commit details -
Configuration menu - View commit details
-
Copy full SHA for 920d17d - Browse repository at this point
Copy the full SHA 920d17dView commit details -
Remove explicit transient marker from JetCorrectorParametersHelper an…
…d remove an extraneous std::endl.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for 1b29764 - Browse repository at this point
Copy the full SHA 1b29764View commit details -
Clean up some old comments and add some new, more useful comments.
Alexx Perloff committedFeb 15, 2017 Configuration menu - View commit details
-
Copy full SHA for b0ff683 - Browse repository at this point
Copy the full SHA b0ff683View commit details
Commits on Feb 23, 2017
-
Move the JetCorrectorParametersHelper class out from inside the JetCo…
…rrectorParameters class. Also untemplate the JetCorrectorParametersHelper class and set a maximum number of binned variables to 3.
Alexx Perloff committedFeb 23, 2017 Configuration menu - View commit details
-
Copy full SHA for 5457951 - Browse repository at this point
Copy the full SHA 5457951View commit details
Commits on Feb 24, 2017
-
Fix two off-by-one errors that only affected the 1D and 2D cases.
Alexx Perloff committedFeb 24, 2017 Configuration menu - View commit details
-
Copy full SHA for c7427a4 - Browse repository at this point
Copy the full SHA c7427a4View commit details
Commits on Mar 8, 2017
-
Minor update to protect against an edge case.
Alexx Perloff committedMar 8, 2017 Configuration menu - View commit details
-
Copy full SHA for 233d5ea - Browse repository at this point
Copy the full SHA 233d5eaView commit details -
Since the ioread statements are no longer used for conditions objects…
… we added a REGISTER_PLUGIN_INIT command and the associated functions.
Alexx Perloff committedMar 8, 2017 Configuration menu - View commit details
-
Copy full SHA for 3802708 - Browse repository at this point
Copy the full SHA 3802708View commit details
Commits on Mar 9, 2017
-
There is a problem if the JetCorrectorParameters::Records stored in t…
…he database are unsorted, or sorted incorrectly, and the new algorithm is used. If the JetCorrectorParameters are taken from the database the constructor is not called and this was the only place that sorted the Records. A new sort line was added to the init function in this case to make the class backwards compatible. In the worst case scenario a second sort is called on an already sorted collection, but this is a small overhead. We think that the old algorithm was robust to this improper sorting which was fixed early on in this update, but we aren't sure. Thus we left the sort in the constructor as well because the init function is not called when using the old algorithm.
Alexx Perloff committedMar 9, 2017 Configuration menu - View commit details
-
Copy full SHA for 2fa7b08 - Browse repository at this point
Copy the full SHA 2fa7b08View commit details