Releases: xsuite/xtrack
Releases · xsuite/xtrack
Xtrack version 0.98.1
Xtrack version 0.98.0
Changes:
- Modified behavior of
BendandRBend. In particulark0_from_his True by default, it becomes False when the k0 is set.hbecomes read-only. ForRBend,lengthbecomes read-only, the length is set bylength_straight. - Fix in
Line.build_tracker(). - Discontinue deprecated
Multiline
Full Changelog: v0.97.2...v0.98.0
Xtrack version 0.97.2
Changes:
- Temporarily pin pymadng version while waiting for a new release correcting chromaticity calculations
Full Changelog: v0.97.1...v0.97.2
Xtrack version 0.97.1
Changes:
- Generalize RBend to support arbitrary orientation and shift. Added attributes:
rbend_compensate_sagitta,rbend_angle_diff#729 . - Updates in documentation #726 and #728.
- Further the implementation of include headers functionality #714:
- Register headers for Xtrack the same way as the other packages (through the hook in
pyproject.toml). This means the headers can also (and in the future should only) be included with#include "xtrack/..."without assumingxtrackis top-level. This is to avoid collisions with the other Xsuite packages. In the future the old way should be disabled. - Update the examples to use the new way.
- Populate properly the
pyproject.tomlfile. We can removesetup.pywhile still using setuptools, as it's not doing anything special currently. - Bump the supported Python version to 3.9+.
- Move
atomicAddand qualifier keyword macros to Xobjects (see xsuite/xobjects#160). - Implement what we can with headers (e.g.
multisetter.h,local_particle_custom_api.h) - Get rid of the magic comment
/*placeholder_for_local_particle_src*/and the related behaviour (the functionality was unnecessarily convoluted as a result ofParticlesPurelyLongitudinal-- it is now simpler, is fact no need to regenerate and propagatelocal_particle_srcas it's completely static in the current version of Xsuite). - The above also indirectly fixes a bug where
/*placeholder...*/would be ignored if the same snippet of code didn't contain//start_per_particle_block.
- Register headers for Xtrack the same way as the other packages (through the hook in
Full Changelog: v0.97.0...v0.97.1
Xtrack version 0.96.2
Xtrack version 0.96.1
Changes:
- Miscellanous fixes in the native madloader #715
- Updated the MAD-X parser to allow element names to be strings or identifiers throughout sequences, lines, and commands, and to support line continuations with
&. This makes parsing compatible with a wider range of MAD-X inputs. - Align aperture loading with MAD-X: if no
apertypeis specified, it now defaults to'circle'. - Removed the ability to specify apertures as standalone elements, as this was never a feature of MAD-X itself.
- Added some missing MAD-X element types as drifts.
- Updated the MAD-X parser to allow element names to be strings or identifiers throughout sequences, lines, and commands, and to support line continuations with
- Refactored thick and thin element insertion methods in
xtrack/line.pyto use the newplaceandinsertAPIs, simplifying the code and making element placement more robust and maintainable. - Fixed typos in error messages for several
Linemethods #719 - Added backward compatibility for element shifts by accepting both
shift_xand_shift_x(and similarly forshift_yandshift_s) inxtrack/base_element.py, ensuring legacy element dictionaries can be loaded without errors #720 - Fixed bug in tests #717
- Implemented an ACDipole element #660
Full Changelog: v0.96.0...v0.96.1
Xtrack version 0.96.0
Changes:
- Implement
Environment.vars.rename(…) - `xt.load(…) supports a list of mad files.
- Add
s_toland and_rbend_correct_k0options to xt.load(). - Mark autogenerated drifts ad
||drift_XXand reuse them when possible. NoDriftSliceelement is created when these drifts are sliced. - Preserve last context when rebuilding trackers without passing context or buffer.
- In LimitPolygon avoid enforcing anti-clockwise ordering of vertices.
- Fix issue in
LossLoacationRefinement - Fixes in MAD-X writer, MAD-NG interface and native MAD-X loader.
Full Changelog: v0.95.0...v0.96.0
Xtrack version 0.95.0
Changes:
- Fixes in native MAD-X loader: thin solenoid,
k2in bends,k0differing from h. Extendknl/kslwhen needed. - Improved
atomic_addC function - Store angles instead of sin/cos in misalignments
- Add k2 attribute to Bend and RBend
- Support thick slicing of misaligned elements
- Support spin tracking for misaligned elements
- Support and set the
nochargeoption in the MAD-NG interface
Full Changelog: v0.94.2...v0.95.0
Xtrack version 0.94.2
Xtrack version 0.94.1
Changes:
- Added support for
rigidity0andkinetic_energy0as reference quantities in theParticlesclass, including initialization, property access, and setters, allowing users to define particles by magnetic rigidity and kinetic energy directly. - Fix in cpymad loader for magnetic errors.
Full Changelog: v0.94.0...v0.94.1