Releases: siesta-project/aiida_siesta_plugin
aiida-siesta 2.0.0
Version compatible with aiida-core>=2.0.0,<3.0.0.
Improvements
- Added support to aiida-core>=2.0.0.
For developers
- Moved to
flit
for build and distribution of the package.
Known bugs
- The Equation of State WorkChain crashes if the structure contains sites with same symbol but different name.
aiida-siesta 1.4.0
Version compatible with aiida-core>=1.3.0,<2.0.0.
Improvements
- Introduce several workchains to help the optimization of basis sets.
For developers
- Introduces dependences on aiida-optimize.
- It is supposed to be the last release before moving the development to 2.0.x (that will be compatible
with aiida-core>=2.0.0 only).
Known bugs
- The Equation of State WorkChain crashes if the structure contains sites with same symbol but different name.
aiida-siesta 1.3.0
Version compatible with aiida-core>=1.3.0,<2.0.0.
Improvements
- Introduce dedicated support for optical calculations. In particular,
dedicated inputs are created for theSiestaCalulation
andSiestaBaseWorkChain
.
Moreover aEpsilonWorkChain
workchain is created to automatically
obtain the electronic contribution to the static dielectric constant. - Introduce
SiestaBaseNEBWorkChain
, the core building block for the creation of workflows that enable
the search of the Minimum Energy Pathway (MEP) connecting two local minima of the potential energy surface
through the Nudge Elastic Band (NEB) method.
Bug fixes
- Clarify units of stress.
- The
SiestaBaseWorkChain
now correcty handle LUA inputs.
Known bugs
- The Equation of State WorkChain crashes if the structure contains sites with same symbol but different name.
aiida-siesta 1.2.0
Version compatible with aiida-core>=1.3.0,<2.0.0.
Support for python 3.6 has been dropped.
Improvements
- Enable LUA interface to SIESTA. New inputs have been introduce to activate LUA control
over siesta calculations. - Access to the sisl functionalities, since sisl is now
dependency of this package. - Introduction of the
IonData
data type that host the entity that in siesta terminology is called “ion”.
An "ion" packages the set of basis orbitals and KB projectors for a given species and therefore
can be use in substitution of the pseudo and basis inputs.
AnIonData
node is also returned in output for each species of the calculation so to help
the improve the tracking of used orbitals and KB projectors.
From anIonData
instance, the list of orbitals of the calculation can be easily accessed in the form
ofSislAtomicOrbitals
. - Migration to the use of the aiida-pseudo package for the
management of pseudo data types and families. The development on the the support for pseudopotentials
types has been centralized in an external package. The use of aiida-siesta custom classesPsmlData
andPsfData
has been deprecated and will be remove in version 2.0.0.
Bug fixes
- Fixed the atom heuristic selection of basis in the protocol system
For developers
- Heavy refactoring to take advantage of the aiida-core validators system.
- Start reorganization of folders. Especially moved the location of the protocols
system and of tkdict features. - Updated dependencies of tests and pre-commits.
Known bugs
- The Equation of State WorkChain crashes if the structure contains sites with same symbol but different name.
- The SiestaBaseWorkChain ignores the LUA inputs.
aiida-siesta 1.1.1
Version compatible with aiida-core>=1.3.0,<2.0.0.
Improvements
- Improvement in the
BandGapWorkChain
. A new feature has been introduced:
when nobandskpoints
are set in input, the workchain automatically calculates the bands
using a k-space path automatically selected by SeeK-path.
In particular, if a molecular dynamics run was also requested (usually a relaxation),
the dynamics is run first and the bands are calculated on a separate Siesta run. This
allows to select the k-space path for bands automatically using the output structure.
When thebandskpoints
is selected in input, the behavior is the same of previous versions. - Added an output of the
SiestaSequentialConverger
listing, if any,
the unconverged parameters. More explicit warnings are returned when a parameter
does not converge. - A tutorial is now available in the documentation, covering the submission of simple siesta
calculations, the use of protocols, the use of the iterator/converger workchains and
a simple example on how to create custom workchains.
Bug fixes
- A bug was reported regarding the wrong selection of the kpoints path for bands
when a relaxation with variable cell was also requested. The energy values were correct,
but the distance between kpoints was not corresponding to the one of the Siesta
file ".bands". The bug is now fixed. - The method
inputs_generator().get_inputs_dict
(available forSiestaCalculations
and
all the workchains in the package) had a minor bug. In case the kpoints or bandskpoints
were not requested, the dictionary was anyway returning items for "bandskpoints"
and "kpoints" with value "None". This has been fixed.
The methodinputs_generator().get_filled_builder
was instead correct. - A bug was leading to the failure of
SiestaSequentialConverger
in case one of
the parameters to converge in the sequential process was not reaching convergence.
It is now fixed and, in addition, an output listing the unconverged parameters has been
added.
For developers
- Set up a nightly built in GitHub actions that tests the plugin (run all its tests)
against the develop branch ofaiida-core
. - The
BandGapWorkChain
has been refactored almost entirely. - The abstract class
SequentialConverger
has been modified to fix the bug
ofSiestaSequentialConverger
described above.
Known bugs
- The atom heuristic selection of basis sizes is not working. Inside a protocol, the basis size choice for a single element (added in atom heuristics) is ignored by the siesta code due to a typo.
- The Equation of State WorkChain crashes if the structure contains sites with same symbol but different name.
aiida-siesta 1.1.0
Version compatible with aiida-core>=1.3.0,<2.0.0. Previous versions of aiida-core do not have a working BaseRestartWorkChain
, which is the building piece of many workchains in aiida-siesta.
Support for python 2.7 and python 3.5 has been dropped.
Improvements
- Extend the
STMCalculation
to work with modern versions of the "plstm" code. Included support for spin options. - Improved the Siesta parser to recognize more siesta errors.
- Refactoring of the
SiestaBaseWorkChain
to make use ofBaseRestartWorkChain
from aiida-core, added a more complete errors handling. - Substitute the bands workchain with the
BandGapWorkChain
. No parameter is assumed inside the workchian ("protocols" are moved outside). - Change the
STMWorkChain
. No parameter is assumed inside the workchain and it has been extended to support all the modes and spins options for STM calculations. - Introduce several new workchains:
SiestaIterator
,SiestaConverger
,SiestaSequentialConverger
andEqOfStateFixedCellShape
. - Introduce the "protocols" system, that suggests inputs for AiiDA workchains based on the structure under investigation and a "protocol" string.
- Add several examples about new features, workchains and the protocol system.
- Expanded the documentation.
For developers
- Introduce a complete set of unitests.
- Introduced proper CI with GitHub actions, including pre-commit requirements.
- Improved the
FDFDict
: more methods and a behavior more similar to a python dictionary. - Refactoring of
PsmlData
andPsfData
classes to use new Group feature of aiida-core.
Known bugs
- The calculation of bands is faulty when a relaxation with variable cell is performed in the same run. While the bands are parsed correctly, the corresponding kpoints are wrongly assigned. This applies to
SiestaCalculation
,SiestaBaseWorkChain
and all the other workchains. - The method
inputs_generator().get_inputs_dict
(available forSiestaCalculation
s and all the workchains in the package) is anyway returning items for "bandskpoints" and "kpoints" even if they are not requested. The value assigned to these two inputs is "None". This does not allow to pass directly the obtained dictionary as input of a calculation/workchain The methodinputs_generator().get_filled_builder
is instead correct. - The
SiestaSequentialConverger
fails in case one of the parameters to converge in the sequential process is not reaching convergence.
aiida-siesta 1.0.1
Version compatible with aiida-core>=1.0.0,<2.0.0
Improvements:
- More robust SiestaBaseWorkChain
Known bugs
- The calculation of bands is faulty when a relaxation with variable cell is performed in the same run. While the bands are parsed correctly, the corresponding kpoints are wrongly assigned. This applies to
SiestaCalculation
,SiestaBaseWorkChain
and all the other workchains.
For developers:
- Avoid the re-setting of Siesta filepaths via spec.inp
- Fixed obsolete call and input attributes in SiestaBaseWorkChain
- Remove obsolete files in several places
- Raise exception in parser if XML file is faulty
aiida-siesta 1.0.0
This version is the first release of aiida-siesta that is compatible with aiida-core 1.0.0. Previous versions of aiida-core are not compatible with this release.
Version compatible with aiida-0.12
This version is compatible with aiida 0.12, not with newest versions of aiida.
aiida-siesta v0.9.10
A package of AiiDA plugins and workflows for Siesta, developed within the MaX EU-H2020 Center of Excellence project