Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove ability to plot non-meaningful data #34

Merged
merged 26 commits into from
Apr 8, 2022

Conversation

RastislavTuranyi
Copy link
Collaborator

@RastislavTuranyi RastislavTuranyi commented Feb 25, 2022

Description of work.

Fixes #24

Currently, it is possible to plot all variables in a NetCDF file, including those that have no use or even those that do not make sense, such as the description of the trajectory, or time against atomic mass. Several such variables have been prevented from being displayed in the list of variables. If anyone knows of other variables which should not be available for plotting, please let me know.

Furthermore, when data containing non-numeric values is attempted to be plotted, it now results in an error with a meaningful message without actually plotting the data.

To test:

  1. Load an .nc file containing a trajectory into 2D/3D Plotter.
  2. Observe that there are no variables titled 'description', 'step', or 'time' available for plotting.

Reviewer

Please comment on the following (full description):

Code Review
  • Is the code of an acceptable quality?
  • Does the code conform to the coding standards?
  • Are the unit tests small and test the class in isolation?
  • If there is GUI work does it follow the GUI standards?
  • If there are changes in the release notes then do they describe the changes appropriately?
  • Are the release notes saved in a separate file, using Issue or PR number for file name and in the correct location?
Functional Tests
  • Do changes function as described? Add comments below that describe the tests performed?
  • Do the changes handle unexpected situations, e.g. bad input?
  • Has the relevant (user and developer) documentation been added/updated?

Does everything look good? Mark the review as Approve.

@RastislavTuranyi RastislavTuranyi marked this pull request as draft March 1, 2022 16:41
@RastislavTuranyi RastislavTuranyi changed the title Handle Plotter1D issues with non-numeric data Remove ability to plot non-meaningful data Mar 2, 2022
@RastislavTuranyi RastislavTuranyi marked this pull request as ready for review March 2, 2022 15:50
RastislavTuranyi and others added 2 commits March 15, 2022 17:12
* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
@sanghamitra-mukhopadhyay
Copy link
Collaborator

MDANSE crashes while loading a trajectory file in NetCDF format (.nc file) on the NetCDF viewer. So the code cannot handle unexpected situation that is bad input. Please check.
The plotter works satisfactorily with valid input files.

@RastislavTuranyi
Copy link
Collaborator Author

Hi, can you please elaborate on how the crash occurred? I have successfully loaded all the files present in MDANSE/Data/Jobs_reference_data, which include both NetCDF trajectories and the results of analyses, without any problems. Even files that are not meant to be used with 2D/3D Plotter, such as .md or .py files, simply throw an error, after which I was able to continue using the software.

Thank you!

RastislavTuranyi and others added 2 commits March 16, 2022 21:23
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
@sanghamitra-mukhopadhyay
Copy link
Collaborator

I could load the .nc file of the converted trajectories, but still the field "configuration" and "gradient" are available for plotting and MDANSE crashes to try to plot this field with selected plotting options iso-surface or scaler field.

MDANSE also crashes while trying to plot "velocities" as scalar field.

The following field should be removed from plotting:

  • "box size"
  • "configuration"
  • "gradients",

Put the X axis label while plotting "kinetic energy" and "temperature" as either step or time.
The field "velocities" is a 3D parameter. It should be plotted separately, as velocities in the X, Y, Z directions in addition to surface plotting.

RastislavTuranyi and others added 2 commits March 16, 2022 22:57
* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
@RastislavTuranyi
Copy link
Collaborator Author

As you suggested, I have removed 'box size', 'configuration', and 'gradients' from plotting, so they won't appear as options at all.

Concerning the temperature and kinetic energy variables, this is an issue with the converter rather than the plotter. Therefore, it is best to create a new issue concerning that converter for fixing this bug. I have noticed that the new TRR reading in Gromacs converter is having this problem, so I will solve that in that branch/PR. Which converter did you use to discover this issue?

Lastly, about the velocities, what you are asking for seems to me like what the Scalar Field Plotter should do if it were not crashing MDANSE, right? Besides, does this variable even have any meaning to be plotted? Since it contains the velocities of every particle at every step, it seems weird to plot it in a 3D graph that does not include time. If were are removing the option to plot the positions and gradients, I think we should do so for velocities and forces. What do you think?

eurydice76 and others added 9 commits April 5, 2022 10:05
added info about the variables stored in a trajectory in MMTKTrajectoryInputData
Only the configuration (and velocities and gradients when available) …
* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
@sanghamitra-mukhopadhyay
Copy link
Collaborator

If velocities are plotted with respect to steps that is also fine, because we know the time information of each step. However, it would be better to have option to plot velocities with respect to time as well. Will you try to do that?

