Releases: xsuite/xtrack
Releases · xsuite/xtrack
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
Xtrack version 0.37.2
Changes:
- Prepare support for Bhabha scattering (soon to be deployed in Xfields)
- Fix issue with optimize_for_tracking when element internal records are active
Xtrack version 0.37.0
Changes:
- Introduce the following thick elements:
Bend
,Quadrupole
,CombinedFunctionMagnet
. - Introduce
Line.slice_thick_elements
method, equivalent to MAD-X makethin. - Introduce time-dependent functions within xdeps variables, which are changed automatically during tracking.
- Introduce new method
Line.check_compatibility_with_prebuilt_kernels
Full Changelog: v0.36.5...v0.37.0
Xsuite version 0.36.5
Changes:
- Docstrings update
Xtrack version 0.36.4
Changes:
- More accurate calculation of dispersion and crab dispersion
- In twiss
method="4d"
freezes the energy variables (but not zeta). - Fixes in management of cached and pre-built kernels and some reorganization in
Tracker
. - Fixes in twiss orientation management.
- Fix in
Line.optimize_for_tracking
. - Remove to_binary/from_binary methods in
Tracker
.
Full Changelog: v0.36.2...v0.36.4