There is a newer version of this record available.

Software Open Access

chrisjsewell/aiida-crystal17: Properties Calc/WkChain Improvements and Testing changes

Chris Sewell

  • Large improvement/refactor of properties calculations and workchains:

    • Rename cry_ -> prop_
    • Renamed crystal17.fermi -> crystal17.newk
    • Subclass calculations from base PropAbstractCalculation;
      • all calculation take as input a wf_folder and parameter dict
      • all calculations output a result dict
      • no longer options to symlink wf_folder (it doesn't work)
      • wf_folder can now be a standard folder (or remote)
    • Add raw parsers for parsing properties stdout and gaussian cube files.
    • Parsers all use read_properties_stdout to parse standard output data, and check for errors, also exit codes are saved for each step, then the highest priority code is returned at the end.
    • Changed inputs/outputs of crystal17.fermi.
    • Add crystal17.ech3 calculation and parser (stores cube files as GaussianCube data objects).
    • Updated CryPropertiesWorkChain to run multiple properties calculation.
    • Add creation of VESTA file, from cube data file.
    • crystal17.doss; fix parsing of projections.
    • Update band_gap calcfunction, to use correct energy units format.
    • Add documentation: calc_doss, workflow_properties, calc_ech3.
  • Improve CRYSTAL main stdout parser.

    • Extract mulliken orbital and shell populations.
    • parse 0D (MOLECULE) cartesian coordinates
    • improve regex for removing PROCESS and Fortran warning lines
    • ignore all open_hca: getaddr_netdev ERROR lines, that can occur before program start.
    • fix issues with computations that converge after the 1st cycle.
  • Add fort.9 raw parser.

  • Symmetry: allow for use of symbol (rather than kind) to define inequivalent sites.

  • Improved BasisSetData.set_file and BasisSetData.upload_basisset_family, to accept pathlib.Path and filelike objects.

  • Programatically Access Resource Files:

    Non-python files (JSON schema and raw files) are now accessed programatically, using the importlib_resources package. This means that (a) they can be accessed even if the package is zipped and, (b) these files can be moved to a separate package in the future.

  • Replace Travis flake8/version tests with a pre-commit test:

    • Updated pre-commit and yapf versions have been updated, and
    • pre-commit run -a has been applied to the repository.
    • Added conda test, to check the conda_dev_env.yml works.
  • Add pytest plugin configuration:

    • Use pytest command-line arguments to control run configuration.
    • Replace MOCK_CRY17_EXECUTABLES environmental variable with pytest --cry17-no-mock, and CRY17_TEST_WORKDIR with pytest --cry17-workdir "test_workdir".
    • Add --cry17-skip-exec, for skipping tests call executable.
    • Add pytest-notebook dependency and test function, to test and regenerate tutorial notebooks.
  • GULP: improve ReaxFF parser:

    • correctly handle read/write of X symbol
    • allow reaxff tolerance value to be set, when reading file to dict.
Files (2.7 MB)
Name Size
2.7 MB Download
All versions This version
Views 21660
Downloads 143
Data volume 31.4 MB8.2 MB
Unique views 19658
Unique downloads 122


Cite as