It would be good to plot directional positions and velocities with respect to steps or time, i.e., position_x wrt to steps etc. I assume these data are there in the converted Netcdf file.

@eurydice76
Copy link
Collaborator

eurydice76 commented Apr 8, 2022

I added some code in the commit 0830b01 to automatically filter out non numeric numpy data. Like so, no need to hardcode the variables that should be thrown out which is not nice on a maintainability point of view. However, I kept this part of your code as it is as I did not want to be too invasive. Feel free to change it now that I put a filter at a higher level.

@eurydice76 eurydice76 self-requested a review April 8, 2022 08:36
@RastislavTuranyi
Copy link
Collaborator Author

Eric, if this were just about removing the non-numeric data as it had been at the beginning, then your solution would be perfect. However, Sanghamitra has requested other variables to also not appear, which are all numeric and I don't think can be recognised by software as non-meaningful other than through hardcoding. I guess we could remove the plot of time against time by forbidding the plotting of all variables against themselves, but I have no other idea how e.g. box_size could be forbidden without affecting other 2D plots.

As for velocities, Sanghaitra, if you look at the size of the array that is plotted, you can see it plots every component of the velocity vector (x, y, and z) of each atom at each time-step. The velocities are not plotted with respect to anything, as can be seen from the empty 'Axis' column. I guess it might be easier for us to reach an understanding if we have a synchronous discussion, so we should discuss this in our meeting.
image

As for plotting position_x wrt to steps, it should be possible, but that's a completely new feature and outside the scope of this PR. Can you please open a new issue describing what you would like to be added? Thank you!

@eurydice76
Copy link
Collaborator

eurydice76 commented Apr 8, 2022

Sorry Rastislav, I have not read deeply the earlier discussion )-: So yes, you had no other choice than hardcoding the variable names. Anyway, the filter I added is still useful as a first prefiltering step as any non numeric data should be discarded at loading stage.

@RastislavTuranyi
Copy link
Collaborator Author

@sanghamitra-mukhopadhyay, I have removed velocities as well, so now there should not be any variables available from plotting when an MMTK NetCDF trajectory is loaded. Therefore, this PR should be ready to be merged. For the improvements to make these variables useful to plot, I have created #58 as we discussed.

@sanghamitra-mukhopadhyay sanghamitra-mukhopadhyay merged commit 472cc82 into develop Apr 8, 2022
sanghamitra-mukhopadhyay added a commit that referenced this pull request Jun 24, 2022
* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>
sanghamitra-mukhopadhyay added a commit that referenced this pull request Jun 24, 2022
* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>
sanghamitra-mukhopadhyay added a commit that referenced this pull request Jun 24, 2022
* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>
sanghamitra-mukhopadhyay added a commit that referenced this pull request Jun 24, 2022
* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>
sanghamitra-mukhopadhyay added a commit that referenced this pull request Jul 25, 2022
* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

