Madgui

Latest version: v20.10.0

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 11 of 17

13.05.2018

- execute ``onload`` commands *after* loading models
- add coordinate axes and size indicator to floor plan
- use ``logging`` for warnings in emittance module
- use the global logger instead of personal loggers
- fix bug in TableView that can cause using the wrong quantity for unit conversion
- knobs are now exclusively global variables occuring in deferred expressions
- remove ``Knob`` class
- don't show units in globals dialog nor in matching dialog
- show globals names in uppercase
- use .ui file for mainwindow
- add UI for filtering shown log records in main window
- suppress MAD-X output by default
- refactor and cleanup TableView API considerably; the old ``ValueProxy``
classes are now replaced by ``Delegate`` classes that no nothing about the
individual cell and a ``Cell`` class that provides a context
- allow specializing virtually all data roles by passing an apropriate value or
callback function to ``ColumnInfo``
- unify and improve handling of checked columns
- remove config item for left/right number alignment
- introduce offsets for monitor calibration
- add naive way to define monitor offsets as the difference between model and
measurement
- keep monitor values in MAD-X units internally
- add units to column title for several table views
- add "Expression" column for elements
- highlight user-specified values using bold
- remove ``DataStore``, replaced by simplified TableView API and getter methods
- fix energy/mass UI units
- add "E_kin" field for beam
- fix exception in YAML params exporter
- fix bug in sectormap due to interpolate
- compute sectormap only once between changes, and only on demand
- fix missing redraw after ``twiss``
- fix editing ``kick`` (works only for HIT-model style angle/k0 definitions)
- remove ``Element.id`` in favor of ``.index``
- remove our own proxy layer for ``Element``, use the cpymad elements directly
- remove support for scalar names referring to vector components ("KNL[0]" etc)
- simplifications for ``ElementList`` and how elements can be accessed
- fix ``open_graph`` always showing "orbit" plot
- make the different beam diagnostic tasks part of a tabbed dialog,
increase code sharing
- rework the beam diagnostic widgets, layout, buttons, defaults
- remember plot window positions, sizes and graph names
- inline some initializer methods in ``model``
- use undo/redo mechanism and a corresponding history widget that fixes the
backup/restore mechanism used in several places

13.04.2019

- fix empty log after changing log level
- improve performance of log widget even after long use (35)
- add menu and config entry for setting a maximum log length
- fix log entries without specified color receiving the color from the
previous entry
- improve non-GUI mode app support
- make it possible to show the mainwindow on top of other windows, by turning
dialogs into top-level windows
- simplify Dialog instanciation and internal logic
- fix the "Calibrate" button in "orbit correction -> measured response"
widget. It was missing the implementation after an earlier refactoring
- implement notifyEvent in terms of eventFilter. This makes it possible to
these event notifications, and therefore prevent bugs due to calling dead
objects.
- turn shell from dockwidget into a normal dialog
- allow opening multiple console windows at a time
- replace qtconsole by the faster and more lightweight pyqtconsole
- this fixes an "AttributeError" when calling "exit()"
- also fixes "Execution aborted" error that prevents further statements from
being executed in the console after any exception has been raised in a
previous command
- work on improving documentation and cross-referencing
- use pint 0.9

12.03.2019

- drop python 3.4 support
- remove the "by delta" checkbox in orbit correction dialogs, always use the
measured monitor position if possible
- depend on cpymad 1.1.0
- auto-update plotted monitor markers
- fix Ctrl+P closing mainwindow
- handle menu hotkeys within all application windows
- add menu options and hotkeys to increase or decrease font size
- remember font size setting
- some bugfixes
- remove obsolute "Update" buttons from diagnostic dialogs

internal:

- move ORM analysis code its own independent package
- add PyQt5 as regular dependency (can automatically installed via pip)
- add tests on py35
- refactor modules in ``madgui.plot``
- remove context-managing ability from ``Session``
- replace ``pyqtSignal`` by our own lightweight solution (in preparation for
letting models etc be instanciated without GUI)
- not subclassing ``cpymad.madx.Madx`` anymore, moved functionality directly
to cpymad
- refactor/simplify caching classes
- make ``twissfigure`` module more independent from mainwindow/session and
simplify plotting API (standalone functions that can be used without madgui)
- refactor scene graphs, prepare for fully consistent management of all scene
elements via curvemanager dialog
- optimize performance when updating plot
- fix error while building the documentation
- start a developer's guide documentation section
- introduce a lightweight history type to manage history in several components
- use PyQt5 imports directly, remove the ``madgui.qt`` compatibilty module
- split up the correction dialogs into components, in preparation for a great
unification

11.12.2018

Updated dependencies:

- update to cpymad ``1.0.10``
- new dependency on scipy!

Bug fixes:

- fix a TypeError in beam tab widget
- fix bug that some widgets are shown only on second click
- explicitly specify the correct datatype for most editable tables
- fix exceptions in some import routines
- fix exception when starting without config file
- fix early exception on some systems due to encoding name

Misc:

- display sectormap and beam matrix as matrix-like table
- improve lookup logic for beam matrix
- remove the "Expression" column in favor of a composite edit widget
- some internal API changes
- add fitting API in ``madgui.util.fit``
- allow loading table files with text column
- infer missing ``S`` from ``name`` column loading table files
- autogenerate apidoc files during travis build
- update travis config for phased out support of container based infrastructure
- mark build as dev version by default (travis)
- recognize that consts cannot be used as knobs
- move load_yaml function to ``madgui.util.yaml``
- add simpler API for back-fitting orbit
- never require betx, bety when backtracking
- development on the ORM utility API

11.06.2018

- fix losing zoom/view on every curve redraw due to autoscaling
- fix AttributeError when trying to save session data. This appeared only if
online control was not connected and prevented saving the current model,
folder etc
- fix ValueError when computing relative path for a model on different volume
- let madgui have its own taskbar group on windows
- add preliminary window icon
- more consistent behaviour for model.get_transfer_maps
- prettify default output format for numpy arrays in python shell

element indicators:
- more distinctive lines for monitors
- flip displacement for pos/neg dipole strengths
- scale displacements/quadrupole colors according to magnet strength
- draw element indicators in background
- distinguish twiss curve by adding outlines
- set alpha=1 for element indicators
- add KICK marker within SBEND
- highlight selected and hovered elements

11.05.2019

- show UndoStack.macro invocations in the logging area
- add menuitem to reverse current sequence inplace (experimental)
- show DRIFT attributes as inherited
- start usrguide (very basic atm), document QT_SCALE_FACTOR
- add toolbar item to show/hide BPMs
- add Backend.read_params method to read all/multiple params
(requires hit_acs>=19.5.0)
- export full parameter dump in orm measurement procedure
- update to cpymad 1.2.0, MAD-X version 5.05.00

Page 11 of 17

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.