Releases: madminer-tool/madminer
Releases · madminer-tool/madminer
v0.2.6
New features:
- New
python2_override
keyword inMadMiner.run()
andMadMiner.run_multiple()
to allow using MadMiner in a Python 3.x environment, while still running MadGraph with the required Python 2.x.
Bug fixes:
- Fixed issues related to Pythia and Delphes not keeping track of weights. Now MadMiner should finally be able to run without any custom patch to the MG-Pythia interface or Delphes.
- Fixed pointless scheme variation when calculating PDF uncertainties.
- Fixed
plot_histogram_of_information()
in truth-level mode crashing in the presence of nuisance parameters. - Improved parsing of nuisance parameter setup from LHE file.
v0.2.5
Documentation:
- New systematics example.
Bug fixes:
- Fixed multiple issues in the parsing and editing of run cards for systematics.
- Fixed photons and gluons being swapped in
LHEProcessor
observables. - Fixed crash when no events survive
LHEProcessor
cuts. - Fixed
extract_samples_test()
crashing in the presence of nuisance parameters. - Fixed the pythia_card.dat in the Delphes tutorial that lead to hangups of unpatched Pythia version.
Internal changes:
- Improved warnings and logging output in various places.
v0.2.4
New features:
'tau'
object forLHEProcessor
observables / cuts.
Breaking / API changes:
- New
verbose
keyword forfit()
function that controls verbosity of learning progreess.
Breaking / API changes:
- Removed obsolete
debug
keywords from class constructors.
Bug fixes:
- Fixed parsing of non-LHA-block parameters in param card.
- Fixed bug in
LHEProcessor
that led to cuts having no effect. - Fixed critical bug in the transfer function / smearing in
LHEProcessor
- Fixed
plot_distributions()
not working correctly if observables is not None. - Added workaround to avoid a bug in NumPy 1.16.0 that only appears with Python 2.x.
v0.2.3
Documentation and examples:
- Added Irina Espejo to author list
- Updated installations instructions in README
- Updates and fixes in the tutorials and examples
Bug fixes:
- MadMiner correctly reads parameters that are not formatted as LHA block in param_card
- Fixed bug in LHE parsing
- Fixed bug in smearing with
pt_resolution = None
extract_samples_train_ratio()
does not crash when morphing is not set up- Fixed bug in
project_fisher_information()
with covariance matrix - Fixed bug in
plot_distributions()
with n_events=None
Internal changes:
- Sped up LHE parsing, user can choose between XML and test parsing
v0.2.2
New features:
- Fisher information uncertainties for ensembles in "score" mode
Bug fixes:
- Fixed MadMiner not recognizing PDF weights in LHE file in some cases
- Various bug fixes
Internal changes:
- py.test and Travis CI
v0.2.1
New features:
- Smearing functions in
LHEProcessor
- More powerful observable definitions and cuts in
LHEProcessor
Breaking / API changes:
- Some changes to
LHEProcessor
interfaces to make it consistent withDelphesProcessor
Documentation and examples:
- New parton-level tutorial
Bug fixes:
- When evaluating models on GPUs, tensors are now moved back to CPU before being converted to numpy
Internal changes:
- Rewriting of LHE file parsing based on proper XML parsing
v0.2.0
New features:
- Nuisance parameters to model systematic uncertainties, currently only from PDF / scale reweighting and for SALLY / SALLINO.
- New "score" mode for ensemble Fisher information calculation.
- No need for the Pythia / Delphes patch anymore:
DelphesProcessor
can extract the event weights from the LHE file. - Additional (non-morphing) benchmarks can be defined in
MadMiner
without breaking or resetting the morphing. DelphesProcessor
allows k factors.- New function
plot_distributions()
to plot distributions of observables and systematic error bands. - Option to save full pyTorch models.
- Option to limit the training sample size.
- Dynamic binning for 2D histograms.
Breaking / API changes:
DelphesProcessor.add_sample()
replacesDelphesProcessor.add_hepmc_sample()
.MadMiner.set_morphing()
replacesMadMiner.set_benchmarks_from_morphing()
.
Documentation and examples:
- New toy example.
- Updated docs.
Bug fixes:
- Fixed critical bug in the evaluation of the score with ensemble methods, which led to wrong results for the detector-level Fisher information.
- Fixed bug in the calculation of the covariance of truth-type Fisher information matrices.
- Fixed gradient clipping.
- Many small bug fixes.
Internal changes:
- MadMiner file format changed to include systematics / nuisance parameter data.
- Significant speed-up of training for CARL, ROLR, and ALICE estimators.
- No unnecessary running of Delphes in
DelphesProcessor
. - Restructured logging, now the user is responsible for setting up handlers.
- Renamed some submodules in
madminer.utils.interfaces
. - Removed unnecessary static functions in
MadMiner
. - Rewrote profiling algorithm.
v0.1.1
New features:
- DelphesProcessor supports a "generator truth" analysis. With this option, observables are calculated based on the Pythia output, only running FastJet to define jets. There are no resolution or efficiency effects.
- LHEProcessor allows the definition of observables through functions.
- New and cleaned up examples.
Bug fixes:
- Fixed MadMiner.run() not working without specifying a Pythia card
- Fixed wrong labels in DelphesProcessor default observables (pT and E were swapped).
- Fixed plot_fisherinfo_barplot() crashing.
- Fixed issue with benchmark names containing "block"
v0.1.0
First more or less stable development version. The core functionality is implemented and many features tested. But other features are still unimplemented or untested, and the API is far from stable.