Recent Releases of cepgen
cepgen - v1.2.5
What's changed
Core
- Added an event content comparison operator
- Test: added extra event filling cases to event output test
Extensions
- Python: improved floating point variables output in Python auto-generated configuration snippets
- HepMC2: particles status are now properly fed to HepMC2 event content. Fixes #88
- CTML: improved internal linking of auto-generated HTML documentation
Full Changelog: https://github.com/cepgen/cepgen/compare/1.2.4...1.2.5
- C++
Published by forthommel almost 2 years ago
cepgen - v1.2.4patch1
What's Changed
Core
- Fixed a few warnings and errors when compiling with clang++ (v16): explicit template specialisation for
cepgen::ModuleFactory, a few unnecessarystd::move, wrong signature in values comparisons, ... - Fixed an infinite recursion in
Integrator::integrate
Utilities
- Improved the
cepgenScanuser-steerable parameters, uniformised with other utilities
Full Changelog: https://github.com/cepgen/cepgen/compare/1.2.4...1.2.4patch1
- C++
Published by forthommel almost 2 years ago
cepgen - v1.2.4
What's Changed
Core
- Improved Fortran interface, in https://github.com/cepgen/cepgen/pull/87 (e.g. allow handling multiple structure functions/couplings modellings)
- Safer handling of parameters description + parameters list object, allow vector of limits to be handled
- Refactoring of event by-role and by-particle status retrieval, improved parentage setting/retrieval
- Added a few
ParametersDescription::allowimplementations in various modules
Physics
- Asymmetric parton virtualities constraints, in https://github.com/cepgen/cepgen/pull/85
Extensions
- APFEL++: αS, αEM, and F2/FL structure functions evolution algorithms interface, in https://github.com/cepgen/cepgen/pull/81
Full Changelog: https://github.com/cepgen/cepgen/compare/1.2.3...1.2.4
- C++
Published by forthommel almost 2 years ago
cepgen - v1.2.3
What's Changed
Core
- Refactoring of the factories, only to accept string-keyed objects definitions, in https://github.com/cepgen/cepgen/pull/73. For backward compatibility, index-keyed modules (structure functions, sigma L/T ratios) are given integer aliases and can be constructed from it through an association map.
- Parameters description now support sets of allowed values for a given parameter, in https://github.com/cepgen/cepgen/pull/76. This allows to spot a misconfiguration before launching a steered module, and improves general documentation.
Physics
- LPAIR, and factorised processes allow to properly symmetrise the single-dissociation kinematics mode, in https://github.com/cepgen/cepgen/pull/79.
Extensions
- Herwig6: added alpha(S), alpha(EM), and structure functions modellings in https://github.com/cepgen/cepgen/pull/74 and https://github.com/cepgen/cepgen/pull/77.
- APFEL: added DIS structure functions modelling, in https://github.com/cepgen/cepgen/pull/75 (thanks to @hamzeh-khanpour's suggestion!)
- Python steering of structure functions and sigma ratio modellings now count on automatically generated
python_modulesimports, instead of a manually maintained collection of modellings.
Full Changelog: https://github.com/cepgen/cepgen/compare/1.2.2...1.2.3
- C++
Published by forthommel about 2 years ago
cepgen - v1.2.2
What's Changed
Core
- Phase space variables generator intermediate object, in https://github.com/cepgen/cepgen/pull/56. This sets the ground for faster phase space mappers algorithms to be interfaced, such as Rambo.
- Refactoring of factories implementation, in https://github.com/cepgen/cepgen/pull/60
- RPM packaging was added in CI since https://github.com/cepgen/cepgen/pull/59
Physics
- Fix of LPAIR z-dependent distributions in SD mode, in https://github.com/cepgen/cepgen/pull/58
- Allow signed PDG indices to be used in processes, and in particle properties definitions, in https://github.com/cepgen/cepgen/pull/61 and https://github.com/cepgen/cepgen/pull/62
- Refactoring of steering cards interface, in https://github.com/cepgen/cepgen/pull/65
- A new type of steered module with registration is handled: modules descriptor objects, in https://github.com/cepgen/cepgen/pull/66
- Allows form factors to be set at the individual beam level, in case of asymmetric beam-beam interactions, in https://github.com/cepgen/cepgen/pull/71
- LPAIR now allows asymmetric beams to be handled, in https://github.com/cepgen/cepgen/pull/72 (useful for pPb, or ep cases)
Extensions
- Porting of the MG5_aMC features in the new factorised process environment, in https://github.com/cepgen/cepgen/pull/63
- MadGraph5_aMC@NLO in CI, in https://github.com/cepgen/cepgen/pull/64
- Bump actions/checkout from 3 to 4, and github/codeql-action from 2 to 3 in https://github.com/cepgen/cepgen/pull/67 and https://github.com/cepgen/cepgen/pull/68
- Python+CTML documentation generators, in https://github.com/cepgen/cepgen/pull/69
- Python: automatic modules steering generation, in https://github.com/cepgen/cepgen/pull/70. This allows the automatic generation of steered modules configuration in Python, easily importable and modifiable, and allows a cleanup of most of the Python configurations already written.
Contributors
- @forthommel
Full Changelog: https://github.com/cepgen/cepgen/compare/1.2.1...1.2.2
- C++
Published by forthommel about 2 years ago
cepgen - v0.9.6
What's Changed
Core
- Improved the structure functions parameterisation objects definition (see 7c57a24d31, 1c5e353895)
Extensions
- Added support of Pythia6 hadronisation/fragmentation algorithm for legacy tests (see 06ebf75259)
- New output modes handled for HepMC interfacing module
Full Changelog: https://github.com/cepgen/cepgen/compare/0.9.5...0.9.6
- C++
Published by forthommel over 2 years ago
cepgen - v0.9.7
What's Changed
Core
- Fortran processes can now be fed a generic set of parameters, thanks to additional getter functions
- Output handlers may now be constructed directly from steering cards, thus enhancing overall modularity (see b8e5927e52, 507f8ccdc8)
- New text output handler for raw text output, and ASCII histograms (see d59f3702ca)
- Added a helper for the retrieval of events properties through human-readable getters (see 65ae85039c)
Extensions
- New HepMC ASCII output handler (for HepMC v<3), refactored HepMC event builder in preparation for future developments (see 7f982e3a3d)
- New ROOT histogram collections and ntuple files writers. Dropped the support for the
cepgen-rootexecutable (see e467dcf1a0, e3b10e3572) - Interface to Delphes for the simulation of detectors effects (see 0f0e541a2f)
Full Changelog: https://github.com/cepgen/cepgen/compare/0.9.6...0.9.7
- C++
Published by forthommel over 2 years ago
cepgen - v0.9.10
What's Changed
Core
- Added a command line handler to "digest" user-steered
cepgenexecutable steering - Added a new base object for event export
- Modularised the event generator worker in preparation to multithreading support
- Modularised the numerical integration algorithms
- New dynamic libraries loading extension to increase modularity
Physics
- Refactored the kinematics cuts definition and usage
Extensions
- Support of Python v3
- Optionally build Foam ROOT extension
- Pythia6: added Z2star underlying event modelling
Full Changelog: https://github.com/cepgen/cepgen/compare/0.9.9...0.9.10
- C++
Published by forthommel over 2 years ago
cepgen - v0.9.11
What's Changed
Core
- Form factors are now modularised the same way as e.g. structure functions
- Showing default value in parameters list steering debug
- Refactoring of the process kinematics/incoming beams storage and handling
CepGenAddOnsextensions are now completely self-embedded, with their own checks done internally
Physics
- New Arrington et al. (Phys.Rev.C 76 (2007) 035205), Brash et al. (Phys.Rev.C 65 (2002) 051001), Mergell et al. (Nucl.Phys.A 596 (1996) 367) electromagnetic nucleon form factors modellings
Extensions
- Added interface to the APFEL alpha(S) evolution computation algorithm
Full Changelog: https://github.com/cepgen/cepgen/compare/0.9.10...0.9.11
- C++
Published by forthommel over 2 years ago
cepgen - v1.0.0
What's Changed
Core
- Several utilities are now converted into the post-0.9.X modules schema. This allows to delegate a few definitions in the runtime loading of all libraries compiled against CepGen, thus reducing the overhead of dependencies for the CepGen core library.
- A new parameters documentation system was introduced to list all possible keys and their default/expected values and ease the user-interaction with all module parameters.
- Added a set of utilities to ease the drawing of 1- and 2-dimensional graphs and histograms.
Physics
PPtoWWnow includes more (incl. anomalous) matrix element implementations listed in Eur.Phys.J.C45:679-691,2006.- New hybrid Kulagin-Barinov structure functions, as implemented in Phys. Rev. C 105 (2022) 045204.
Extensions
- In addition to the "standard" text-based renderer, several libraries are interfaced to generate their output (ROOT, YODA, Gnuplot, Matplotlib, Topdrawer).
- Python cards steering et al. interface is now stripped off the core
CepGenlibrary into a dedicatedCepGenPythonlibrary. It now includes a functional parser and output configuration producer. - HepMC interface is now further split between its pre3 and 3+ versions. This allows to ease the interfacing between CepGen event content and several libraries accepting a HepMC2 or HepMC3 event content.
- Added a Photos++ and a Tauola++ algorithms interface for event modification.
- Included a testing suite for e.g. Pythia 6 steering through its CepGen interface.
Full Changelog: https://github.com/cepgen/cepgen/compare/1.0.0alpha2...1.0.0
- C++
Published by forthommel over 2 years ago
cepgen - v1.2.1
What's Changed
- Fix of HepMC3 output PDG id and factorised processes central particles status codes by @forthommel in https://github.com/cepgen/cepgen/pull/54
- Consequently, added event importer for HepMC3 event formats, and adapted test to check for
Particle::integerPdgId()instead of sign-insensitiveParticle::pdgId() - ROOT version-dependent calls to
TPad::PlaceBox(fixes https://github.com/cepgen/cepgen/issues/55) - 2-to-4 factorised processes now return central systems with PDG status 1 (stable) by default
- Further simplifications of LPAIR process
Full Changelog: https://github.com/cepgen/cepgen/compare/1.2.0...1.2.1
- C++
Published by forthommel over 2 years ago
cepgen - v1.2.0
This major release introduces a collection of bug fixes and new features to be used in future processes developments.
Most important part resides in the large scale refactoring of kt-factorised matrix elements, now allowing for collinear parton emission and fluxes estimations to provide a 1-to-1 comparison to other two-photon processes generators.
Also noticeable is the long awaited bug fix in single-dissociative LPAIR production (elastic-inelastic could result in cross sections 1000x larger than inelastic-elastic ones).
A few other features were also transformed into modules to ease user-steering, e.g. events can now be generated using Foam, with future tools to be provided in the future. Also, a couple event import modules are now provided to allow for future hadronisation/modification/output of events produced in another generator (transforming CepGen into an event filter).
What's Changed
- Exposing structure functions to python by @forthommel in https://github.com/cepgen/cepgen/pull/24
- Integration: added Python Vegas wrapper by @forthommel in https://github.com/cepgen/cepgen/pull/25
- Python: refactoring of the directory structure by @forthommel in https://github.com/cepgen/cepgen/pull/26
- Multiple generator workers by @forthommel in https://github.com/cepgen/cepgen/pull/27
- Value with uncertainty object by @forthommel in https://github.com/cepgen/cepgen/pull/29
- Extra layer of abstraction for phase space mapping by @forthommel in https://github.com/cepgen/cepgen/pull/30
- Collinear beam fluxes by @forthommel in https://github.com/cepgen/cepgen/pull/32
- LPAIR: support for all fermion types by @forthommel in https://github.com/cepgen/cepgen/pull/33
- MadGraph5_aMC@NLO interfacing by @forthommel in https://github.com/cepgen/cepgen/pull/34
- torchquad integration method by @forthommel in https://github.com/cepgen/cepgen/pull/36
- Fixes for Python 3.12 by @forthommel in https://github.com/cepgen/cepgen/pull/38
- Pythia 6 filter refactoring by @forthommel in https://github.com/cepgen/cepgen/pull/37
- Random number generator engines by @forthommel in https://github.com/cepgen/cepgen/pull/39
- Python: full refactoring of the configuration directory by @forthommel in https://github.com/cepgen/cepgen/pull/41
- Added Webber alpha(S) modelling by @forthommel in https://github.com/cepgen/cepgen/pull/42
- Process debugging helper by @forthommel in https://github.com/cepgen/cepgen/pull/43
- Utils: added GSL wrappers to matrices/vectors by @forthommel in https://github.com/cepgen/cepgen/pull/44
- Core: refactoring of run parameters object by @forthommel in https://github.com/cepgen/cepgen/pull/46
- Bases: interface to the Bases integration algorithm by @forthommel in https://github.com/cepgen/cepgen/pull/48
- Bases: Spring generator worker interface by @forthommel in https://github.com/cepgen/cepgen/pull/49
- Core: event importer modules by @forthommel in https://github.com/cepgen/cepgen/pull/50
- Continuous integration fix by @forthommel in https://github.com/cepgen/cepgen/pull/19
- Single-dissociation symmetry test by @forthommel in https://github.com/cepgen/cepgen/pull/28
- Utils: MCD parser empty info detection by @forthommel in https://github.com/cepgen/cepgen/pull/51
Full Changelog: https://github.com/cepgen/cepgen/compare/1.1.0...1.2.0
- C++
Published by forthommel over 2 years ago
cepgen - v1.1.0
This major release introduces a few features, both in core FW and in the physics performances parts.
Core developments:
* generalisation of parton flux computation through a new intermediate object
* stripped all factories from their objects' namespaces ; now require a ; at registration, because why not?
* base objects for event interaction modules (modifiers, output handlers, ...) now all derive from a base cepgen::EventHandler object, and are now given a full CepGen/EventFilter directory ; new cepgen::EventHarvester base object to hold integrated distributions to be displayed
* added accessor for external algorithm's base object (if defined)
* grid parameters for event generation are now downgraded with single-precision floats
* large refactoring of the analytic integrators algorithms, which have a shared API with numerical/MC integrators
* new numerical derivators wrapper (ROOT, GSL)
Physics developments: * improvement in form factors modellings API, stripped most of the LPAIR-specific cases * huge simplification of the kinematics definitions object * new HI fluxes * new Bodek-Kang-Xu hybrid structure functions * alphaEM Q^2 evolution can be used in fortran processes, as for alphaS
- C++
Published by forthommel over 3 years ago
cepgen - v1.0.1 patch1
This patch version switches BLAS default routines definitions from GSL's implementation to the optimised OpenBLAS. As a fallback solution if not found on environment, GSL's implementation can be used instead.
- C++
Published by forthommel almost 4 years ago