All notable changes to OCELOT will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning. (Not yet, maybe it won't. Versioning is based on year.month.day.
- The
CSR
class now gives an explicitlogging
error
when failing inarcline
and a more useful explanation. This error often occurs because the user has mixed CSR for vertical bends with horizontal bends.
- New properties on
ParticleArrray
,beta
andgamma
, providing the relativistic properties of each particle. - New method
sort
onParticleArray
for possibly sorting in place with respect to one of the properties or functions (e.g.beta
,x
,p0c
, etc.) returning the indices that sort theParticleArray
. - Implementation of
__len__
forParticleArray
which simply returns the number of particles it contains. Identical in function tosize
. get_envelope
now also calculates the normalised emittancesemit_xn
andemit_yn
, not just the geometric ones, as was previously the case.- Added
overwrite_progress
kwarg tocpbd.track.track
function which allows tracking progress to optionally be written on new lines rather than overwritten repeatedly using carriage returns. This is particularly useful when logging the output of a running ocelot simulation to avoid extremely long lines and unreadable log files. - Inactive processes in
Navigator
instances are now stored in theinactive_proccses
attribute. This way processes attached to aNavigator
remain accessible in that for the lifetime of the Navigator. - New
ParameterScanner
class incpbd.track
for scanning arbitrary parameters in parallel (either using multiprocessing mpi4py). For example one might scan different compression schemes. Results are compiled into a single hdf5 file.
- None yet.
- None yet.
- None yet.