Skip to content

Releases: gundam-organization/gundam

Gundam v1.7.2

06 Jul 01:55
Compare
Choose a tag to compare

Reintroduction of the CalcXsec!

  • gundamCalcXsec is now working with the new dial/cache system of the propagator introduced since 1.7.0
  • Now supporting parameter dependent renomalizations (like flux renormalisation)
  • Don't load the fit samples in the xsection calc propagator (way faster)
  • Use config override feature to tweak the parameter definitions used during the fit

Fixes

  • CacheManager is now running with the new dial/cache system (i.e. CUDA is back!)
  • Now working with ROOT v6.28.04+
  • Now cmake checks if the submodules are present
  • Full synced event/dial cache sorting to insure reproducibility of toy throws and fit runs

Additions

  • ./update.sh is a magical script that will help you update the code and its submodule effortlessly 🙃
  • Updating doc

/!\ Submodules have been moved to the gundam-organization for better support.

Some old version of git might freak out while updating, so if you encounter some troubles while recompiling
(GenericToolbox::... could not find function for instance), you can either try to update manually the submodules
or start back from scratch: i.e.:

git clone https://github.com/gundam-organization/gundam.git
cd gundam
./update.sh --latest

Full changelog of 1.7.1-> 1.7.2

Gundam v1.7.1

25 May 15:47
cbcbf2a
Compare
Choose a tag to compare

Fixes

  • Fixing logger issue while building with C++14
  • Fixing ParScan config loading ending up in a segfault

Additions

  • Systematically check for GUNDAM version while building
  • Adding gundamFitReader app that allows to printout the results of a fit using the fitter output file
  • Adding gundamInputZipper app that allows to gather configs and resource file in a local place, and zip it. This allows to pass a completely portable set of inputs for another user who wants to run the fit.
  • Adding override config feature that allows to edit a main configuration: gundamFitter -c config
  • Adding LineScanner feature that allows to monitor the LLH response on a straight line in the parameter space
  • Adding convergence monitor that draws the path taken by Minuit to find the minimum

Full changelog of 1.7.0-> 1.7.1

Gundam v1.7.0

19 May 12:47
a0a29ef
Compare
Choose a tag to compare

This is the first release of GUNDAM using the new Dial implementation. This is the first version that is expected to be feature complete for the T2K 2024 near detector fit.

What has not changed

  1. Previous GUNDAM configurations should continue to work without modification. You can start using new features when you need them.

What's new

  1. The event weight calculation has been moved to a new dial interface that requires less memory, and better optimized. The new dial interface is designed so that it will (eventually) support multi-dimensional dials, and other ways of doing reweighting.
    1. The new dial infrastructure allows multiple types of cubic splines to be used. The supported splines types are "not-a-knot" (equivalent to the default TSpline3), "natural", and Catmull-Rom (only for uniformly spaced knots).
    2. All types of splines can be constrained to be monotonic. A monotonic spline will be monotonic at all points except for "extrema" located at a knot. The slope at an extrema is zero, and the first derivative is continuous.
  2. The fitter engine infrastructure has been improved to better support different types of "fitters". There are currently interfaces for the standard MINUIT based fitter, and an MCMC tool to estimate the posterior probability distribution.
  3. Infrastructure to determine the P-Value of a fit result.
  4. A testing infrastructure to facilitate continuous integration and validation.
  5. Injection of specific parameter values and calculate the likelihood so that the likelihood can be compared between different fits and fitters.
  6. The individual event weights as a function of each parameter can be saved in the output file for model validation.
  7. Adding new tools gundamFitInfo that read the ouput file of a fit. It reads and display information on the runtime
  8. Adding parameter injector feature that allows to import(/export) a given set of parameters in the Propagator
  9. Adding line scanner feature in which to can scan the LLH response a long a straight line between two points
  10. More info are saved in the output root file of the fitter
  11. gundamFitCompare can now show the position of the values on the Scan plots

What's next

The next point release will probably be 1.7.1 and is expected to include

  1. Updates to the GPU calculation for the new dial interface.
  2. Continuously improving documentation.

Full changelog of 1.6.1-> 1.7.0

Gundam v1.6.1

10 Dec 10:54
29fa74c
Compare
Choose a tag to compare

