Skip to content

v2.7.0

Choose a tag to compare

@github-actions github-actions released this 14 Sep 10:53
· 17 commits to develop since this release
2a7b58c

Instruction

Known Problems

This release introduced bug to binned splines resulting in even rate mismatch. Please use 2.7.1 instead.

Stepscale

Originally we though we might have different step scale for different algorithms. Hence current structure.
However we haven't used this and based on discussion most likely will never use it.
This results in config being longer than needed.
One need to modify accordingly
[StepScale][MCMC]->[StepScale]

Osc Params

Order of Osc Params was hardcoded. Which worked fine for short list but as we go more into BSM territory this became unwieldy. New approaches matches NuOsc params with MaCh3 using string.

This means now each Osc params requires field NuOscName, which has to match name in NuOsc. If name is wrong NuOsc will print all names so it should be easy to match without having to go into the code.

CHIC

CHIC Engine in NuOsc now supports ATM hence name change from CHICLinear -> CHIC. This means one need to modify cmake and CHIC config option accordingly.

Spline tokens no assume dimensionality

We are aiming to stop hardcoding spline dimensionality.
One of very few places which are still hardcoded to be 3 dimensions are spline enum tokens:

enum TokenOrdering{kSystToken,kModeToken,kVar1BinToken,kVar2BinToken,kVar3BinToken,kNTokens};

We moved away from kVar1BinToken.
so instead of

      int Var1Bin = std::stoi(Tokens[kVar1BinToken]);
      int Var2Bin = std::stoi(Tokens[kVar2BinToken]);
      int Var3Bin = std::stoi(Tokens[kVar3BinToken]);

Now assumes kVarBinToken starts kinematic enumaration rather than have token for each

enum TokenOrdering{kSystToken,kModeToken,kVarBinToken};
      int Var1Bin = std::stoi(Tokens[kVarBinToken + 0]);
      int Var2Bin = std::stoi(Tokens[kVarBinToken + 1]);
      int Var3Bin = std::stoi(Tokens[kVarBinToken + 2]);

This means one need to slightly modify experiment specific spline inherited classes.

Splines GPU

Now both binned and unbinned have access to GPU acceleration. However we no longer have simple binary use GPU for all or not all. As we might see that GPU give larger boos to some samples, and RAM resources are limited. We now allow to turn off GPU acceleration for given SplineHandler even if overall code was compiled with GPU.
It should be noted that by default if compiled with GPU we do use GPU. And this is expert level setting.

What's Changed

Full Changelog: v2.6.1...v2.7.0