siesta-project / aiida_siesta_plugin

Source code for the AiiDA-Siesta package (plugin and workflows). See wiki
Other
6 stars 11 forks source link

Protocol dev #52

Closed bosonie closed 4 years ago

bosonie commented 4 years ago

This merge commit introduces the long work on the protocol system. Now, for each workchain distributed in these package, there is a inputs_generator attribute with the scope to suggest inputs to the users. The inputs_generator has an attribute get_filled_builder that returns a builder that is ready to be submitted. The get_filled_builder only requires in inputs few options, typically a structure (AiiDA StructureData), a dictionary with the computational resources and protocol, meaning a string summarizing a set of siesta inputs (available protocols are "stringent" and "standard" at the moment, but a system to define customized protocols is in place). Eventually, few more optional and mandatory inputs are required by some workchains. The obtained builder can be modified before submission, maintaining full flexibility in selecting inputs.

This commit also gets rid of the BandsWorkChain that was carrying partial selection of inputs inside itself. It is substituted by the BandgapWorkChain (introduced in another commit) and his inputs_generator.