This is meant to be a summary of user-visible changes.
- Bug Fix: Fixed: possible crash when viewing element field integrals (View|Lattice).
- Bug Fix: Fixed: buffer overflow. Under certain circumstances, this bug would cause unpredictible data corruption.
- Bug Fix: Fixed: missing dll library in the 32-bit installer package.
- Bug Fix: Under certain circumstances, the beam size/projection plots may be displayed incorrectly (dispersion size not included when requested).
- Bug Fix: Uncoupled lattice phase plot incorrectly displayed (wrong axis labels).
- Bug Fix: include directive was failing randomly due to a bug caused by internal changes meant to improve portability between filesystems.
- Bug Fix: some elements were missing in the list created by Tools|Lattice with Bdl checked.
- Bug Fix: the Tools|Lattice checkbox "do not display first character" was not producing the expected result.
- Bug Fix: when using the interactive cntrl-arrow mechanism to change element parameters, a spurious plot of the 4d beam sizes was sometimes displayed.
- Change: Existing fixed horizontal scale limits will be preserved whenever a new plot is displayed in an existing plot window.
- Update to Qt LTS 5.12.3
- Code for compress function is now the same for both MS Windows variants.
- Cosmetic changes to "About OptiM" messages to identify target plaform.
- Bug fix : fixed corrupt pointer issue in the "Compress" function code (used to merge adjacent drift spaces and strip specified type of elements).
Under 64-bit linux and Windows this issue could cause the program to crash with certain complex lattices.
- Bug fix : fixed other possible array overrun issues in situations where apertures are present.
- Bug fix : fixed possible array overrun in situations where the requested number of samples on plots is large and/or the lattice is short.
- Bug fix : In chromaticity plots, the dp/p step size was always set to the default value (0.0001) regardless of the value specified by the user.
- Bug fix : in space charge mode, fixed issue with incorrect display of the phase advance within a solenoid element.
- Added : implemented an algorithm to desambiguate coupled modes. This is useful when computing chromaticity.
- Added : user defined negative phase advance threshold for coupled lattice functions propagation.
- Added : the default mode for horizontal plot limits is now set to "fixed".
- Bug fix : Lego plot element tooltip display is now instantaneous when the cursor hovers over it.
- Added : user dialog to control chromaticity plot dp/p range and number of samples.
- Bug Fix : combined function bend: an element with zero bending strength and G !=0 was incorrectly considered a drift.
- Bug Fix : optimizer (Fitting) : constraint on phase advance was respected, but not displayed in the output window.
- Bug Fix : optimizer (Fitting) : optimizer failed with a full (int + fractional) phase advance constraint for lattices
containing more than one instance of the same variable element.
- some text formatting improvements in the optimizer output window.
- Bug Fix : fixed possible crash in lattices containing an electrostatic accelerator element.
- Bug Fix : fixed possible crash when reading an external data file.
- Bug Fix : In editor preferences, the tab spacing parameter did not produce the expected result.
- Added: optional line numbers in lattice editor
- Added: adjustable editor cursor width
- Added: optional current line highlighting in editor
- Bug Fix : Fixed a random crash issue at program start under Windows.
- Added: [1st order] Chromaticity calculation (View4d|Integrals)
- Added: tune vs dp/p plot (View4D|Chromaticity) for coupled lattices.
- Windows binary installer package: Qt Runtime updated to version 5.11.3.
- Added: Synchrotron integrals for coupled lattices (View4D|Integrals).
- Bug Fix : Misc fixes to the Search|Find Search|Find Again functions.
- Bug Fix : Make sure that the modal message box displayed when a string is not found
is always displayed on top of the Search Dialog box.
- Bug Fix : In poincare plot mode, the poincare plot menu was not enabled as it should have when a custom distribution is read from a file.
- Bug Fix : Tracking was always performed using the initial distribution. Tracking will now continue
using the current distribution as an initial condition, which is what is typically expected.
- Bug Fix : transverse correctors have no effect on the trajectory.
- Bug Fix : A request for a trajectory block was made when not required.
- Bug Fix : The emittances reported by View|Integrals were off by a factor 2 (too large).
- Added : (Windows only). Multiuser installer.
- Bug Fix: (linux only). Fixed issue related to incomplete library support for standard regular expressions.
- Added: mechanism to output variables to a file. This is useful to monitor values of variables that
are defined in included files.
- Bug Fix: more efficient text-based output. The effet is most noticeable when producing large tables.
- Bug fix: fixed misc issues in the Tools|Control dialog. The convergence tolerance was incorrectly reported.
In "General" orbit closure mode, the 4D option check box selection did not work properly.
- Bug fix: Interactive parameter update was not working properly with both RING and reference orbit modes enabled.
- Bug fix: relaxed internal tolerance parameter used when determining periodic lattice function solution.
- Bug fix: fixed issue that prevented fixed axis selection.
- Added: Option to display longitudinal position in units of time or rf angle (trajectory plot).
- Bug fix: Tune diagram display was artificially limited to nu <= 30.0
- Added: Improved Poincare plots in Tracker. The Poincare plots are now fully integrated into the tracker window;
the axis scales can be changed and the zoom is fully functional. To enable the (still experimental)
Poincare plots, set the environment variable OPTIMX_POINCARE_PROTO=1
- Bug fix: fixed possible crash when the tracker message window is not enabled.
- Bug fix: improved lattice function stability test. Matrices (element type X) involving
externally supplied data are now automatically symplectified using Healy's algorithm.
This should insure that all matrices manipulated by the code are symplectic
to machine precision. Various internal consistency tests depend on this assumption.
- Added: experimental Poincare plot: to enable this function, set the environment variable OPTIMX_POINCARE_PROTO=1
- Added: saved tracker particle distribution may now optionally include information about lost particles.
- Added: tracker phase space plot axes limits may now be set manually by left clicking on either axis.
- Bug fix: Save positions (centroids) from the Tracker produces a file that never contains dpp even when selected.
- Bug fix: Save positions from the Tracker produces random crashes when multiple elements are selected.
- Bug fix: Reading a distribution (Tracker) fails for distributions with less than 6 particles.
- Bug fix: Saving centroids (Tracker) produces a file that does not include all selections.
- Bug fix: (periodic) Matrix stability test improperly applied to beamlines.
- Bug fix: Fixed internal array overrun issues with the optimizer (fitting) code that could produce an incorrect result
or cause a program crash.
- Bug fix: View|Integrals : the displayed tunes are incorrect. They differ slightly from the
(correct) ones reported by other commands (e.g. View|Functions).
- Bug fix: Periodic Beta function plot (ring mode) is not displayed when in space charge mode.
- Bug fix: Import from Madx: added support for thin dipole and quadrupole elements.
- Bug fix: Import from Madx: energy in the optim *.opt file was incorrectly set to total energy.
- Bug fix: Orbit Control Dialog: initial condition for path length not always correctly respected.
- Bug fix: Orbit Control Dialog: initial orbit conditions not correctly initialized when "read from file"
- Bug fix: an invalid pointer could cause the program to crash when invoking functions in the fitting menu.
- Bug fix: misc errors and typos in help files.
- Bug fix: (linux only) fixed issues with the browser invocation mechanism to view on-line help files.
On all platforms, the invoked browser is the default system browser as defined by the desktop enviroment
(e.g Windows, linux/GNOME or linux/KDE).
The user can override the browser invocation mechanism by setting the environment variable OPTIMX_BROWSER e.g.
setting OPTIMX_BROWSER=chromium would invoke chromium.
- Improvement: (View|Matrix): A checkbox has been added for the matrix symplecticity test. The test now includes
computation of the matrix determinant.
- Bug fix: ring integrals computation failing with a lattice containing rf cavity element(s).
- Bug fix: 4D initial conditions were sometimes corrupted. The problem was traced to improperly
- Bug fix: editor cursor not immediately visible when editor window gets mouse focus.
- Bug fix: additional issues with symplecticity of full 6D matrices for some elements.
- Bug fix: uncoupled sizes plot does not always display correct labels.
- Bug fix: electrostatic bend focusing strength incorrect in space charge mode.
- Bug fix: ds was not interpolated correctly within a tranverse corrector (however, ds was correct for the entire element).
- Bug fix: fixed typo in quadrupole edge aberration calculation.
- Bug fix: edge aberrations were not fully turned off when explicitly requested from the preferences menu.
- Change: quadrupole edge aberrations are on by default, however, they are now automatically turned off for quadrupoles shorter
than 1.0e-3 mm. Such quadrupoles are obviously not meant to describe physical elements. This change is a temporary measure until
a satisfactory mechanism to control the presence of edge aberrations is properly implemented and documented.
- Bug fix: the concatenation operator '&' appeared in concatenated strings.
- Bug fix: the thin dipole kick (multipole) matrix was incorrectly computed.
- Bug fix: when displaying a matrix the element names appearing in the range were not the full names.
- Bug fix: incorrect results for the s (longitudinal position) coordinate when tracking a particle in a pure bending magnet.
- Improvement: trajectory plot now displays s, the distance in cm w/r to the reference particle.
- Bug fix: An error encountered during a matching (fitting) computation could leave the program in
an error state with most menus disabled, and a program restart as the only option to recover.
- Bug fix: Random crash occured with matching constraints specified at intermediate location(s) along the beamline.
- Bug fix: Under some circumstances, the element index displayed by hovering the mouse over an element on a lego plot
did not correspond to its actual sequence index in the lattice.
- Bug fix: Combined function magnetic bends maps were not symplectic due to a sign error.
A symplecticity test has been added to the matrix command. The test results are performed and displayed for any matrix that
is computed with this command.
- Bug fix: The intensity/(dp/p)_rms plot associated with the tracker displayed erroneous values.
- Improvement: A mechanism was added to disable quadrupole aberrations due to fringe fields (experimental).
- [20171004 (revision 1)]
- Bug fix: the magnet edge element was also affected by an unitialized variable issue.
- Bug fix: fixed an issue with the multipole element that triggered an error in reference orbit mode.
- Bug fix: fixed issue that affected the aperture and pillbox cavity elements. Due to an incorrectly unitialized
variable, in some cases a particle loss could be flagged when in fact none occurred.
- Bug fix: recent changes inadvertently disabled measured data scaling.
- Bug fix: fixed various issues related to plotting of measured data.
- Bug fix: (linux) spawned browser used to display help files did not load the correct shared libraries.
- Bug fix: (linux) Added local version of libraries that may not be present on some linux distributions.
- Bug fix: (linux) Fixed a problem with localisation.
- The link to the windows installation package (20170703) was pointing to the wrong file.
- bug fix: edit external data function (from the plot menu) was broken.
- New feature: added a Copy to Clipboard function to plot menu.
This should allow copying and pasting of a plot window to applications that support
copying from the clipboard.
- bug fix: tune diagram plot very slow.
- bug fix: tune diagram line labels not displayed.
- bug fix: specified machine tune not displayed on the diagram.
- bug fix: Fitting (Matching) function random crash. Problem traced to an uninitialized
internal array variable.
- bug fix: View | Functions at Element reported incorrect tunes in ring mode.
- improvement: mutipole elements displayed on lego plot.
- bug fix: Multipole element transfer matrix was incorrect when computing a trajectory.
- bug fix: after recovering from encountering a syntax error in the lattice file, the
program would sometime introduce spurious text in the said file.
- bug fix: under win7, the windows installer was installing mismatched dlls. One symptom
was unexpected and somewhat random application crash when attempting a lattice parameter
- bug fix: the tabulated lattice functions from the space charge menu were computed without
taking space charge into account.
- bug fix: fitting function status window was not scrolling down to display latest output.
- bug fix: text editor related functions (save, cut paste etc) did not always reflect the
status of the editor window that has focus.
- bug fix: axis line width was not affected by the preferences with axes displayed in
- bug fix: fixed broken "Compress" function (which may be should be called "Condensate").
The fix also brings the function in sync with the last available OWL OptiM version.
- change: the plot menus (i.e menus to change axes limits, zooming etc) have been made mode-less.
- change: auto-repeat for ctrl-left/arrow is now enabled by default, but may optionally be disabled
from the Preferences menu.
- bug fix: When using the Ctrl-left-arrow/ Ctrl-right-arrow mechanism to vary parameters,
the lego plot was not rescaled when an element length is used as a varying parameter.
- improvement: Font size and legend widget are now smaller and more neutral in appearance.
- improvement: Ctrl-left-arrow/ Ctrl-right-arrow mechanism: auto repeating is now suppressed.
- bug fix: When using the Ctrl-left-arrow/ Ctrl-right-arrow mechanism if the "clear plots" control
option is not set, multiple traces appear, as it should. These traces were not deleted when
clear plot is subsequently set.
- bug fix: Edit | Steps Dialog : the dialog entries were not persistent.
- change: Exponential notation now accepted in the "Steps" dialog.
- bug fix: When using the Ctrl-left-arrow/ Ctrl-right-arrow mechanism to vary parameters,
all the curves were displayed independently of whether or not they were initially
un-selected (i.e. hidden).
- bug fix: apertures not redrawn correctly if a plot is refreshed.
- improvement: H and V apertures now displayed in distinct colors; they are also shifted horizontally
by 2 px on the display in order to make them distinguishable.
- improvement: plot preferences allow separate control of compact scales and legend.
- bug fix: a few accelerator key sequences were incorrect.
- added: 4D and Space Charge size projection plots now display apertures ( if there are some defined in the lattice).
- bug fix: although the uncoupled dispersion plot was correct, for any beamline containing rolled bends,
the tabulated values of the dispersion from the corresponding "functions" menu were incorrect.
- bug fix: more potential buffer overflow cases affecting the element name filter code.
- bug fix: buffer overflow in the element label filter code when the specified filter string exceeds 15 char.
- import from MadX: added support for solenoid, kicker, vkicker and hkicker (corrector); fixed some issues with
handling of bending magnet edges.
- new feature: Import from MAD-X: OptiMX can now import a file in MAD-X TFS (Twiss File Structure) format.
A TFS file is produced with a twiss command in madx. NOTE: This feature is still experimental; not all
elements types are supported yet; dipole edges may not be correctly handled.
- bug fix: Import from MAD8: the FINTX argument was incorrectly used for both edges of a dipole magnets.
- bug fix: added START and END markers to lattice/orbit tabular output to make it consistent
with the original OWL version.
- bug fix: the quadrupole vertical edge field map was incorrectly computed due to a typo.
- bug fix: fixed issue with plots - with autorescale disabled, interactively varying a parameter
after a zoom event would unexpectedly trigger a plot rescale.
- new feature: quadrupole element now includes edge field effects (tracking mode).
- bug fix: crash in import function.
- bug fix: when invoking "save as" *.txt on a plot, all data is now organized in a single multi-column table.
- bug fix: spurious characters in the editor window when invoking certain short cuts (e.g. Alt-B)
- improvement: import from mad : run the translation process to completion even when
elements of non-recognized types are encountered.
- bug fix: curve associated to the right end side vertical axis were wrongly associated to the left end
side axis after a plot redraw. This bug was an inadvertent side effect of recent internal changes
to the plot state logic.
- The documentation has been updated.
- bug fix: Import from MAD: the total and kinetic energies appearing in the dialog box were not synchronized
- bug fix: interactive variable increment/decrement function was not always working correctly with
a variable within the math header.
- bug fix: input problems with floating point numbers in scientific notation in some dialog boxes.
- improvement : a new compact mode for plots. In this mode, the scale labels are omitted and the
legends are located on the plot canvas. The compact mode can be selected as default from the
preferences menu. By saving the preferences, this mode may be set as the default.
- bug fix: a number of problems that resulted in inconsistencies between the selected plot options
and the actual plot state have been addressed.
- bug fix: plot state is preserved when the interactive decrement/increment variable feature is use.
This includes zoom status and curve selection.
- improvement: a newly-- created plot inherits the state of the most recent plot
of the same type in detached state when the latter exists.
- improvement: plot zoom may be constrained to a single axis (e.g. select zoom for the horizontal axis only).
Constrained vertical zoom is the default ( i.e. zoom is enabled only on the horizontal axis).
- bug fix: the file selection widgets will now open in the last directory that was accessed.
- bug fix: external data was not always getting immediately displayed.
- bug fix: error bars were not shown for external data.
- improvement: plots have no minimum size..
- bug fix: correctors, apertures and instruments are now shown on beamline lego plots.
- bug fix: apertures were not displayed correctly when plotting a centroid trajectory together with the beam envelope.
- bug fix: the editor find dialog box was modal. It is now non-modal.
- bug fix: under certain circumstances, the integer part of the tunes was reported incorrectly in the tables generated by
the View | Function, View4D |Functions or Space Charge|Functions
- improvement: the visible/hidden curve selection on a plot is now persistent. In the near future, all plot options, including
axes limits will be made persistent.
- improvement: added a Close Lattice command under the Space Charge Menu. This is a work in progress.
- bug fix: Allow gradient combined function bending magnet with zero bending field and non-zero gradient,
even if the latter is not physically realizable.
- improvement: Output windows now always raise after a command is executed.
- bug fix: Under some rare circumstances, possible crash when displaying Betas w/ space charge
- bug fix: Integrals: One line of output was missing (amplitude decrements/turn)
- bug fix: Tracker: Under Windows, the progress bar was displayed prematurely, before actual tracking started.
- bug fix: Tracker: progress bar displayed progress for the current turn instead of overall progress.
- bug fix: Tracker: progress bar cancel button did not work.
- bug fix: Tracker: fixed issue when tracking through zero strength bend elements.
- bug fix: fixed various issues/bugs related to degenerate elements with zero strength.
- bug fix: fixed possible crash when the first element is a "naked" bend i.e. not preceded by an edge.
- bug fix: the increment/decrement keys accelerators (ctrl-rightarrow and ctrl-leftarrow) did not behave as expected if the selected (highlighted)
argument value string included trailing spaces and/or a newline character.
- bug fix: fixed possible crash when invoking the increment/decrement keys accelerators on a counted out element.
- bug fix: new command line switch (-o) : initial coordinates were not read from the input file.
- NEW FEATURE: Added new command line switch (-o) to output design orbit in tabular form.
- Bug fix: fixed broken consistency check.
- NEW FEATURE: fixed plot scale limits may be changed by right-clicking on a plot scale.
- NEW FEATURE: the directory of the last opened file becomes the default. This setting is persistent.
- NEW FEATURE: editor highlighting may be configured from the preferences menu,
- Change: the element colors used in the lego plots match the colors used in the old OWL application.
- Bug fix: fixed issue that would often result in the space charge iteration failing for a case involving an uncoupled lattice.
- Bug fix: Commands under the space charge menu now correctly compute a periodic solution when the program is in ring mode.
- NEW FEATURE: added an option to select the algorithm used for periodic lattice functions w/space charge
(Broyden Hybrid or "damped" Newton).
- On Windows: now using Qt libraries 5.5
- NEW: periodic lattice functions in the presence of space charge are now computed using a
pseudo-newton iteration. Not surprisingly, convergence is vastly improved.
- Bug fix: Periodic (4D) dispersion was not computed correctly.
- NEW: More options to control the computation of periodic lattice functions in presence of
space charge. In particular, one may use, as an initial guess, the values specified in
the 4D beta block rather than the zero current solution.
- Bug Fix: The rescale energy function was aborting with an unrelated error message.
- NEW FEATURE: In Ring mode, the (4D) periodic lattice functions in the presence of space charge are now
computed self consistently, when the "beta functions" menu item is selected from the space charge menu.
Note that for now the corresponding beam sizes will be correct *only* if the lattice (beta)functions are
computed first. This issue will be addressed in a future update.
- Some fixes to "Import from MAD". More work is needed, but it is usable.
A more comprehensive update will be made available in the near future.
- Electrostatic quadrupole is now a valid element for a fit.
- Redo option added to edit menu.
- Bug fix: Element labels longer than 20 characters confuse the parser and trigger unexpected errors.
(Resolution: (1) The limit has been increased to 32 characters and (2) the first 31 characters
are significant when distinguishing between 2 labels; characters beyond that point are now properly truncated. )
- Bug fix: Close Trajectory does nothing (not hooked-up).
- Bug fix: Possible (albeit unlikely) crash: in a few instances the program logic allows an output window to be closed by the user while out put is
- Bug fix: Accelerator key binding for View | Trajectory
- Bug fix: Accelerator key Alt-Shift-T is not exclusive. Should be used for
Tools| Type Trajectory only
- Bug fix: Menu states for tracker: menus may be enabled/disabled when they should not be.
- Bug fix: Invert Lattice - inversion fails if lattice contains an electrostatic bend.
- Bug fix: some menu state issues.
- Bug fix: "Fit block" written at current cursor position rather than being appended to the lattice file.
- Bug fix: Space Charge Control : changed allowed range for integration step size.
- Bug fix: Menus states not fully consistent between the MSWindows and Linux versions.
- Change: ctrl-left/right arrow mechanism should now work with any of the arrow keys (including those on the numeric keypad).
- Bug fix: View4D | Functions at element : fractional tunes may be incorrectly reported.
- Bug fix: under some circumstances some menus may end up in a disabled state when they should not be.
- Bug fix: Edit|Invert Lattice - incorrect horizontal dispersion for the inverted lattice.
- Bug fix: View | Size : axis assignments and labels different from OWL OptiM
- Bug fix: View4d | Size Projections : automatic scaling sometimes fails, seemingly in a random manner.
- Bug fix: View4d | Size Projections & Space Charge | Projections : Plots not "attached" to the lattice window.
- Bug fix: File | SaveAs : *.opt extension not implicit when saving.
- Bug fix: editor window size and menus states incorrectly initialized when the program is invoked with an explicit (lattice) file argument.
- Bug fix: Space Charge | View Functions : an unitialized variable may cause incorrect values to be printed.
- Bug fix: Fit Twiss: The program did not always overwrite *all* the old parameters values with the
new (optimal) ones when requested.
- Bug fix: Fit Twiss: fractional tune was sometimes off by 0.5.
- Bug fix: Fit Twiss: tunes obtained from a condensed beamline where some segments had been replaced
by equivalent matrices were incorrectly compared to full (target) tunes.
- Change: User can now request that the full tune (integer + fractional part) be computed during a
fit (see View | Control dialog ).
- Bug fix: Possible crash when running Fitting | Fit Twiss when multiple element groups are defined.
- Bug fix: close symmetrical: revised, more general algorithm
- Bug fix: Missing field for initial Y angle in View|Orbit dialog.
- Bug fix: Energy not printed in View | Function at element.
- Bug fix: Possible crash when reference orbit mode is enabled.
- Bug fix: Possible crash when computing the trajectory in reference orbit mode.
- Bug fix: reported value for orbit lengthening was incorrect in some cases.
- Bug fix: Output of View |Close Lattice and View | Close Symmetrical was not displayed correctly in some cases.
- Bug fix: Bend element was not displayed on the lego plot if type was set to "D".
- Bug fix: more improvements to syntax error highlighting. Highlighted line was sometimes incorrectly displayed if
an element not defined in the element the list was used in the beamline.
- Change : control-right/left arrow : an element attribute is now incremented or decremented if the cursor is positioned anywhere
within the string that defines the attribute. Previously, increment/decrement worked only when some text within that
string has been selected (i.e. highlighted).
- Bug fix: Parsing fails on element of type W (General RF Cavity). An incorrect error message is displayed.
- Bug fix: improvements to syntax error highlighting (the highlighted line is not always the one where the error occurred.).
- Bug fix: Yet another minor fix to element name filtering. Filters starting with '*' e.g. "*c" did not return correct results.
- Bug fix: Improvements to function table formatting.
- Bug fix: Invoking View4D|Functions may cause a buffer overflow resulting in a program crash.
- Bug fix: Element name filtering did not work properly.
- Bug fix: When invoking View | Lattice, the default behavior is now to show the full element name, including the first character (element type identifier).
- Bug fix: More improvements to menu states.
- Bug fix: the connections to "Fitting Undo" menu and "Fitting Stop" functions were inverted.
- Bug fix: A syntax error or invalid statement within the element list might confuse the parser and/or cause a crash.
- Bug fix: Element type 'R' Electrostatic Bend/Generalized Wien filter - the element parameters specified in the
lattice file were not being passed correctly. The user can confirm with the
"Elisa.opt" example that
the program is now working correctly.
- Bug fix: Electrostatic bend (aka generalized Wien Filter) element is now displayed in lego plots.
- Bug fix: ring mode was not always honored when computing lattice functions.
- Bug fix: some menus were not properly enabled/disabled.
- Bug fix: attempting to open a lattice file from the recently opened list while one is already
opened will now prompt the user and offer, as an option, to open the file in
plain text mode.
- Bug fix: files opened in plain text mode did not appear in the recently opened files list.
- Bug fix: internal inconsistencies in the momentum compaction calculations caused the sign
of the reported value to be incorrect.
- Bug fix: the "fitting" (matching) function should now be working.
In previous versions, incorrect results were obtained and/or iterations failed to converge.
- Bug Fix: the convergence error on the momentum compaction factor was not
- Bug Fix: The "View4d|View Functions" action produces a table. For the last column
in the table, labeled -M56 (the transfer matrix element R56 = ds/(d dp/p) the displayed
value was incorrect. This is now fixed; in addition the program now displays M56 rather than -M56.
- The GUI state is now controlled with a formal state machine. This makes it easier
to control which menu(s) should or should not be enabled at any given time. Improvements
in this regard should already be noticeable.
- Bug fix: possible crash when attempting to display a track history plot prior
to running the particle tracker.
- Bug Fix: fixed a few misc potential array overruns.
- Bug Fix: array overrun in the code for Tools|Close Trajectory.
- Bug Fix: the Fitting command did not correctly overwrite the settings in the editor window
with the results of the optimization when requested by the user.
- Bug Fix: the Tools|CloseLattice command was also inadvertently broken by the 20150306 update.
- Bug Fix: the Fitting|Undo and Fitting|Stop functions were interverted. As a side effect, pressing
the stop button on the tool bar menu did not have the desired outcome.
- Improvements to the layout in text output windows; this is work in progress.
- New Preferences| Editor Preferences menu. The editor tab spacing can be set by the user.
- The GUI now remains responsive during a Fitting | Fit Twiss command. The output is also more readable.
- The GUI now remains responsive during Tracking (from a Tracker window). A progress bar is displayed.
- Minor tweaks to the preferences menu.
- The Detach button on the button bar now acts as an Attach/Detach toggle for the window that has focus.
- Bug Fix: under some circumstances, the attach/detach mechanism could cause the program to crash.
- Bug Fix: the View4D|Close4D command was inadvertently broken by the previous update.
- Missing filter dialog added to the View|Lattice command.
- New "Preferences" menu. The "Preferences" settings can be saved i.e. they are persistent.
- On Windows, the default editor font is more sensible.
- Bug Fix: Fixed issues with files generated from the "Saved As" menus. The graphics output now corresponds more
closely to the displayed plots. In addition, some control is provided from the Preferences Menu to adjust size and resolution if needed.
- Some issues with the Fitting command that could make the program crash have been fixed. The Fitting
command is still buggy and is currently under review.
- Internal changes in preparation for upcoming features (e.g. longitudinal optical functions).
- Bug Fix: Combined Electrostatic/Magnetostatic bend element (Generalized Wien filter) : R56 was not computed correctly
- Bug Fix: Conventional Magnetostatic bend element: some matrix entries had incorrect sign.
- Bug Fix: View|Matrix Menu: in some instances, the displayed transfer matrix entries were incorrect.
- Bug Fix: Program may crash when explicit transfer matrices (Element type 'X') are used.