** last version before new dial library **

What's new?

  • First working version of gundamCalcXsec
  • Adding GenericToolbox and Logger in gundamRoot
  • Adding option for validation against BANFF: devUseParLimitsOnEigen
  • Fixing crashes with plot generator

Full changelog of 1.6.0-> 1.6.1

Gundam v1.6.0

01 Nov 14:35
0d44ab9
Compare
Choose a tag to compare

Code rearrangment and cleanup for hosting other engines and tools.

What's new?

  • Official markdown doc for config options is available in documentation/applications/gundamFitter.md
  • Keep previously writen objects in output file when user abort the execution
  • gundamFitter: Add support for pre-fit option with Simplex algo
  • gundamFitter: Now minimization is handle by a dedicated interface aside from the FitterEngine
  • DataDispenser: faster bin indexing while loading data
  • gundamFitCompare: now don't stop if no postfit objects are found
  • gundamFitCompare: Adding error comparisons in relative along the overlay plots
  • MinimizerInterface: Debug option to show current fit parameters during the minimization

Devs notes

  • Now every class base on json configuration herit from a single virtual class insuring the setup: config > init > run.
  • CacheManager: few impl adjustments

Full changelog of 1.5.0-> 1.6.0

Screenshot 2022-11-01 at 15 18 11

Gundam v1.5.0

17 Oct 17:24
b01feb8
Compare
Choose a tag to compare

What's new?

  • Adding EventVarTransform feature allowing to transform event variable with compiled pieces of codes in the user inputs
  • Showing table of event variable name / source leaves / transformation lists
  • custom BarlowLLH_BANFF_OA2021 parameters
  • Throw MC error along statistical uncertainties in toys
  • Adding --appendix option to fitter

Full changelog of 1.4.7-> 1.5.0

Gundam v1.4.7

04 Oct 12:22
dc7f361
Compare
Choose a tag to compare

What's new?

  • Some command line options now adds appendix to the output file name
  • Added enableSimplexBeforeMinimize option for difficult fits
  • Add option to enable PCA on eigen decomposed paramters

Full changelog of 1.4.6-> 1.4.7

Gundam v1.4.6

01 Oct 09:49
87c41da
Compare
Choose a tag to compare

What's new?

  • If compiled with the CacheManager ON, need to add command line option --cache-manager or --gpu (if CUDA is enabled)
  • --skip-hesse allows to skip postfit errors
  • Added "allParamVariations" feature varying event rates at selected sigmas
  • Now converting back postfit covariance matrix to original parameter definition phase space
  • Now performing event selection in multithread
  • Fixing TTree reading when formula use branch arrays
  • Adding "allowDialExtrapolation" DialSet option (false default)
  • Showing CPU efficiency and IO usage in data loading
  • Fit monitor: printint current Chi2/dof
  • Postfit plots: printing thrown parameter values for toy fits
  • EXPERIMENTAL: external C library loader (plugin) for custom JointProbability (likelihood) definition
  • gundamFitCompare now compares fit results from scans, samples, and errors
  • gundamConfigUnfolder now produces readable config file (with line jumps)

Full changelog of 1.4.5-> 1.4.6

Gundam v1.4.5

28 Jun 15:31
78bf753
Compare
Choose a tag to compare

What's new?

  • Introducing JointProbability class, generalizing the LLH definitions
  • Adding minDialResponse & maxDialResponse options (generalising min/max spline response options)
  • Display thrown parameter values on prefit/postfit comparison plots
  • Parameter throws are only done in the real parameter space (not in Eigen)
  • Adding enableStatThrowInToys (default: true)

Full changelog of 1.4.4-> 1.4.5

Gundam v1.4.4

09 Jun 14:04
8dfc49b
Compare
Choose a tag to compare

What's new?

  • Adding outputFolder option
  • Adding minGundamVersion option
  • Check for negative tree wait
  • Default min dial response for NormDial is now 0
  • Fixing fakedata/toy loading with event by event splines
  • Nominal weight formula can now be defined with multiple lines (see attached screenshot)

Fixes

  • Fixed CacheManager with new Dial implementation
  • Fixed memory unit display when reaching > 4GB

Full changelog of 1.4.3-> 1.4.4

Screenshot 2022-06-09 at 14 47 32