Releases: xsuite/xtrack
Releases · xsuite/xtrack
Xtrack version v0.41.1
Changes:
- Fixes an issue with
xsuite-prebuild
when xtrack is installed from pypi
Full Changelog: v0.41.0...v0.41.1
Xtrack version 0.41.0
Changes:
- Introduce computation of equilibrium emittances in the result of
twiss(..., ene_loss_and_damping=True)
. - Introduce
Line.match(compensate_radiation_energy_loss=True)
. - Introduce
Line.vv
as alias ofLine.varval
. - Introduce
Line.attr
for quick extraction of commonly used element attributes (length, hxl, hyl, low order strengths). - Introduce backtrack for
CombinedFunctionMagnet
. - Introduce
Line.metadata
andMultiline.metadata
. - Introduce
Target(..., optimize_log=True)
flag to optimize the logarithm of a quantity. - Introduce support for
Int64
attributes inMultisetter
. - Introduce
TwissInit.to_dict(...)
,TwissInit.from_dict(...)
,TwissInit.to_json(...)
,TwissInit.from_json(...)
. - Refactor prebuilt kernel management to control the order in which they are checked.
- Refactor
Line.compensate_radiation_energy_loss()
to preserve expressions. New implementation is also considerably faster. - Switched to
radiation_method = "kick_as_co"
as default in the presence of radiation (significantly faster thanfull
). - Fix sign error on weak focusing from
hyl
in multipole. - In mad_loader, add entry and exit markers also for thin elements that are not markers themselves.
- Use shorter suffix when splitting drifts to insert elements.
- Performance improvement in
line.__getitem__
. - Improved speed in
LastTurnMonitor
.
Full Changelog: v0.40.2...v0.41.0
Xtrack version v0.40.2
Xtrack version 0.40.1
Changes:
- Introduce
ParticlesMonitor.to_dict
andParticlesMonitor.from_dict
methods.
Full Changelog: v0.40.0...v0.40.1
Xtrack version 0.40.0
Changes
- Introduce
only_markers
mode forLine.twiss
. - In
Line.twiss
finite-difference steps are automatically adapted to estimated beam size. - New feature in
Line.match
xtrack.START
andxtrack.END
can be used as location in match targets.TargetSet
can be used to specify multiple parameters at the same location.- Default values for vary limits and steps can be specified in
Line.vars.vary_default
. Line.match
always returns the optimizer object.
- Add examples of rematching for LHC optics.
Full Changelog: v0.39.0...v0.40.0
Xtrack version 0.39.0
Changes
- New capabilities related to element compounds:
- Insertion of elements within compounds.
- Slicing of thick elements within compounds with propagation to all slices of the aperture and related tilts and shifts.
- New feature in matching with generation of an optimizer object to inspect and drive the matching process (the object can be obtained with
optimizer = line.match(solve=False)
). The optimizer object allows the following actions:- Perform an assigned number of optimization steps calling
optimizer.step(...)
. - Iterate until solution is found or termination condition is met through
optimized.solve(...)
. - Disable/enable targets and vary objects through their
active
flag. - Inspect vary's and targets of the optimizer using the method
optimizer.show()
. - Assign a tag to groups of vary's and targets and disable/enable groups by calling
optimizer.disable_targets(tag=...)
,optimizer.disable_vary(tag=...)
,optimizer.enable_targets(tag=...)
,optimizer.enable_vary(tag=...)
. - Inspect the optimizer iteration history through
optimizer.log()
. History can be deleted byoptimizer.clear_log()
- Reload the state from a given iteration by calling
optimizer.reload(...)
. - Provide defaults for vary steps and limits through
Line.vars.vary_default
. - Provide defaults for target tolerances through
match(default_tol={...}
. - Expose all features above in the matching of knobs.
- Perform an assigned number of optimization steps calling
- Introduced
Line.vars.load_madx_optics_file
method. - Introduce
Line.varval
to easily access variable values (line.varval['a']
equivalent toline.vars['a']._value
) - Introduce backtracking for thick elements
Quadrupole
andBend
(the latter only in expanded mode). - Introduce
Multiline.copy()
method. - Introduce method
TwissTable.concatenate
to concatenate twiss tables. - Introduced
TargetRelPhaseAdvance
to match relative phase advance between two points. - Fix handling of custom twiss_init when
twiss_default['reverse']
isTrue
.
Full Changelog: v0.38.3...v0.39.0
Xtrack version 0.38.3
Changes:
- Fix in dipole wedge map (issue with ions)
- Add
Tracker._init_io_buffer
method.
Full Changelog: v0.38.2...v0.38.3
Xtrack version 0.38.2
Changes:
- Fixes in Fringe fields and expanded bend
- Fix in
Line.optimize_for_tracking
Full Changelog: v0.38.1...v0.38.2
Xtrack version 0.38.1
Changes:
ShiftZeta
element shifts only time variable.
Xtrack version 0.38.0
Changes:
- Introduce non-linear fringe effects in DipoleEdge element (can be enabled using
Line.configure_bend_model(edge='full')
) - Introduce "compound elements" in Line.
- Elements within compounds can be grouped in twiss using the option
group_compound_elements=True
- Elements within compounds can be grouped in twiss using the option
- Rename
Bend.method
intoBend. model
.
Full Changelog: v0.37.2...v0.38.0