* Release next (#117)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

* Fix the version name in fully released installers (#122)

* Fix windows installer version (#124)

* Try using /Y in move command

* Correct test branch name

* Don't use qoutes in if statement

* Correct testing

* Remove ' from comparison

* Remove testing

* Improve the parsing error messages (#128)

* Improve the parsing error messages

* Update CHANGELOG

* Reformat and expand README (#134)

* Decrease the minimum size of Quick View (#130)

* Decrease Quick view min size

* Use default size of 300 but keep 100 min size

* Update CHANGELOG

* Add CI/CD pipeline for Ubuntu 22 (#132)

* Add Ubuntu 22 to CI matrix

* Create separate CI for Ubuntu 22

* Remove python-dev from Ubuntu 22 CI

* Use full python path to run tests

* Investigate issue on Ubuntu 22 CI

* Correct mistake in previous investigation

* Use -n with conda install

* Add CD to Ubuntu 22 CI

* Try using ${{CONDA}} to downl/upload artifacts

* Try saving $CONDA to $GITHUB_ENV

* Fix yaml syntax

* Hardcode conda path

* Correct path syntax

* Alter deploy.sh with sed to correct paths

* Run new CD only on certain branches

* Update CHAGELOG

* Fix command line MDANSE on Windows (#133)

* Set paths in MDANSE_command_shell.bat

* Swap pip and conda installations in win CI

* Enable Windows deploy on this branch

* Reverse previous swap

* Alter PATH in site.py instead of batch files

* Remove Windows site.py and use .pth instead

* Remove deployment on this branch and update CHANGELOG

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>
sanghamitra-mukhopadhyay added a commit that referenced this pull request Jul 27, 2022
* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

* Release next (#117)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

* Fix the version name in fully released installers (#122)

* Fix windows installer version (#124)

* Try using /Y in move command

* Correct test branch name

* Don't use qoutes in if statement

* Correct testing

* Remove ' from comparison

* Remove testing

* Improve the parsing error messages (#128)

* Improve the parsing error messages

* Update CHANGELOG

* Reformat and expand README (#134)

* Decrease the minimum size of Quick View (#130)

* Decrease Quick view min size

* Use default size of 300 but keep 100 min size

* Update CHANGELOG

* Add CI/CD pipeline for Ubuntu 22 (#132)

* Add Ubuntu 22 to CI matrix

* Create separate CI for Ubuntu 22

* Remove python-dev from Ubuntu 22 CI

* Use full python path to run tests

* Investigate issue on Ubuntu 22 CI

* Correct mistake in previous investigation

* Use -n with conda install

* Add CD to Ubuntu 22 CI

* Try using ${{CONDA}} to downl/upload artifacts

* Try saving $CONDA to $GITHUB_ENV

* Fix yaml syntax

* Hardcode conda path

* Correct path syntax

* Alter deploy.sh with sed to correct paths

* Run new CD only on certain branches

* Update CHAGELOG

* Fix command line MDANSE on Windows (#133)

* Set paths in MDANSE_command_shell.bat

* Swap pip and conda installations in win CI

* Enable Windows deploy on this branch

* Reverse previous swap

* Alter PATH in site.py instead of batch files

* Remove Windows site.py and use .pth instead

* Remove deployment on this branch and update CHANGELOG

* Update __pkginfo__.py

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>
sanghamitra-mukhopadhyay added a commit that referenced this pull request Aug 3, 2022
* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Merge develop into release-next (#121)

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Merge develop into release-next (#123)

* Fix the version name in fully released installers (#122)

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Update setup_ci.bat

* Update setup_ci.bat

* Update setup_ci.bat

* Update setup_ci.bat

* Merge develop into release-next (#125)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

* Release next (#117)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading fro…
@RastislavTuranyi RastislavTuranyi added enhancement New feature or request GUI Something regarding the graphical user interface labels Sep 2, 2022
sanghamitra-mukhopadhyay added a commit that referenced this pull request Apr 24, 2023
* Update README.md

* Update README.md

* CASTEP converter bugfix (#16)

* Fix bug in CASTEP converter so that now it works with a header of any length

* Add comments and docstrings. Make code comply with PEP8

* Edit TestGenerator so that it creates two tests for CASTEP to test files with different lengths of headers

* Repair FunctionalTests/Jobs/AllTests by making test_BuildJobTests compatible with it.

* Add comments to edited files

* Increase modularity of BuildJobTests and move the special implementation for CASTEP converter from __name__=__main__ block to JobFileGenerator class.

* Include failsafe into MDFile (CASTEP) to cach unexpected headers

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

* Merge develop into release-next (#121)

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Fix the version name in fully released installers (#122)

* Merge develop into release-next (#123)

* Fix the version name in fully released installers (#122)

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Fix windows installer version (#124)

* Try using /Y in move command

* Correct test branch name

* Don't use qoutes in if statement

* Correct testing

* Remove ' from comparison

* Remove testing

* Improve the parsing error messages (#128)

* Improve the parsing error messages

* Update CHANGELOG

* Reformat and expand README (#134)

* Decrease the minimum size of Quick View (#130)

* Decrease Quick view min size

* Use default size of 300 but keep 100 min size

* Update CHANGELOG

* Add CI/CD pipeline for Ubuntu 22 (#132)

* Add Ubuntu 22 to CI matrix

* Create separate CI for Ubuntu 22

* Remove python-dev from Ubuntu 22 CI

* Use full python path to run tests

* Investigate issue on Ubuntu 22 CI

* Correct mistake in previous investigation

* Use -n with conda install

* Add CD to Ubuntu 22 CI

* Try using ${{CONDA}} to downl/upload artifacts

* Try saving $CONDA to $GITHUB_ENV

* Fix yaml syntax

* Hardcode conda path

* Correct path syntax

* Alter deploy.sh with sed to correct paths

* Run new CD only on certain branches

* Update CHAGELOG

* Fix command line MDANSE on Windows (#133)

* Set paths in MDANSE_command_shell.bat

* Swap pip and conda installations in win CI

* Enable Windows deploy on this branch

* Reverse previous swap

* Alter PATH in site.py instead of batch files

* Remove Windows site.py and use .pth instead

* Remove deployment on this branch and update CHANGELOG

* Update setup_ci.bat

* Update setup_ci.bat

* Update setup_ci.bat

* Update setup_ci.bat

* Merge develop into release-next (#125)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to …
sanghamitra-mukhopadhyay added a commit that referenced this pull request Apr 25, 2023
)

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

* Preparing for the Release 1.5.0 (#115)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Change gui label to 'xtc and trr file'

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add tests

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remove unused parts of trr module

* Add tests

* The coords, velocities and forces arrays are now casted to float64

* Clean up Gromacs.py of git dif lines

* Update tests to check gradients

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Use existing vars to calculate tcf and rdf

* Fixed bug in writing quaternions,com and fit variables in rbt job

* Write units in trajectory files (#72)

* Fixed typo in Converter.py file

* Fixed typo in Converter.py file

* Securized the code for writing units in the trajectory file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Added better securization around the adding of units in Converter.finalize method (#73)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* MD compliant plotter (#61)

* Added a new mode for viewing 3D data

* Added brand new plugin for viewing trajectory related variables

* Added support for unit in TrajectoryViewer plugin
cosmetic change in DCDConverter file

* Fix bug with 2D slice

* Fixed windows-specific bug when doing scalar plot

* Added the possibility to remove lines for the TrajectoryViewer plugin

* Fixed buggy behavior with the legend

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Make the names of output files more descriptive (#60)

* Change output file default name in GUI

* Implement incrementing filename for job output

* Modified the algorithm for checking already existing filename

* Added a mechanism for guessing the output filename for converter analysis

* Removed print

* Added a new configuration/widget for setting single output file

* Update headers of new files to comply with #47

* Update configurator docstrings

* Removed useless checking of datakey in set_data method

* Renamed OutputFile configurator and widgets to SingleOutputFile

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Add continuous integration using GitHub actions (#20)

* Replace buggy py2app qt recipes with correct ones

* Change the replacement qt files to always return None

* Change qt5.py into a dummy function

* Make qt6 a dummy too

* Truly make qt6 a dummy too and add netcdf investigation

* Place change_dylib_path.sh code into deploy_old.sh

* Add investigation and ' to deploy_old.sh

* Add more investigation

* Add more investigation

* Try using -fv with problematic command

* Stop using wildcard with cp

* Deploy for different ubuntus separately

* Deploy for different ubuntus separately

* Correct artifact name

* Increase investigation

* Copy libhdf5 files into artifacts

* Try removing arguments from build.py

* Restore arguments to build.py

* Search ubuntu for libsz

* Copy the whole x86_64-linux-gnu file

* Use argparse in build.py

* Only parse known arguments

* Revert, instead hardcode py2app arg and change depends for deb

* Try several things and fix syntax error

* Correct paths and try sudo

* Use source and include parameters

* Add osx sphinx investigation and copy libnetcdf on ubuntu

* Add more investigation about sphinx

* Correct syntax and upload log

* Fix yaml indentation

* Correct path to sphinx logs

* Add further investigation

* Always run the copy of sphinx log

* Disable the failing sphinx usage for now

* Place ' around args

* Remove args completely from build.py

* Specify version of docutils

* Move scripts to the same run as build.py

* Create different installers for different versions of ubuntu

* Enable ubuntu

* Correct ubuntu and use getenv

* Enable ubuntu

* Use sys.argv

* Try solutions to the build.py issue

* Try using --argv-inject

* Try ways to use --argv-inject correctly

* Print sys.argv

* Use argv correctly

* Remove the extra MDANSE from icon path

* Correct path to icons

* Create directory before creating file inside it

* Add postinst and create installer for ubuntu 21

* Correct postinst path and remove rm

* Correct artifact name for ubuntu 21

* Add mising su privilege

* Add missing su privileges

* Correct ubuntu version, sed permanently and correct postinst

* Create Contents/MacOS directory before symlinking into it

* Add missing files

* Expand amount of places where env vars are exported on ubuntu

* Add missing '

* Correct postinst type of ' on ubuntu

* Correct env var name

* Copy dylibs

* Add investigation

* Add investigation and add files for fake osx deploy

* Correct mistakes and add investigation

* Correct path

* Copy libwx

* Correct typo and dist dir path

* Remove unmounting and add sudo

* Provide correct permissions and investigate

* Add investigation

* Add sudo everywhere in old

* Use mv -T to force rename

* Remove -T

* Use matrix for osx CI and add investigation

* Create bin in resources first

* Add missing sudo

* Add more sudos

* Change python link name

* Add more sudos

* Add investigation and use the list rather than ls list

* Use full path with GITHUB_WORKSPACE for wx dylibs

* Remove quotes around the dylib path

* Add investigation

* Use complete full path

* Use sudo inside script rather than sudo script

* Add investigation and use * instead of @

* Use cd and then get the list

* Add investigation, add files to fake and add sudo

* Remove sudo and investigation and use more complete path

* Correct paths

* Correct paths

* Add investigation

* Use sudo hdiutil create

* Remove unmount and -debug

* Increase projected dmg size and remove untarred artifacts

* Try ways to decrease disk size

* Upload dist folder

* Delete instead of uninstall and use df -h

* Remove upload

* Add investigation to create_dmg

* Move dylibs rather than copy

* Set -size to be 200 larger than expected

* Add sudos

* Remove deploy_osx and investigation and export mdanse_dmg

* Search for libint*

* Dont copy python dylib

* Include libint dylib and deploy on macos 11 too

* Correct yaml syntax

* Correct artifact names

* Change libintl path in libpython2.7.dylib

* Comment out _boot_multiprocessing in __boot__ and add investigation

* Correct python dylib pointer on macos11

* Relink dylibs amond each other, add investigation and cp not mv

* Replace ls with find for investigation

* Also change wx dylib links. Add investigation

* Change dylib link for all wx dylibs

* Remove ' from cp with wildcard

* Change dylib links for libwx in lib-dynload

* Search for libz and libc++

* Include missing dylibs and change rpath to executable path

* Correct typos in dylib names

* Actually correct typos in dylib names

* Investigate hashlib and don't copy libz and libc++ on 11

* Try unlinking openssl and correct paths

* Only unlink on macos10.15

* Correct placements of conditional statement

* Investigate openssl on mac11

* Try specifying openssl version

* Link more dylibs and try copying libssl

* Add investigation and try buildin app with --includes openssl

* Investigate ssl locations

* Relink _hashlib.so to correct dylibs

* Relink vtk so files inside lib-dynload

* Change vtk rpath instead

* Try relinking other files, remove extra python and link dylibs rather than copy

* Correct issue

* Try different source for wxpython

* Try different source for conda wx

* Revert to previous provider and correct cp paths

* Correct path

* Revert to original provider

* Investigate wx version

* Use -r to copy egg info

* Build wxpython from source

* Use sudo

* Only build from source on 10.15

* Try wx from travis on mac11

* Disable fail fast

* Copy over files on mac11

* Move vtk and wx installation to deploy and use conda wx3

* Correct yaml syntax

* Remove wx installation from ci_osx

* Replace mdanse_gui test with running the app at the end of deploy

* Correct copying and remove ln

* Relink .so files in lib-dynload/wx

* Make PlatformError in create_directory more descriptive

* Correct yaml syntax

* Test bundled python and add bash script to run it

* Correct sed command syntax

* Use echo >> instead of sed -i

* Improve script and make executable and bundle bin/python

* Remove extension from script

* Correct script name

* Make python2 behave like an actual python

* Correct script and remove bin/python

* Correct windows desktip shortcut icon path

* Delete unused files

* Try using  for links in windows nsi

* Copy the MDANSE shortcut to desktop

* Clean up yaml and scripts

* Try out cache action for vs2008

* Try removing ' from around path

* Remove ' from around paths

* Set VS90CMNTOOLS

* Append PATH and use cmd

* Cache sdk 5.0 too

* Cache sdk 5 and 6 and set windowssdkdir

* Correct mistakes and search for mingw

* Correct yaml syntax

* Use cmd for test

* Use powershell ls for test

* Try using mingw and editing vcvarsamd64

* Use custom vcvarsamd.bat and set env vars manually

* Correct mistake and set python vars

* Try vs for python2.7

* Add investigation

* Cache separately

* Correct yaml issues

* Correct yaml issues

* Run restore after retrieving from cache

* Try full install after restoring cache

* Try vc for python2.7

* Try using setuptools

* Run vcvarsall too

* Add paths

* Remove restoring VS2008

* Correct name

* Save the msi to github workspace

* Remove id

* Restore vs2008 from cache

* Bring the experimental win CI to be official

* Try removing .net framework from caching

* Add postrm script for ubuntu

* Run vcvars before scientific and cache CI result

* Try replacing distutils with setuptools in scientific

* Replace scientific setup.py with edited one

* Install VS2008 if python could not be restored

* Correct != into ==

* Change key name from python to mdanse

* Remove old step

* Use full path to python

* Use '

* Put the problematic line on a separate line

* Fix the yaml syntax

* Use full path to all pythons

* Try running macos tests directly

* Unpack list for os.path.join in BuildJobTests

* Correct BuildJobTests.py to get right path to ref data

* Make AllTests.py be able to be run from anywhere

* Use different approach

* Create the test files inside Jobs/

* Put test file name as full path

* Use os.chdir inside all test scripts

* Add usage instructions to mac

* Bring the README to workspace

* Correct readme path and try different logic

* Correct yaml indentation

* Correct yaml syntax

* Remove extra MDANSE build install step

* Make mdanse scripts able to be run by themselves

* Correct ubuntu dependencies and ensure LD_LIBRARY_PATH is set

* Correct sed syntax

* Remove superfluous netcdf caching

* Correct python syntax edited into mdanse scripts

* Correct windows netcdf download url

* Use older py2app and try != true instead of == false

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Add sudo apt-get update on ubuntus

* Update maintainer/publisher information

* Remove this branch from deploy list

* Remove dangerous MacOS parse_command_line.py

* Remove the copying of removed script

* Remove deployment on this branch

* Fixed regression due to recent merge

* Don't subtract 1 from pdf during tcf_intra calculation

* Regenerate test reference file using current code

* Fixed buggy DL_POLY trajectory

* Added mdanse_job application for running a job through a stand-alone dialog (#65)

* Added mdanse_job application for running a job through a stand-alone dialog

* Added more info to mdanse_job script help
Fixed typo with Doc/conf_api.py file

* Revert changes to Doc

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix broken tests (#66)

* Fix CASTEP test by removing gradients variable

* Temporarily disable pdf tests

* Change BuildJobTests to ignore T and KE

* Use try finally when opening NetCDF files

* Don't compare velocities in DFTB and Forcite

* Make DFTB and Forcite tests proper by generating new references

* Delete copies even when exception occurs

* Fix issues due to output_file vs output_files

* Fix bug with triclinic unit cells

* Fixed regression in ConfigurationPanel (#84)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Use netCDF4 as the NetCDF dependency instead of Scientific.IO/NetCDF (#81)

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Replaced Scientific.IO.NetCDF dep by netCDF4

* Fixed regression

* Install netCDF4 during CI/CD pipeline

* Correct windows netCDF4 path

* Copy netCDF4 contents on ubuntu ci

* Add investigation to CI/CD

* Set HOME env var before using it on win

* Correct netCDF4 path on ubuntu and mac

* Copy .so libraries on unixes

* Add investigation to windows pipeline

* Investigate RUNNER_TOOL_CACHE on win CI

* Correct netCDF4 destination path on win

* Separate conda calls on win and copy libmfhdf on unix

* Copy over libdf.so on unix pipelines

* Remove leadin \ from xcopy source on win pipeline

* Create destination dirs on windows pipeline

* Edit paths on ubuntu

* Investigate KeyError on win pipeline

* Copy netcdf and hdf5 libs on ubuntu

* Try importing problematic configurator directly

* Add investigation to pipelines

* Correct yaml syntax

* Correct yaml syntax

* Copy msvc dlls from conda to main on win

* Copy netcdf dlls into python\DLLs on win

* Copy netcdf dlls into netCDF4 directory

* Clean up pipelines

* Fix broken tests

* Handle possible IOError in tests

* Handle IOError on monoprocessor too

* Run AllTests.py with sudo

* Relocate test output file for Test_dp

* Add forgotten \n to BuildJobTests

* Correct test generation for dp on linux

* Use repo directory for dp output path on linux

* Alter BuildJobTests to output to reference dir

* Clean up pipeline and BuildJobTests

* Use context manager in test_gromacs_trr

* Use context manager in PlotterPlugin

* Add forgotten context managers to test_trr

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fixed bug when closing partial charges plugin (#85)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add advanced units manipulation and definition options (#78)

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added Units module for handling units

* Advances in integration of Units module in the plotter

* Added app for editing  units
The plotter accepts now equivalent units (e.g. THz/eV)
Added icon ofr units

* Removed external dependencyy to magnitude project

* Fixed conflicts

* Added the possibility to add an unit from the units editor

* Fixed bug when closing the UnitsEditor dialog

* Install pyyaml on CI/CD pipeline

* Added docstrings and more unit tests to Units module

* Added new equivalences
Added warning when adding unit in the unit editor

* Added new equivalences

* Updated the units editor dialog

* Big fixed when multiplying or dividing unit by another

* Added J_per_mole unit

* Change q unit from inv_nm to 1/nm
Big fixed in the unit parser

* Bug fix with inv_nm factor in Units.yml

* Added unit test for prefixes

* Bug fixed in __ipow__ function

* Removed old dependencies to magnitude

* Fixed regression in Forcite converter

* Fixed bug in SFFSF analysis

* Added akma_time in available units

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix script installation (#82)

* Remove setuptools and enable CD

* Correct branch name in CI.yml and try running VS9 vcvars

* Call correct vcvars on CD too

* Use setuptools on runners only, keep only distutils in default setup

* Remove this branch from contains() calls

* Add abstraction for plotter data (#86)

* Added abstraction layer for NetCDF data

* Added missing method for closing data properly

* Added missing module

* Added _IPlotterVariable interface and NetCDFPlotterVariable concrete class

* Added comments to PlotterData module
Fixed bug in load_data

* Fixed bug with axis names

* Fixed regression in PlotterPlugin.py

* Flattened the name of the variable in PlotterData
Added Path columns to datalist in Plotter

* Implement context manager for PlotterData classes

* Removed __del__ method of _IPlotterData class

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update apt-get on ubuntu CD (#77)

* Make MacOS CI fail when tests fail (#88)

* Move MacOS tests to yaml

* Add bug to test changes

* Remove testing bug

* Fix the installation of netCDF4 on MacOS CI/CD (#90)

* Investigate the issue

* Remove leading / when copying netcdf4

* Remove investigation

* Correct MacOS CI artifact upload mechanism (#92)

* Alter yaml syntax for MacOS if

* Try different syntax change on MacOS CI

* Use the working syntax everywhere

* Add interpolation to ccf (#35)

* Add interpolation to ccf

* Bug fixed with velocities array

* Use a sparse array for setting the velocities in case when interpolation is set

* Bug fix when setting the velocities sparse array

* Start rewriting

* Implement slower but memory-efficient interpolation

* Implement disk interpolation

* Add another disk interpolation implementation

* Introduce chunking

* Add vel preloading to disk interpolation

* Error out if 'preload' == 0

* Delete self._velocities at start of finalize()

* Close netcdf at start of finalize()

* Handle os.path.join error

* Use unique name for each ccf instance

* Improve name readability and change defaults

* Fix bug caused by using old name

* Add mode that selects appropriate mode

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Fix lm and lux units (#96)

* Fix AtomsListPlugin (#100)

* Correct AtomsListWidget method name

* Disable SpinCtrl instead of hiding it

* Remove default value from msg_set_ud (#101)

* Added support for HDF5 format for output files (#94)

* Addd support for HDF5 format for output files

* Install h5py and enable deploy win

* Copy conda hdf dlls, libs etc

* Alter PATH in win launcher.bat

* Correct path in .bat and try setting path

* Copy all conda dlls etc

* Use conda only for win CD

* Correct numpy installation on win CD

* Use conda numpy in win CD

* Add testing to win CD

* Add more testing to win CD

* Set paths on win CD

* Use setup-miniconda action in win CD

* Adapt win CD to setup-miniconda action

* Add vcvars to PATH on win CD

* Call vcvars in win CD

* Use setuptools in ScientificPython win CD

* Use setuptools for mmtk on win CD

* Added hardcoded netcdf.h path to mmtk setup.py

* Add investigation to win CD

* Copy netcdf.h directly to include on win CD

* Try copying Scientific\* to include

* Look for missing header files

* Try setuptools and distutils for Scientific

* Remove investigations from win CD

* Rework win CI/CD to use conda

* Only use conda netcdf-c files

* Alter Scientific setup.py to correct lib path

* Split windows CI tests

* Use full python path to run tests

* Use setuptools and distutils for mmtk

* Use different trajectory in TestConfigurator.py

* Change caching key

* Add investigation to win CD

* Add investigation to windows CI

* Try setting use-only-tar-bz2 on conda setup

* Change setup-miniconda interaction with caching

* Add investigation to windows CI

* Try running 'conda activate'

* Try different setup-miniconda configuration

* Try different setup-miniconda configuration

* Replace conda with mamba

* Specifiy python 2.7.18 for mamba

* Change conda and cache interaction

* Cache only packages

* Cache all of site-packages

* Hardoce conda path for cache

* Use conda only for h5py and netcdf4

* Change cache key

* Remove python caching on Windows

* Correct artifact name on win CD

* Correct wrong shell usage

* Clean up environment before packaging

* Use -y with pip uninstall

* Disable windows CD on this branch

* Enable MacOS and Ubuntu CI

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Use only centre of masses selection for COM calculation (#102)

* Use distutils in Ubuntu CI/CD

* Restore if statements in CI.yml

* Fix MacOS CD (#103)

* Fix type in MacOS deploy.sh

* Correct order of MacOS deploy instructions

* Use -y with pip uninstall

* Fix Toggle toolbar option (#108)

* Use ToolBar.IsShown()

* Keep the main window size constant

* Update CHANGELOG (#104)

* Update CHANGELOG

* Update CHANGELOG to include #48

* Fixed bug when building clusters in XTD parser (#106)

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* Install psutil in CI/CD (#109)

* Update authors information (#112)

* Add path information to NetCDFInputData (#114)

* Create Path column only in standalone plotter

* Implement recursive var search in netcdf

* Refactor to use variable wrappers

* Refactor into multiple files

* Set .nc and .h5 formats as default for browsing in plotter (#116)

Co-authored-by: RastislavTuranyi <78977041+RastislavTuranyi@users.noreply.github.com>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

* Merge develop into release-next (#121)

* Update README.md

* Update README.md

* Update README.md

* Fix version names in installers (#120)

* Correct branch names in setup_ci scripts

* Fix release-next case

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Fix the version name in fully released installers (#122)

* Merge develop into release-next (#123)

* Fix the version name in fully released installers (#122)

Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>
Co-authored-by: gonzalezma <gonzalezm@ill.fr>
Co-authored-by: franzlang <17494620+franzlang@users.noreply.github.com>

* Fix windows installer version (#124)

* Try using /Y in move command

* Correct test branch name

* Don't use qoutes in if statement

* Correct testing

* Remove ' from comparison

* Remove testing

* Improve the parsing error messages (#128)

* Improve the parsing error messages

* Update CHANGELOG

* Reformat and expand README (#134)

* Decrease the minimum size of Quick View (#130)

* Decrease Quick view min size

* Use default size of 300 but keep 100 min size

* Update CHANGELOG

* Add CI/CD pipeline for Ubuntu 22 (#132)

* Add Ubuntu 22 to CI matrix

* Create separate CI for Ubuntu 22

* Remove python-dev from Ubuntu 22 CI

* Use full python path to run tests

* Investigate issue on Ubuntu 22 CI

* Correct mistake in previous investigation

* Use -n with conda install

* Add CD to Ubuntu 22 CI

* Try using ${{CONDA}} to downl/upload artifacts

* Try saving $CONDA to $GITHUB_ENV

* Fix yaml syntax

* Hardcode conda path

* Correct path syntax

* Alter deploy.sh with sed to correct paths

* Run new CD only on certain branches

* Update CHAGELOG

* Fix command line MDANSE on Windows (#133)

* Set paths in MDANSE_command_shell.bat

* Swap pip and conda installations in win CI

* Enable Windows deploy on this branch

* Reverse previous swap

* Alter PATH in site.py instead of batch files

* Remove Windows site.py and use .pth instead

* Remove deployment on this branch and update CHANGELOG

* Update setup_ci.bat

* Update setup_ci.bat

* Update setup_ci.bat

* Update setup_ci.bat

* Merge develop into release-next (#125)

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* 28 enhance simple help (#54)

* Replaced plain text window by an HTML window for better reading experience of the simple help

* Add superscipts

* added a missing superscript in simple help html file

Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Add User Guide DOI to GUI help menu (#49)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Replace outputData reference with correct variables

* Remove ability to plot non-meaningful data (#34)

* Catch the TypeError and abort autofit

* Notification is shown when user initiates invalid autofit

* Handle TypeError in add_offset method

* Partially clean up code to increase PEP8 compliance

* Revert and instead stop before plotting

* Remove certain variables from plotting

* Fix Elements Database Editor bug (#33)

* Correct bug and change sizer and panel usage

* Clean up code to PEP8 standard

* Reorganise changed code to match the previous style

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Correct macro name (#37)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Update AUTHORS

* Update AUTHORS

* Use forces instead of gradients (#39)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement rdf and tcf inside pdf (#40)

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Fix normalisation in GACF and PACF (#36)

* Fix gacf and pacf normalisation

* Use normalize funtion in gacf and pacf

* Fix bug by removing intermediary variable

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Prevent plotting of new variables

* only the congiguration (and velocities and gradients when available) are written in the output trajectory

* bug fixed with the output of a few trajectory converters

* added info method to NetCDFInputData
added info about the variables stored in a trajectory in MMTKTrajectoryInputData

* added time to the variables to be written in output trajectory

* bug fix with missing time as output variable for a few converters

* Add time to Gromacs and fix typo

* 42 improve pane layout in plotter (#55)

* Added a splitter window between the dataset and data list of the data panel

* added a minimum size for the dataset and data panels of the splitter windows of the plotter

* Removed frame sizing

* Set back code to previous state

Co-authored-by: eric pellegrini <pellegrini@ill.fr>

* filtered out the variables which are not of numeric type

* Forbid remaining trajectory variables

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>
Co-authored-by: Sanghamitra Mukhopadhyay <38656492+sanghamitra-mukhopadhyay@users.noreply.github.com>
Co-authored-by: eric pellegrini <pellegrini@ill.fr>
Co-authored-by: eurydice76 <31923550+eurydice76@users.noreply.github.com>

* Update headers (#47)

* Update copyright information inside headers

* Revert ILL copyright to 2013-now

Co-authored-by: Turanyi <rastislav.turanyi@stfc.ac.uk>

* Implement velocity reading in Gromacs converter via TRR files (#44)

* Implement velocity reading from trr

* Update .gitignore to exclude trr.c and xtc.c after build

* Remove problematic double import and unpack correctly

* Fix read method by redefining a constant

* Enable reading trr files not containing vels/forces

* Remov…
@MBartkowiakSTFC MBartkowiakSTFC deleted the 24_plotter1d_bugfix branch January 19, 2024 11:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request GUI Something regarding the graphical user interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

BUG: Plotter1D uses strings where they should be floats
3 participants