Releases: OE-FET/customxepr
Releases · OE-FET/customxepr
v3.1.2
Added:
-
Added support to parse and plot the pulse sequence information stored in the Bruker DSC
file in the tables Psd1 to Psd36:>>> from customxepr.experiment import XeprData >>> dset = XeprData("path") >>> dset.pulse_sequence.plot() >>> print(dset.pulse_sequence.pulse_channels[5]) <PulseChannel(Psd6: +x)> >>> print(dset.pulse_sequence.pulse_channels[5].pulses) [<Pulse(position=276, length=4)>, <Pulse(position=676, length=44)>]
-
Added a keyword argument
settling_time
torunXeprExperiment
to wait between
individual scans. This can be useful in case of temperature fluctuations between
scans.
Changed:
- Remove custom
exit_customxepr()
function. Instead, close the console to exit
CustomXepr or runexit
when started from an IPython or Jupyter shell. - Increase default maximum cooling temperature to 20°C.
- Remember the location of the console window between restarts.
- Set current directory of Xepr to directory of last-saved data.
- The Qt event loop is no longer started on every import but just when actually starting
the GUI or plotting a figure. getValueXepr
no longer accepts a path argument.getQValueCalc
no longer saves two files but the mode picture only. The given path
must now be the full file path. The temperature data will now be saved together with
the mode picture.getQValueCalc
no longer accepts a temperature argument. Instead, the temperature
will be read from the Mercury if available.- The
ModePicture
class now accepts arbitrary metadata in dictionary form. This data
will be saved as tab-delimited metadata in the mode picture file.
Fixed:
- Fixed an issue when saving a dateset through Xepr when the path contains whitespace or
backslashes. The path is now quoted withshlex.quote
before being passed to Xepr.
v2.3.3
Changed:
- Small tweaks to dialog windows (update info, about window, etc.).
- Preserve order of entries in DSC files in Python 2. Previoursly, the order of sections
and parameter would be randomized when loading and saving a Bruker DSC files with
CustomXepr in Python 2.7. - Moved some custom widgets which are shared between
customxepr
,keithleygui
and
mercurygui
to a common submodulepyqt_labutils
.
v2.3.2
Fixes a critical errors when saving XeprData
to DSC files.
Added:
- Allow configuration of a custom SMTP server for email notifications in the config file
'~/.CustomXepr/CustomXepr.ini'. - Save the standard error from fitting the Q-Value as a new parameter 'QValueErr' in the
DSC file, if available.
Changed:
- Improved the usefulness of some log messages.
- Keep measurement logs for 356 days instead of 7 days.
Fixed:
- Fixed a bug in
XeprData
which would save y-axis and z-axis data files with the wrong
byte-order. Ordinate data and x-axis data was not affected. Xepr expects data files to
be save with little-endian byte-order. - Fixed a bug in
XeprData
when saving the 'PolyCof' parameter or other array data to
DSC files: The array shape would be incorrectly saved in the header (with row and
column numbers swapped). - Fixed a deadlock when removing an item from the result queue.
- Fixed an issue where the job status icons might not update until the user clicks on the
CustomXepr window.
v2.3.1
Added:
- Added a keyword argument
low_q
tocustomtune
to enable tuning with low Q-values (default:low_q=False
). - Added a keyword argument
auto_gf
tosetTemperature
to disable or enable automatic gasflow control (default:auto_gf=True
). - Added an keyword argument to
heater_target
to select a custom heater target file. - Double click on a result item in the GUI to plot it.
- Enable editing of ordinate data in
XeprData
instance.
Changed:
- Simplified access and modification of
XeprData
paramaters. Parameters can now be updated by assigning a value to their dictionary entry. - Updated default heater target table for MercuryITC.
- Delete log files older than 7 days on startup.
- Removed all Qt related depencies from non-GUI modules. This makes it easier to run CustomXepr in headless mode from the command line.
Removed:
- Deprecated
set_param
andget_param
methods ofXeprData
. Use thepars
attribute and with dictionary type access instead.
v2.3.0
This release focuses on under-the-hood improvements and provides significant speedups to the user interface (plotting data, deleting a large number of queued jobs, etc).
Changed:
- Reduced the startup time when no instruments can be found.
- Added info messages to the splash screen.
- Swtiched plotting library for Mercury ITC and Keithley 2600 from Matplotlib to pyqtgraph. This allows for smoother user interactions with plots.
- Bug fixes for PyQt 5.12.
- Performance improvements when deleting a large number of results or pending jobs: previously O(n^2), now O(n) performance.
- Better organization of code into submodules.
v2.2.2
Added:
runXeprExperiment
now accepts a path parameter. If given, the resulting data
will be saved to the specified path, togther with the last-measured Q-value
and temperature setpoint.- Added
XeprData
class to hold, read and save Xepr measurement data files.XeprData
provides methods to access and modifiy measurement parameters and to plot the data.
It is compalitble with all Xepr Experiment types, saved in the Bruker BES3T file format
up to version 1.2 (currently used by Xepr).
Changed:
- Tweaked icons in user interface.
Removed:
- Removed the option to specify a title when saving an ESR data file. The file
name is now always used as title. saveCurrentData
will be removed in a future version of CustomXepr. Use thepath
keyword ofrunXeprExperiment
to save the measurement data instead.
v2.2.1
Added:
- Job history now remains visible together with icons indicating the job status.
- Documentation is now available at https://customxepr.readthedocs.io.
Changed:
- Switched from custom TslSMTPHandler to python-bundled SMTPHandler for email
notifications. - Improved docstrings.
v2.2.0
Added:
- Added terminal / command line script "CustomXepr".
- Added confidence interval for Q-value calculation in ModePicture class.
- Window positions and sizes are saved and restored between sessions.
- Show errors during job excecution in GUI in addition to email notifications.
- Nicely colored tracebacks for error messages.
Changed:
- CustomXepr is now distributed as a python package and can be installed with pip.
Fixed:
- Fixed a bug that could result in values inside spin-boxes to be displayed without their decimal marker on some
systems. - Fixed a bug that could result in crashes after closing the keithley or mercury control windows.
Removed:
- Removed all ETA estimates for experiments.
v2.0.1
Changed:
- Moved default driver backends from NI-VISA to pyvisa-py. It is no longer necessary to install NI-VISA from National
Instruments on your system. - Moved drivers to external packages. Install with pip before first use.
- Improved data plotting in Mercury user interface:
- heater output and gasflow are plotted alongside the temperature
- major speedups in plotting framerate by relying on numpy for updating the data and redrawing only changed elements
of plot widget - allow real-time panning and zooming of plots
- Started working on Python 3 compatability.