Changelog¶
1.6.0: 2023/09/20¶
This version fixes important compatibility issue with numpy>=1.24.0 and matplotlib>=3.7.0. The fix on numpy has been possible by using igor2 package instead of igor one. Below a list of the main changes divided by modules:
utils.navfile:
Fix for numpy>=1.24.0 by using astype(float) instead of astype(np.float);
Fix for numpy>=1.24.0 by using igor2 package instead of igor;
Because of igor2, use only one function for opening ibw or pxy files;
Fix loading nxarpes file when it is an hv scan and another axis is interpolated (e.g. the deflector).
utils.isomclass:
Add default in dataprocessing and updates the doc-strings.
utils.fermilevel:
Fix on indexes in align_to_same_eb, the data from a photon energy scan are now within the correct binding energy range.
navarp_gui.py:
Fix Artistlist object without remove method by using only ax.cla();
Prevent app crash when error in file loading, and add an error message in a window box.
docs:
Simplified installation procedure.
requirements.txt:
Replaced igor with igor2.
Specified matplotlib>=3.5.2,<3.8 , because of bug in 3.5.1, and issue on patches.Polygon in 3.8.
setup.py:
Replaced igor with igor2.
Specified matplotlib>=3.5.2, because of bug in 3.5.1.
.gitlab-ci.yml:
Using python 3.10 in GitLab CI/CD.
1.5.0: 2023/04/22¶
This version adds the support for MBS txt-file new format and for the ANTARES new one, in addition to fix important issue. Below a list of the main changes divided by modules:
utils.navfile:
Add energy_scale in yaml file for info on binding energy;
Fix new ANTARES nxs-file: rmv deflector nan, fix new mono name, load all analyzer params;
Fix MBS txt-file loader including new format.
navarp_gui.py:
Fix kxbinsSpinBox giving an int instead of float;
Use int instead of round because latter not always an int.
docs:
Add install click in basic installation procedure.
1.4.0: 2022/06/21¶
This version adds the support for nxs-Lorea single scan, MBS krx-file single image 32bit and SpecsLab Prodigy itx-file. Below a list of the main changes divided by modules:
utils.navfile:
Added support for MBS-krx single image 32bit acquisition;
Added support for nxs-Lorea single scan;
Added support for SpecsLab Prodigy itx-file.
utils.isocut:
Replaced np.sum with np.nansum to replace nan with zero in the sum.
docs:
Endorced matplotlib=3.5.2 installation instead of 3.5.1 because of a bug in pcolormesh, almost freezing the plot.
Updated the copyrights.
1.3.0: 2021/12/15¶
This version includes the possibility to rotate the isoenergy once shown, adds the loading support for MBS-krx single image acquisition and fix the loading of single scienta txt and hv_scan once loaded with a yaml-file. Below a list of the main changes divided by modules:
utils.navfile:
Added support for MBS-krx single image acquisition;
Fix load single scienta txt file;
Fix loading hv scan collection of files using yaml-file.
utils.isomclass:
Added rotate in isoenergy show method.
examples: * Added example on isoenergy rotation in graphene deflector scan.
1.2.0: 2021/11/23¶
This version includes many fix, a revision of the documentations and the following new features: (i) support to the new MBS-krx file the lorea NxARPES-file; (ii) the minimum gradient method as post-processing procedure. Below a list of the main changes divided by modules:
navarp_gui.py:
Added post-processing procedure with order=1, which is the min minimum gradient method.
utils.navfile:
Fixed I05 file loading;
Added new MBS-krx 64 bit file keeping the compatibility with the 32 bit one;
Added tht_an and kspace in the yaml-file for loading already transformed data.
utils.isomclass:
Transpose data in isok export as nexus.
1.1.0: 2021/04/11¶
This version includes very interesting new features as: (i) exporting the analyzed data on top or bottom panels as NXdata, or Igor Pro Text file, or HD5F; (ii) post-processing procedures as second derivative (in one direction), Laplace filter (if both direction are considered), curvature (only in one direction at the moment), Gaussian filter. Below a list of the main changes divided by modules:
navarp_gui.py:
Added post-processing procedure;
Added panel for exporting the data;
Use isomclass when possible;
Removed the boolean variable in the analyzer panel called deflector because useless.
Write efermi in the gui line edit when file loaded.
utils.navfile:
Removed the last angle value if angle array has the same length of energies;
Fixed I05 file loading;
Removed the boolean variable in NavAnalyzer called deflector because useless.
utils.isomclass (new file):
Fix isoenergy export as itx by transposing data.
Fix export as NXdata and Igor-pro text file.
Add postprocessing function and use it in all the isomclass.
Use laplace filter if sigma has two values and use curvature only for sigma with one value.
Rename file_path_* as file_path in all the export_as_* of the isomclass.
utils.kinterp:
In get_isoscan, use np.nan in fill_value instead of extrapolate because it is not correct to extrapolate data.
INTALLATION.rst:
The installation instruction of the master branch are now based on the PyPI package.
UPDATE.rst:
The update instruction of the master branch are now based on the PyPI package.
1.0.0: 2021/04/11¶
This is one of the most important release of NavARP, and the project is approaching to a more stable stage. This new version adds very important methods to the NavEntry class which are nicely shown in the now-available examples gallery! In addition, the loading speed has been improved for many text-based files input, and now the krx-MBS format is also supported. Below a list of the main changes divided by modules:
navarp_gui.py:
Added more colorscale maps;
After closing the program, its window size and position are saved (as a file called .navarp inside the user home directory) and they will be used to restore the program the next time it will be opened;
utils.navfile:
Added support for krx-MBS file format;
Added support for ibw file format as saved by Scienta-Omicron SES program;
Added support for txt-Scienta file format with 3 dimensions;
Added support for igor-pro text file format (saved as .itx or .txt);
Loading speed of about x3 faster for txt-based file input (txt from Scienta and MBS, sp2 from Specs);
Added set_efermi method to NavEntry to set the efermi of the entry object;
Added autoset_efermi method to NavEntry to automatically found the efermi by curve fitting;
Added plt_efermi_fit method to NavEntry to show the autoset_efermi results;
Added set_tht_an method to NavEntry to set the tht_an angle of the the entry object for k-space tranformation;
Added set_kspace method to NavEntry to set tht_an, phi_an, scans_0 and phi used in the k-space tranformation;
Added isoscan, isoenergy, isoangle and isok methods in the NavEntry calling the respectively classes in isomclass.
Extended dictionary in yaml-file, if loaded overwrite any attribute and efermi and tht_an can be also directly assigned.
utils.isomclass (new file):
Added IsoScan class with the methods to show in a plot, export as NXdata or Igor-pro text file, postprocessing as interpolation, second derivative and curvature;
Added IsoEnergy class with the methods to show in a plot, export as NXdata or Igor-pro text file, postprocessing as interpolation, second derivative and curvature;
Added IsoAngle class with the methods to show in a plot, postprocessing as second derivative and curvature;
Added IsoK class with the methods to show in a plot, export as NXdata or Igor-pro text file, postprocessing as second derivative and curvature;
utils.fermilevel:
Added fit procedure without using lmfit, lmfit is no longer required in navarp;
Removed all the previous functions based on lmfit.
utils.ktransf:
Removed all the deprecated functions for k-space transformation.
examples directory:
The old example directory now is called examples and contains the python script to get the gallery.
extras.simulation:
Added functions to simulate the graphene band structure probed by deflector and hv scans.
requirements.txt and setup.py:
Removed lmfit from the required packages.
0.18.0: 2020/04/11¶
This version gives the possibility to open four additional file formats.
navarp.py (now renamed as navarp_gui.py):
Added click command;
Import navarp.utils, so now navarp requires installation with pip before usage;
Renamed as navarp_gui.py so to avoid importing conflicts.
utils.navfile:
Added loading MBS A1Soft text-files;
Added case scan_type=deflector for Lorea by reading defl_angles.
setup.py:
Added click command.
0.17.0: 2020/08/14¶
This version gives the possibility to open four additional file formats.
navarp.py:
Added .navarp configuration file saved in the local user home
Set the initial default value of k-transf to be without photons contribution
utils.navfile:
Added loading Scienta-Omicron SES zip and text files;
Added loading Specs Prodigy sp2 files;
Added loading Igor-pro pxt files as saved by Scienta-Omicron SES;
Added loading folder with txt, sp2 or pxt files using instructions in a yaml file.
setup.py:
Improved requirements avoiding to install PyQt5 if in conda it is already present.
0.16.0: 2020/08/05¶
This version adds the sphinx-doc integrated in GitLab pages and utils.kinterp.
navarp.py:
Added azimuth scan_type
Added arctan2 value for sample alignment
Fixed Antares data including the case of MBSAcquisition_1
utils:
Added kinterp