IDDEFIX
Originally forked from https://github.com/SebastienJoly/IDDEFIX
Impedance Determination through Differential Evolution FItting and eXtrapolation.
IDDEFIX is a physics-informed evolutionary optimization framework that fits a resonator-based model (parameterized by R, f, Q) to wakefield simulation data. It leverages Differential Evolution to optimize these parameters, enabling efficient classification and extrapolation of electromagnetic wakefield behavior. This allows for reduced simulation time while maintaining long-term accuracy, akin to time-series forecasting in machine learning
About
🚀 IDDEFIX features:
-
Resonators formulas
- Longitudinal and transverse impedance (Fully/ partially decayed)
- Longitudinal and transverse wake
- Longitudinal and transverse wake potentials
-
Differential Evolution algorithm for fitting resonsators to impedance
- SciPy's Differential Evolution
- pyfde ClassicDE
- pyfde JADE
- pyMOO's CMA-ES "Covariance Matrix Adaptation Evolution Strategy"
-
Smart Bound Determination for precise and easy boundary setting
How to install
IDDEFIX is deployed to the Python Package Index (pyPI). To install it in a conda environment do:
pip install iddefix
It can also be installed directly from the Github source to get the latest changes:
pip install git+https://github.com/ImpedanCEI/IDDEFIX
How to use / Examples
IDDEFIX is documented using Sphinx and ReadTheDocs. Documentation is available at: http://iddefix.readthedocs.io/
Check 📁 examples/ for different DE resonator fitting cases
- Analytical resonator initialization and fitting
- Resonator fitting on accelerator cavity simulation and extrapolation
- Resonator fitting on beam wire scanner simulation
- Resonator fitting on SPS transistion device and extrapolation
Contributors 👩💻 👨💻
- Author : Sébastien Joly (sebastien.joly@helmholtz-berlin.de)
- Collaborator :
- Malthe Raschke (malthe@raschke.dk)
- Refactored code and PYPI deployment
- Smart Bound Determination
- Example notebooks for extrapolation of analytical and simulated devices
- Bernardo Abreu Figueiredo (bernardo.abreu.figueiredo@cern.ch):
- CMA-ES kernel integration from
pymoo
- CMA-ES kernel integration from
- Malthe Raschke (malthe@raschke.dk)
- Maintainer: Elena de la Fuente (elena.de.la.fuente.garcia@cern.ch)
Publications about iddefix
- S. Joly, Resonator impedance extrapolation of a partially decayed wake presentation @ CERN ABP-CEI section meeting link
- S. Joly, PhD Thesis Recent advances in the CERN PS impedance model and instability simulations following the LHC Injectors Upgrade project Sapienza Universita di Roma link
- M. Raschke, Evolutionary Algorithms for Wakefields @ CERN ABP-CEI section meeting link
- B. Figueiredo, Using Xsuite and (CMA-ES) genetic methods to optimize FCC GHS momentum acceptance @ CERN ABP-CAP section meeting link
Nightly Test badges
Metadata
Release files for iddefix 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iddefix-0.2.1.tar.gz | 52.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iddefix-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 95.1 kB
Release files / iddefix-0.2.1.tar.gz
| Download URL | iddefix-0.2.1.tar.gz |
|---|---|
| Size | 52.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ea892bf42856cae9090917111c54c84d99e8c4c938538c205c0f34cd270468ec
|
|
BLAKE2b-256 checksum How to use checksums |
de82545163c8a2a12831fa4b840fd19351119ff7878bbb4a3facaefcc1b397c4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 26, 2026.
Transparency logRelease files / iddefix-0.2.1-py3-none-any.whl
| Download URL | iddefix-0.2.1-py3-none-any.whl |
|---|---|
| Size | 43.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
945648309428acfb0f3f08bb82836cae92daa74cbc140181a8a84011c57930a6
|
|
BLAKE2b-256 checksum How to use checksums |
51bfa61f08968b58a92256b5a23f4b8f5c508c159618eca2db5c897694eaa9de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 26, 2026.
Transparency log