Skip to content

Releases: disorderedmaterials/dissolve

1.5.1

23 Apr 13:05
70ff745
Compare
Choose a tag to compare

Changelog

[1.5.1] - 23rd April 2024

🐛 Bug Fixes

  • Fix display of surfaces in SDF module

🔨️ Build Tools

  • Include correct QML-related libs in OSX package
  • Include correct QML-related libs in Windows package

[1.5.0] - 17th April 2024

🚀 Features

  • (#1791) Mugglify CIF Importer (#1799)
  • (#1620) Compare Module GUI Implementation (#1662)
  • Wrap QSortFilterProxy so it is accessible from QML (#1813)
  • Modifier Oxygen Sites Module setup (#1793)
  • Override Pair Potentials (#1805) (#1826)
  • Running CNs added to SiteRDF (#1819)

🐛 Bug Fixes

  • Fix onetbb version (#1759)
  • Fix Benchmarks 2024 (#1764)
  • Code Tidy January 2024 (#1784)
  • Fix Benchmarks After Conan Tidy (#1796)
  • (#1775) Serial Compilation (#1802)
  • (#1689) Root Elements in Generated NETA (#1803)
  • Include final line of multi-line error messages (#1822) (#1823)
  • Correctly Set Working Directory in GUI (#1829)
  • Removed broken assertion (#1838)
  • Allow non-pr runs to pass ci (#1839)
  • Typo in NeutronSQ NormaliseTo Keyword (#1844)
  • 1845 - Specify which sites require a defined axis (#1850)
  • 1844 - QML ScaleLayout scale charges dialog to accept floats (#1848)
  • Remove CMakeLists from packaged examples (#1851)

🚜 Refactor

  • (#1637) remove modules singleton (#1749)
  • (#1637) dynamic keywords (#1766)
  • Reinventing SiteRDF (#1778)
  • (#1690) Molecularize CIF (#1792)
  • Analysis Refactoring - Part 1 (#1789)
  • Simulation data manager as QML TableView (#1809)
  • Analysis Refactoring - Part 2 (#1795)
  • 1816 Rename Data Normaliser (#1820)

📚 Documentation

  • Update website release info (v1.4.1) (#1765)
  • Update website release info (v1.4.2) (#1780)
  • Provide installation information for Dissolve on MacOS (#1832)
  • Fix web release version. (#1833)
  • Add search bar (#1842)

⚡ Performance

  • 1806 faster combinations (#1807)

🎨 Styling

  • Display qml scale charges dialog (#1763)
  • Modify charge dialogs qml (#1787)

🧪 Testing

⚙️ Miscellaneous Tasks

  • Remove need for QC before build workflow (#1771)
  • (#1779) Upgrade GH Upload/Download (#1781)
  • Remove -user flag from pip install (#1830)

🔨️ Build Tools

  • Disable arm64 build (#1757)
  • Link qt-idaaas nixpkgs version to our primary nixpkgs version (#1760)
  • Build for Apple Silicon (#1743)
  • (#1733) Auto Qt (#1772)
  • Conan Deps (#1785)
  • Tidy CMake Presets (#1808)
  • Add git-cliff support for changelog generation (#1825)

Continuous (1.5.0 @ f27e095)

09 Jan 22:59
f27e095
Compare
Choose a tag to compare
Pre-release

Continuous release from develop branch @ f27e095. Built Tue Apr 23 11:12:00 UTC 2024.

1.5.0

17 Apr 13:47
Compare
Choose a tag to compare

Changelog

[1.5.0] - 17th April 2024

🚀 Features

  • (#1791) Mugglify CIF Importer (#1799)
  • (#1620) Compare Module GUI Implementation (#1662)
  • Wrap QSortFilterProxy so it is accessible from QML (#1813)
  • Modifier Oxygen Sites Module setup (#1793)
  • Override Pair Potentials (#1805) (#1826)
  • Running CNs added to SiteRDF (#1819)

🐛 Bug Fixes

  • Fix onetbb version (#1759)
  • Fix Benchmarks 2024 (#1764)
  • Code Tidy January 2024 (#1784)
  • Fix Benchmarks After Conan Tidy (#1796)
  • (#1775) Serial Compilation (#1802)
  • (#1689) Root Elements in Generated NETA (#1803)
  • Include final line of multi-line error messages (#1822) (#1823)
  • Correctly Set Working Directory in GUI (#1829)
  • Removed broken assertion (#1838)
  • Allow non-pr runs to pass ci (#1839)
  • Typo in NeutronSQ NormaliseTo Keyword (#1844)
  • 1845 - Specify which sites require a defined axis (#1850)
  • 1844 - QML ScaleLayout scale charges dialog to accept floats (#1848)
  • Remove CMakeLists from packaged examples (#1851)

🚜 Refactor

  • (#1637) remove modules singleton (#1749)
  • (#1637) dynamic keywords (#1766)
  • Reinventing SiteRDF (#1778)
  • (#1690) Molecularize CIF (#1792)
  • Analysis Refactoring - Part 1 (#1789)
  • Simulation data manager as QML TableView (#1809)
  • Analysis Refactoring - Part 2 (#1795)
  • 1816 Rename Data Normaliser (#1820)

📚 Documentation

  • Update website release info (v1.4.1) (#1765)
  • Update website release info (v1.4.2) (#1780)
  • Provide installation information for Dissolve on MacOS (#1832)
  • Fix web release version. (#1833)
  • Add search bar (#1842)

⚡ Performance

  • 1806 faster combinations (#1807)

🎨 Styling

  • Display qml scale charges dialog (#1763)
  • Modify charge dialogs qml (#1787)

🧪 Testing

⚙️ Miscellaneous Tasks

  • Remove need for QC before build workflow (#1771)
  • (#1779) Upgrade GH Upload/Download (#1781)
  • Remove -user flag from pip install (#1830)

🔨️ Build Tools

  • Disable arm64 build (#1757)
  • Link qt-idaaas nixpkgs version to our primary nixpkgs version (#1760)
  • Build for Apple Silicon (#1743)
  • (#1733) Auto Qt (#1772)
  • Conan Deps (#1785)
  • Tidy CMake Presets (#1808)
  • Add git-cliff support for changelog generation (#1825)

1.4.3

06 Mar 12:39
9c5ba7c
Compare
Choose a tag to compare

Version 1.4.3 is a patch release addressing some general usability issues.

Minor Changes in v1.4.3

  • Fix: Documentation links in Help menu.
  • Fix: Module setup is now run correctly after loading a restart file.
  • New: Frequency normalisation in QSpecies module.

Major Changes in v1.4.2

Fixes crashes when adding a new module to any layer, and when adding an EPSR module when there are no configurations present.

Major Changes in v1.4.1

Version 1.4.1 fixes some calculation issues with the QSpecies module where the proportion of Q(0) species was not correctly determined, and which could result in misleading results.

Major Changes in v1.4

Input File Compatibility with v1.3

There are no expected incompatibilities with input files from version 1.3, but users may notice warning messages because of the transition away from some configuration keywords towards dedicated procedure nodes.

UI

Many improvements in layout, icons, and usability have been made in the main UI. Version 1.4 also begins the long journey towards reimplementing the majority of the UI in QML. At present only the Add Forcefield Terms dialog has been transitioned as a test case, so users may notice some subtle differences in the look & feel compared to the rest of the UI.

TOML-format Input Files

Version 1.4 now has the capability to read and write TOML-formatted input files, although this is not directly visible to the user at present. While the existing "txt"-style files are still the standard, it is intended to move to TOML as the standard, and drop support for txt input files, in version 2.0.

Crystallographic Information File Import

Import of Crystallographic Information File (CIF) files now has preliminary support for generating individual species descriptions for components detected in the packed cell. This should be considered as a fragile feature at present, and may well not work correctly in all cases.

Configuration-related Procedure Nodes

As mentioned above, version 1.4 deprecates (but does not yet remove) several configuration-related keywords in favour of leveraging specialised procedure nodes in the configuration's generator. As such, three new nodes - "Temperature", "SizeFactor", and "InputCoordinates" - have been introduced.

Region Potentials

A new type of global potential type - RegionPotential - has been added, and allows application of a pseudo-potential (based on the magnitude of a user-provided function at that voxel) to be applied and utilised in evolution algorithms and configuration construction.

Modules

Energy

Output on the Energy graph has been fixed to properly show torsion and improper contributions, and to clearly show and define intramolecular (within molecules), cohesive (intermolecular, between molecules), and the total contribution from pair potential terms.

EPSR

The EPSR module has had several improvements including the ability to apply weightings to individual datasets, calculation of R-factors over specific Q-ranges (in addition to the "normal" full Q-range metric), and detection of atom types that should not be considered in the fitting process (e.g. because they are not present in the configuration targeted by the structural modules which EPSR itself is referencing).

Q-Species (New)

A new module to calculate Q-species information for glassy network systems is now available.

Minor Changes in v1.4

  • Optimisation: Region generation is now multithreaded.
  • Code: Dependent versions of ANTLR and TBB have been updated.

1.4.2

29 Jan 12:00
5217b4c
Compare
Choose a tag to compare

Version 1.4.2 is a patch release addressing some crashes when working the modules and layers.

Major Changes in v1.4.2

Fixes crashes when adding a new module to any layer, and when adding an EPSR module when there are no configurations present.

Major Changes in v1.4.1

Version 1.4.1 fixes some calculation issues with the QSpecies module where the proportion of Q(0) species was not correctly determined, and which could result in misleading results.

Major Changes in v1.4

Input File Compatibility with v1.3

There are no expected incompatibilities with input files from version 1.3, but users may notice warning messages because of the transition away from some configuration keywords towards dedicated procedure nodes.

UI

Many improvements in layout, icons, and usability have been made in the main UI. Version 1.4 also begins the long journey towards reimplementing the majority of the UI in QML. At present only the Add Forcefield Terms dialog has been transitioned as a test case, so users may notice some subtle differences in the look & feel compared to the rest of the UI.

TOML-format Input Files

Version 1.4 now has the capability to read and write TOML-formatted input files, although this is not directly visible to the user at present. While the existing "txt"-style files are still the standard, it is intended to move to TOML as the standard, and drop support for txt input files, in version 2.0.

Crystallographic Information File Import

Import of Crystallographic Information File (CIF) files now has preliminary support for generating individual species descriptions for components detected in the packed cell. This should be considered as a fragile feature at present, and may well not work correctly in all cases.

Configuration-related Procedure Nodes

As mentioned above, version 1.4 deprecates (but does not yet remove) several configuration-related keywords in favour of leveraging specialised procedure nodes in the configuration's generator. As such, three new nodes - "Temperature", "SizeFactor", and "InputCoordinates" - have been introduced.

Region Potentials

A new type of global potential type - RegionPotential - has been added, and allows application of a pseudo-potential (based on the magnitude of a user-provided function at that voxel) to be applied and utilised in evolution algorithms and configuration construction.

Modules

Energy

Output on the Energy graph has been fixed to properly show torsion and improper contributions, and to clearly show and define intramolecular (within molecules), cohesive (intermolecular, between molecules), and the total contribution from pair potential terms.

EPSR

The EPSR module has had several improvements including the ability to apply weightings to individual datasets, calculation of R-factors over specific Q-ranges (in addition to the "normal" full Q-range metric), and detection of atom types that should not be considered in the fitting process (e.g. because they are not present in the configuration targeted by the structural modules which EPSR itself is referencing).

Q-Species (New)

A new module to calculate Q-species information for glassy network systems is now available.

Minor Changes in v1.4

  • Optimisation: Region generation is now multithreaded.
  • Code: Dependent versions of ANTLR and TBB have been updated.

1.4.1

17 Jan 11:10
ba695d4
Compare
Choose a tag to compare

Version 1.4.1 addressing some issues with the QSpecies module.

Major Changes in v1.4.1

Version 1.4.1 fixes some calculation issues with the QSpecies module where the proportion of Q(0) species was not correctly determined, and which could result in misleading results.

Major Changes in v1.4

Input File Compatibility with v1.3

There are no expected incompatibilities with input files from version 1.3, but users may notice warning messages because of the transition away from some configuration keywords towards dedicated procedure nodes.

UI

Many improvements in layout, icons, and usability have been made in the main UI. Version 1.4 also begins the long journey towards reimplementing the majority of the UI in QML. At present only the Add Forcefield Terms dialog has been transitioned as a test case, so users may notice some subtle differences in the look & feel compared to the rest of the UI.

TOML-format Input Files

Version 1.4 now has the capability to read and write TOML-formatted input files, although this is not directly visible to the user at present. While the existing "txt"-style files are still the standard, it is intended to move to TOML as the standard, and drop support for txt input files, in version 2.0.

Crystallographic Information File Import

Import of Crystallographic Information File (CIF) files now has preliminary support for generating individual species descriptions for components detected in the packed cell. This should be considered as a fragile feature at present, and may well not work correctly in all cases.

Configuration-related Procedure Nodes

As mentioned above, version 1.4 deprecates (but does not yet remove) several configuration-related keywords in favour of leveraging specialised procedure nodes in the configuration's generator. As such, three new nodes - "Temperature", "SizeFactor", and "InputCoordinates" - have been introduced.

Region Potentials

A new type of global potential type - RegionPotential - has been added, and allows application of a pseudo-potential (based on the magnitude of a user-provided function at that voxel) to be applied and utilised in evolution algorithms and configuration construction.

Modules

Energy

Output on the Energy graph has been fixed to properly show torsion and improper contributions, and to clearly show and define intramolecular (within molecules), cohesive (intermolecular, between molecules), and the total contribution from pair potential terms.

EPSR

The EPSR module has had several improvements including the ability to apply weightings to individual datasets, calculation of R-factors over specific Q-ranges (in addition to the "normal" full Q-range metric), and detection of atom types that should not be considered in the fitting process (e.g. because they are not present in the configuration targeted by the structural modules which EPSR itself is referencing).

Q-Species (New)

A new module to calculate Q-species information for glassy network systems is now available.

Minor Changes in v1.4

  • Optimisation: Region generation is now multithreaded.
  • Code: Dependent versions of ANTLR and TBB have been updated.

1.4.0

12 Jan 14:42
Compare
Choose a tag to compare

Version 1.4 is a minor release making general functionality, quality, and stability improvements.

Major Changes in v1.4

Input File Compatibility with v1.3

There are no expected incompatibilities with input files from version 1.3, but users may notice warning messages because of the transition away from some configuration keywords towards dedicated procedure nodes.

UI

Many improvements in layout, icons, and usability have been made in the main UI. Version 1.4 also begins the long journey towards reimplementing the majority of the UI in QML. At present only the Add Forcefield Terms dialog has been transitioned as a test case, so users may notice some subtle differences in the look & feel compared to the rest of the UI.

TOML-format Input Files

Version 1.4 now has the capability to read and write TOML-formatted input files, although this is not directly visible to the user at present. While the existing "txt"-style files are still the standard, it is intended to move to TOML as the standard, and drop support for txt input files, in version 2.0.

Crystallographic Information File Import

Import of Crystallographic Information File (CIF) files now has preliminary support for generating individual species descriptions for components detected in the packed cell. This should be considered as a fragile feature at present, and may well not work correctly in all cases.

Configuration-related Procedure Nodes

As mentioned above, version 1.4 deprecates (but does not yet remove) several configuration-related keywords in favour of leveraging specialised procedure nodes in the configuration's generator. As such, three new nodes - "Temperature", "SizeFactor", and "InputCoordinates" - have been introduced.

Region Potentials

A new type of global potential type - RegionPotential - has been added, and allows application of a pseudo-potential (based on the magnitude of a user-provided function at that voxel) to be applied and utilised in evolution algorithms and configuration construction.

Modules

Energy

Output on the Energy graph has been fixed to properly show torsion and improper contributions, and to clearly show and define intramolecular (within molecules), cohesive (intermolecular, between molecules), and the total contribution from pair potential terms.

EPSR

The EPSR module has had several improvements including the ability to apply weightings to individual datasets, calculation of R-factors over specific Q-ranges (in addition to the "normal" full Q-range metric), and detection of atom types that should not be considered in the fitting process (e.g. because they are not present in the configuration targeted by the structural modules which EPSR itself is referencing).

Q-Species (New)

A new module to calculate Q-species information for glassy network systems is now available.

Minor Changes in v1.4

  • Optimisation: Region generation is now multithreaded.
  • Code: Dependent versions of ANTLR and TBB have been updated.

1.3.3

15 Aug 14:17
739510f
Compare
Choose a tag to compare

Version 1.3.3 is a patch release making some small fixes and improvements.

Minor Changes in v1.3.3

  • UI: Time remaining as well as time elapsed is now shown on the main status bar.
  • Fix: Region generation gave incorrect results.

Major Changes in v1.3.2

Handling of errors encountered when reading input files has been greatly "softened" - Dissolve will now try to read as much as possible of the file, and continue over "bad" keywords/data wherever possible.

Minor Changes in v1.3.2

  • UI: GUI is now much more flexible when it comes to minimum size.
  • UI: Styling of keyword widgets has been improved.
  • UI: SpeciesSite keyword controls are now clearly labelled.
  • UI: Layer context menu targeted the wrong tabs on occasion.
  • Fix: Limits on HistogramCN binning caused issues in certain cases.
  • Fix: Added option to export data from HistogramCN.
  • Fix: Unused atom types are now pruned strategically in the code.
  • Fix: CIFs containing space-separated quoted strings are now handled correctly.
  • Fix: Module timing estimates were polluted by modules that did not run for a legitimate reason.
  • Fix: AtomShake module would crash if the "NShakes" keyword was set to anything other than 1.
  • Fix: Keywords targeting vectors of Modules allowed the same module to be specified multiple times.
  • Docs: Updated silica example, correcting a few errors.

Major Changes in v1.3.1

  • Fix: Accumulate module did not correctly work with multiple specified Targets.
  • Fix: Angle, AxisAngle, IntraAngle, and DAngle modules did not normalise output data correctly.
  • I/O: Errors in input files are handled less aggressively, trying to continue loading the file wherever possible.

Minor Changes in v1.3.1

  • Fix: Crashes when modifying some aspects of sites.
  • Fix: Occasional crashes when empty expressions were present in keywords in the GUI.
  • Fix: Specifying a non-existent restart file on the command-line now raises an error.
  • Fix: Interaction potentials keywords now have default parameters populated everywhere.
  • Fix: General UI improvements for menu item actions.
  • UI: Hyperlink messages status label to messages tab.
  • Docs: Updated to reflect new nodes, fixed some other issues.

Major Changes in v1.3

Input File Compatibility with v1.2

Some users may experience errors when reading input files containing an AxisAngle module due to a small change made in keywords which accepted axis arguments. These keywords now take simplified string arguments of "X", "Y", or "Z" rather than "XAxis", "YAxis", or "ZAxis".

Coordination Number Histograms

A new module HistogramCN has been introduced to calculate histograms of coordination numbers between sites, complementing the integral "full average sum" available in the SiteRDF module.

Fragment Sites

A third site type - "Fragment" - has been added to extend the utility of dynamically-generated sites for analysis / procedural purposes. These sites are constructed from chemical environment / connectivity by means of NETA descriptions, and provide rich new options for determining specific site locations within complex systems.

Manipulation of Sites in Procedures

With the introduction of the "Fragment" site type a new procedure node RotateFragment is now available, and can operate on a selection of fragment sites and apply rotations about a selected axis.

Minor Changes in v1.3

  • New: Added random() and randomi(int) functions to the expression parser.
  • Code: Early-stage TOML input file I/O introduced (not yet available to the end user).
  • Code: Significant renaming of files in the codebase to conform more uniformly to a single naming convention (lowerCamelCase).

1.3.2

03 Aug 17:07
e88d1ce
Compare
Choose a tag to compare

Version 1.3.2 is a patch release fixing a host of smaller issues in the code.

Major Changes in v1.3.2

Handling of errors encountered when reading input files has been greatly "softened" - Dissolve will now try to read as much as possible of the file, and continue over "bad" keywords/data wherever possible.

Minor Changes in v1.3.2

  • UI: GUI is now much more flexible when it comes to minimum size.
  • UI: Styling of keyword widgets has been improved.
  • UI: SpeciesSite keyword controls are now clearly labelled.
  • UI: Layer context menu targeted the wrong tabs on occasion.
  • Fix: Limits on HistogramCN binning caused issues in certain cases.
  • Fix: Added option to export data from HistogramCN.
  • Fix: Unused atom types are now pruned strategically in the code.
  • Fix: CIFs containing space-separated quoted strings are now handled correctly.
  • Fix: Module timing estimates were polluted by modules that did not run for a legitimate reason.
  • Fix: AtomShake module would crash if the "NShakes" keyword was set to anything other than 1.
  • Fix: Keywords targeting vectors of Modules allowed the same module to be specified multiple times.
  • Docs: Updated silica example, correcting a few errors.

Major Changes in v1.3.1

  • Fix: Accumulate module did not correctly work with multiple specified Targets.
  • Fix: Angle, AxisAngle, IntraAngle, and DAngle modules did not normalise output data correctly.
  • I/O: Errors in input files are handled less aggressively, trying to continue loading the file wherever possible.

Minor Changes in v1.3.1

  • Fix: Crashes when modifying some aspects of sites.
  • Fix: Occasional crashes when empty expressions were present in keywords in the GUI.
  • Fix: Specifying a non-existent restart file on the command-line now raises an error.
  • Fix: Interaction potentials keywords now have default parameters populated everywhere.
  • Fix: General UI improvements for menu item actions.
  • UI: Hyperlink messages status label to messages tab.
  • Docs: Updated to reflect new nodes, fixed some other issues.

Major Changes in v1.3

Input File Compatibility with v1.2

Some users may experience errors when reading input files containing an AxisAngle module due to a small change made in keywords which accepted axis arguments. These keywords now take simplified string arguments of "X", "Y", or "Z" rather than "XAxis", "YAxis", or "ZAxis".

Coordination Number Histograms

A new module HistogramCN has been introduced to calculate histograms of coordination numbers between sites, complementing the integral "full average sum" available in the SiteRDF module.

Fragment Sites

A third site type - "Fragment" - has been added to extend the utility of dynamically-generated sites for analysis / procedural purposes. These sites are constructed from chemical environment / connectivity by means of NETA descriptions, and provide rich new options for determining specific site locations within complex systems.

Manipulation of Sites in Procedures

With the introduction of the "Fragment" site type a new procedure node RotateFragment is now available, and can operate on a selection of fragment sites and apply rotations about a selected axis.

Minor Changes in v1.3

  • New: Added random() and randomi(int) functions to the expression parser.
  • Code: Early-stage TOML input file I/O introduced (not yet available to the end user).
  • Code: Significant renaming of files in the codebase to conform more uniformly to a single naming convention (lowerCamelCase).

1.3.1

12 Jul 20:27
Compare
Choose a tag to compare

Version 1.3.1 is a patch release fixing some critical module issues along with some general UI issues and problems, and updating documentation.

Major Changes in v1.3.1

  • Fix: Accumulate module did not correctly work with multiple specified Targets.
  • Fix: Angle, AxisAngle, IntraAngle, and DAngle modules did not normalise output data correctly.
  • I/O: Errors in input files are handled less aggressively, trying to continue loading the file wherever possible.

Minor Changes in v1.3.1

  • Fix: Crashes when modifying some aspects of sites.
  • Fix: Occasional crashes when empty expressions were present in keywords in the GUI.
  • Fix: Specifying a non-existent restart file on the command-line now raises an error.
  • Fix: Interaction potentials keywords now have default parameters populated everywhere.
  • Fix: General UI improvements for menu item actions.
  • UI: Hyperlink messages status label to messages tab.
  • Docs: Updated to reflect new nodes, fixed some other issues.

Major Changes in v1.3

Input File Compatibility with v1.2

Some users may experience errors when reading input files containing an AxisAngle module due to a small change made in keywords which accepted axis arguments. These keywords now take simplified string arguments of "X", "Y", or "Z" rather than "XAxis", "YAxis", or "ZAxis".

Coordination Number Histograms

A new module HistogramCN has been introduced to calculate histograms of coordination numbers between sites, complementing the integral "full average sum" available in the SiteRDF module.

Fragment Sites

A third site type - "Fragment" - has been added to extend the utility of dynamically-generated sites for analysis / procedural purposes. These sites are constructed from chemical environment / connectivity by means of NETA descriptions, and provide rich new options for determining specific site locations within complex systems.

Manipulation of Sites in Procedures

With the introduction of the "Fragment" site type a new procedure node RotateFragment is now available, and can operate on a selection of fragment sites and apply rotations about a selected axis.

Minor Changes in v1.3

  • New: Added random() and randomi(int) functions to the expression parser.
  • Code: Early-stage TOML input file I/O introduced (not yet available to the end user).
  • Code: Significant renaming of files in the codebase to conform more uniformly to a single naming convention (lowerCamelCase).