diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index a07b70bd..7eda16cf 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -1,108 +1,108 @@ name: cd on: - push: - tags: - - 'v[0-9]+.[0-9]+.[0-9]+*' + push: + tags: + - v[0-9]+.[0-9]+.[0-9]+* jobs: - validate-release-tag: + validate-release-tag: - if: github.repository == 'aiidateam/aiida-common-workflows' - runs-on: ubuntu-latest + if: github.repository == 'aiidateam/aiida-common-workflows' + runs-on: ubuntu-latest - steps: - - name: Checkout source - uses: actions/checkout@v2 + steps: + - name: Checkout source + uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v4 - with: - python-version: '3.9' + - name: Set up Python 3.9 + uses: actions/setup-python@v4 + with: + python-version: '3.9' - - name: Validate the tag version against the package version - run: python .github/workflows/validate_release_tag.py $GITHUB_REF + - name: Validate the tag version against the package version + run: python .github/workflows/validate_release_tag.py $GITHUB_REF - pre-commit: + pre-commit: - needs: [validate-release-tag] - runs-on: ubuntu-latest + needs: [validate-release-tag] + runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 + steps: + - uses: actions/checkout@v2 - - name: Install Python - uses: actions/setup-python@v4 - with: - python-version: '3.9' - cache: 'pip' - cache-dependency-path: pyproject.toml + - name: Install Python + uses: actions/setup-python@v4 + with: + python-version: '3.9' + cache: pip + cache-dependency-path: pyproject.toml - - name: Update pip and install wheel - run: pip install -U pip wheel + - name: Update pip and install wheel + run: pip install -U pip wheel - - name: Install Python package and dependencies - run: pip install -e .[docs,pre-commit,tests] + - name: Install Python package and dependencies + run: pip install -e .[docs,pre-commit,tests] - - name: Run pre-commit - run: pre-commit run --all-files || ( git status --short ; git diff ; exit 1 ) + - name: Run pre-commit + run: pre-commit run --all-files || ( git status --short ; git diff ; exit 1 ) - tests: + tests: - needs: [validate-release-tag] - runs-on: ubuntu-latest - timeout-minutes: 30 + needs: [validate-release-tag] + runs-on: ubuntu-latest + timeout-minutes: 30 - strategy: - matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + strategy: + matrix: + python-version: ['3.9', '3.10', '3.11', '3.12'] - services: - rabbitmq: - image: rabbitmq:latest - ports: - - 5672:5672 + services: + rabbitmq: + image: rabbitmq:latest + ports: + - 5672:5672 - steps: - - uses: actions/checkout@v2 + steps: + - uses: actions/checkout@v2 - - name: Install Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - cache: 'pip' - cache-dependency-path: pyproject.toml + - name: Install Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + cache: pip + cache-dependency-path: pyproject.toml - - name: Update pip and install wheel - run: pip install -U pip wheel + - name: Update pip and install wheel + run: pip install -U pip wheel - - name: Install Python package and dependencies - run: pip install -e .[tests] + - name: Install Python package and dependencies + run: pip install -e .[tests] - - name: Run pytest - run: pytest -sv tests + - name: Run pytest + run: pytest -sv tests - publish: + publish: - name: Publish to PyPI - needs: [pre-commit, tests] - runs-on: ubuntu-latest + name: Publish to PyPI + needs: [pre-commit, tests] + runs-on: ubuntu-latest - steps: - - name: Checkout source - uses: actions/checkout@v2 + steps: + - name: Checkout source + uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v4 - with: - python-version: '3.9' + - name: Set up Python 3.9 + uses: actions/setup-python@v4 + with: + python-version: '3.9' - - name: Install flit - run: pip install flit~=3.4 + - name: Install flit + run: pip install flit~=3.4 - - name: Build and publish - run: flit publish - env: - FLIT_USERNAME: __token__ - FLIT_PASSWORD: ${{ secrets.PYPI_KEY }} + - name: Build and publish + run: flit publish + env: + FLIT_USERNAME: __token__ + FLIT_PASSWORD: ${{ secrets.PYPI_KEY }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9730d487..f897aec9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,61 +4,61 @@ on: [push, pull_request] jobs: - pre-commit: + pre-commit: - runs-on: ubuntu-latest + runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 + steps: + - uses: actions/checkout@v2 - - name: Install Python - uses: actions/setup-python@v4 - with: - python-version: '3.9' - cache: 'pip' - cache-dependency-path: pyproject.toml + - name: Install Python + uses: actions/setup-python@v4 + with: + python-version: '3.9' + cache: pip + cache-dependency-path: pyproject.toml - - name: Update pip and install wheel - run: pip install -U pip wheel + - name: Update pip and install wheel + run: pip install -U pip wheel - - name: Install Python package and dependencies - run: pip install -e .[docs,pre-commit,tests] + - name: Install Python package and dependencies + run: pip install -e .[docs,pre-commit,tests] - - name: Run pre-commit - run: pre-commit run --all-files || ( git status --short ; git diff ; exit 1 ) + - name: Run pre-commit + run: pre-commit run --all-files || ( git status --short ; git diff ; exit 1 ) - tests: + tests: - runs-on: ubuntu-latest - timeout-minutes: 30 + runs-on: ubuntu-latest + timeout-minutes: 30 - strategy: - matrix: - python-version: ['3.9', '3.10', '3.11', '3.12'] + strategy: + matrix: + python-version: ['3.9', '3.10', '3.11', '3.12'] - services: - rabbitmq: - image: rabbitmq:latest - ports: - - 5672:5672 + services: + rabbitmq: + image: rabbitmq:latest + ports: + - 5672:5672 - steps: - - uses: actions/checkout@v2 + steps: + - uses: actions/checkout@v2 - - name: Install Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - cache: 'pip' - cache-dependency-path: pyproject.toml + - name: Install Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + cache: pip + cache-dependency-path: pyproject.toml - - name: Update pip and install wheel - run: pip install -U pip wheel + - name: Update pip and install wheel + run: pip install -U pip wheel - - name: Install Python package and dependencies - run: pip install -e .[tests] + - name: Install Python package and dependencies + run: pip install -e .[tests] - - name: Run pytest - env: - AIIDA_WARN_v3: true - run: pytest -sv tests + - name: Run pytest + env: + AIIDA_WARN_v3: true + run: pytest -sv tests diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4640fca8..491bb535 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,21 +1,21 @@ repos: -- repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.5.0 - hooks: - - id: check-merge-conflict - - id: check-yaml - - id: double-quote-string-fixer - - id: end-of-file-fixer - - id: fix-encoding-pragma - args: [--remove] - - id: mixed-line-ending - args: [--fix=lf] - - id: trailing-whitespace +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.5.0 + hooks: + - id: check-merge-conflict + - id: check-yaml + - id: double-quote-string-fixer + - id: end-of-file-fixer + - id: fix-encoding-pragma + args: [--remove] + - id: mixed-line-ending + args: [--fix=lf] + - id: trailing-whitespace -- repo: https://github.com/ikamensh/flynt/ - rev: '1.0.1' - hooks: - - id: flynt +- repo: https://github.com/ikamensh/flynt/ + rev: 1.0.1 + hooks: + - id: flynt - repo: https://github.com/astral-sh/ruff-pre-commit rev: v0.1.9 @@ -23,3 +23,11 @@ repos: - id: ruff-format - id: ruff args: [--fix, --exit-non-zero-on-fix, --show-fixes] + +- repo: https://github.com/macisamuele/language-formatters-pre-commit-hooks + rev: v2.11.0 + hooks: + - id: pretty-format-toml + args: [--autofix] + - id: pretty-format-yaml + args: [--autofix] diff --git a/.readthedocs.yml b/.readthedocs.yml index a6f3908c..bb991cc4 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -1,17 +1,17 @@ version: 2 build: - apt_packages: - - gfortran # This is necessary for the `sisl` dependency of `aiida-siesta` + apt_packages: + - gfortran # This is necessary for the `sisl` dependency of `aiida-siesta` python: - version: 3.8 - install: - - method: pip - path: . - extra_requirements: - - docs + version: 3.8 + install: + - method: pip + path: . + extra_requirements: + - docs sphinx: - builder: html - fail_on_warning: true + builder: html + fail_on_warning: true diff --git a/pyproject.toml b/pyproject.toml index ff663346..93b9ba23 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,79 +1,52 @@ [build-system] -requires = ['flit_core >=3.4,<4'] build-backend = 'flit_core.buildapi' +requires = ['flit_core >=3.4,<4'] [project] -name = 'aiida-common-workflows' -dynamic = ['description', 'version'] authors = [{name = 'The AiiDA team', email = 'developers@aiida.net'}] -readme = 'README.md' -license = {file = 'LICENSE.txt'} classifiers = [ - 'Development Status :: 4 - Beta', - 'Framework :: AiiDA', - 'License :: OSI Approved :: MIT License', - 'Operating System :: POSIX :: Linux', - 'Operating System :: MacOS :: MacOS X', - 'Programming Language :: Python', - 'Programming Language :: Python :: 3.9', - 'Programming Language :: Python :: 3.10', - 'Programming Language :: Python :: 3.11', - 'Programming Language :: Python :: 3.12', + 'Development Status :: 4 - Beta', + 'Framework :: AiiDA', + 'License :: OSI Approved :: MIT License', + 'Operating System :: POSIX :: Linux', + 'Operating System :: MacOS :: MacOS X', + 'Programming Language :: Python', + 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', + 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12' ] -keywords = ['aiida', 'workflows'] -requires-python = '>=3.9' dependencies = [ - 'abipy==0.9.6', - 'aiida-ase~=3.0', - 'aiida-abinit~=0.5.0', - 'aiida-bigdft~=0.3.0', - 'aiida-castep~=2.0', - 'aiida-core[atomic_tools]~=2.1', - 'aiida-cp2k~=2.0', - 'aiida-fleur~=2.0', - 'aiida-gaussian~=2.0', - 'aiida-nwchem~=3.0', - 'aiida-orca~=0.6.0', - 'aiida-pseudo~=1.0', - 'aiida-quantumespresso~=4.4', - 'aiida-siesta~=2.0', - 'aiida-vasp~=3.1', - 'aiida-wien2k~=0.2.0', - 'ase!=3.20.*', - 'masci-tools~=0.9', - 'pint~=0.16', - 'pymatgen>=2022.1.20', -] - -[project.urls] -Home = 'https://github.com/aiidateam/aiida-common-workflows' -Source = 'https://github.com/aiidateam/aiida-common-workflows' -Documentation = 'https://aiida-common-workflows.readthedocs.io' - -[project.optional-dependencies] -docs = [ - 'docutils~=0.15.2', - 'pygments~=2.5', - 'pydata-sphinx-theme~=0.4.0', - 'sphinx~=3.2', - 'sphinx-panels~=0.5.0', - 'sphinxcontrib-details-directive~=0.1.0', - 'sphinx-copybutton~=0.3.0' + 'abipy==0.9.6', + 'aiida-ase~=3.0', + 'aiida-abinit~=0.5.0', + 'aiida-bigdft~=0.3.0', + 'aiida-castep~=2.0', + 'aiida-core[atomic_tools]~=2.1', + 'aiida-cp2k~=2.0', + 'aiida-fleur~=2.0', + 'aiida-gaussian~=2.0', + 'aiida-nwchem~=3.0', + 'aiida-orca~=0.6.0', + 'aiida-pseudo~=1.0', + 'aiida-quantumespresso~=4.4', + 'aiida-siesta~=2.0', + 'aiida-vasp~=3.1', + 'aiida-wien2k~=0.2.0', + 'ase!=3.20.*', + 'masci-tools~=0.9', + 'pint~=0.16', + 'pymatgen>=2022.1.20' ] -pre-commit = [ - 'pre-commit~=3.6', -] -tests = [ - 'pytest~=7.2', - 'pgtest~=1.3,>=1.3.1', - 'pytest-regressions~=1.0' -] - -[project.scripts] -aiida-common-workflows = 'aiida_common_workflows.cli:cmd_root' -acwf = 'aiida_common_workflows.cli:cmd_root' +dynamic = ['description', 'version'] +keywords = ['aiida', 'workflows'] +license = {file = 'LICENSE.txt'} +name = 'aiida-common-workflows' +readme = 'README.md' +requires-python = '>=3.9' [project.entry-points.'aiida.workflows'] +'common_workflows.bands.siesta' = 'aiida_common_workflows.workflows.bands.siesta.workchain:SiestaCommonBandsWorkChain' 'common_workflows.dissociation_curve' = 'aiida_common_workflows.workflows.dissociation:DissociationCurveWorkChain' 'common_workflows.eos' = 'aiida_common_workflows.workflows.eos:EquationOfStateWorkChain' 'common_workflows.relax.abinit' = 'aiida_common_workflows.workflows.relax.abinit.workchain:AbinitCommonRelaxWorkChain' @@ -82,49 +55,95 @@ acwf = 'aiida_common_workflows.cli:cmd_root' 'common_workflows.relax.cp2k' = 'aiida_common_workflows.workflows.relax.cp2k.workchain:Cp2kCommonRelaxWorkChain' 'common_workflows.relax.fleur' = 'aiida_common_workflows.workflows.relax.fleur.workchain:FleurCommonRelaxWorkChain' 'common_workflows.relax.gaussian' = 'aiida_common_workflows.workflows.relax.gaussian.workchain:GaussianCommonRelaxWorkChain' +'common_workflows.relax.gpaw' = 'aiida_common_workflows.workflows.relax.gpaw.workchain:GpawCommonRelaxWorkChain' 'common_workflows.relax.nwchem' = 'aiida_common_workflows.workflows.relax.nwchem.workchain:NwchemCommonRelaxWorkChain' 'common_workflows.relax.orca' = 'aiida_common_workflows.workflows.relax.orca.workchain:OrcaCommonRelaxWorkChain' 'common_workflows.relax.quantum_espresso' = 'aiida_common_workflows.workflows.relax.quantum_espresso.workchain:QuantumEspressoCommonRelaxWorkChain' 'common_workflows.relax.siesta' = 'aiida_common_workflows.workflows.relax.siesta.workchain:SiestaCommonRelaxWorkChain' 'common_workflows.relax.vasp' = 'aiida_common_workflows.workflows.relax.vasp.workchain:VaspCommonRelaxWorkChain' -'common_workflows.relax.gpaw' = 'aiida_common_workflows.workflows.relax.gpaw.workchain:GpawCommonRelaxWorkChain' 'common_workflows.relax.wien2k' = 'aiida_common_workflows.workflows.relax.wien2k.workchain:Wien2kCommonRelaxWorkChain' -'common_workflows.bands.siesta' = 'aiida_common_workflows.workflows.bands.siesta.workchain:SiestaCommonBandsWorkChain' + +[project.optional-dependencies] +docs = [ + 'docutils~=0.15.2', + 'pygments~=2.5', + 'pydata-sphinx-theme~=0.4.0', + 'sphinx~=3.2', + 'sphinx-panels~=0.5.0', + 'sphinxcontrib-details-directive~=0.1.0', + 'sphinx-copybutton~=0.3.0' +] +pre-commit = [ + 'pre-commit~=3.6' +] +tests = [ + 'pytest~=7.2', + 'pgtest~=1.3,>=1.3.1', + 'pytest-regressions~=1.0' +] + +[project.scripts] +acwf = 'aiida_common_workflows.cli:cmd_root' +aiida-common-workflows = 'aiida_common_workflows.cli:cmd_root' + +[project.urls] +Documentation = 'https://aiida-common-workflows.readthedocs.io' +Home = 'https://github.com/aiidateam/aiida-common-workflows' +Source = 'https://github.com/aiidateam/aiida-common-workflows' [tool.flit.module] name = 'aiida_common_workflows' [tool.flit.sdist] exclude = [ - '.gitignore', - '.github/', - 'docs/', - 'tests/', + '.gitignore', + '.github/', + 'docs/', + 'tests/' ] [tool.flynt] -line-length = 120 fail-on-change = true +line-length = 120 + +[tool.pytest.ini_options] +filterwarnings = [ + 'ignore::DeprecationWarning:abipy:', + 'ignore::DeprecationWarning:ase:', + 'ignore::DeprecationWarning:frozendict:', + 'ignore::DeprecationWarning:past:', + 'ignore::DeprecationWarning:sqlalchemy_utils:', + 'ignore::DeprecationWarning:reentry:', + 'ignore::DeprecationWarning:pkg_resources:', + 'ignore::PendingDeprecationWarning:monty:', + 'ignore::PendingDeprecationWarning:pymatgen:', + 'ignore::PendingDeprecationWarning:ruamel:', + 'ignore:Creating AiiDA configuration folder.*:UserWarning', + 'ignore:Object of type .* not in session, .* operation along .* will not proceed:sqlalchemy.exc.SAWarning' +] +testpaths = [ + 'tests' +] [tool.ruff] ignore = [ - 'PLR2004', # Magic value used in comparison - 'PLE0604', # Invalid object in `__all__`, must contain only strings - 'F403', # Star imports unable to detect undefined names - 'F405', # Import may be undefined or defined from star imports + 'PLR2004', # Magic value used in comparison + 'PLE0604', # Invalid object in `__all__`, must contain only strings + 'F403', # Star imports unable to detect undefined names + 'F405' # Import may be undefined or defined from star imports ] line-length = 120 select = [ - 'E', # pydocstyle - 'W', # pydocstyle - 'F', # pyflakes - 'I', # isort - 'N', # pep8-naming - 'PLC', - 'PLE', - 'PLR', - 'PLW', - 'RUF' # ruff + 'E', # pydocstyle + 'W', # pydocstyle + 'F', # pyflakes + 'I', # isort + 'N', # pep8-naming + 'PLC', + 'PLE', + 'PLR', + 'PLW', + 'RUF' # ruff ] [tool.ruff.format] @@ -132,22 +151,3 @@ quote-style = 'single' [tool.ruff.lint.isort] known-first-party = ['src'] - -[tool.pytest.ini_options] -testpaths = [ - 'tests', -] -filterwarnings = [ - 'ignore::DeprecationWarning:abipy:', - 'ignore::DeprecationWarning:ase:', - 'ignore::DeprecationWarning:frozendict:', - 'ignore::DeprecationWarning:past:', - 'ignore::DeprecationWarning:sqlalchemy_utils:', - 'ignore::DeprecationWarning:reentry:', - 'ignore::DeprecationWarning:pkg_resources:', - 'ignore::PendingDeprecationWarning:monty:', - 'ignore::PendingDeprecationWarning:pymatgen:', - 'ignore::PendingDeprecationWarning:ruamel:', - 'ignore:Creating AiiDA configuration folder.*:UserWarning', - 'ignore:Object of type .* not in session, .* operation along .* will not proceed:sqlalchemy.exc.SAWarning', -] diff --git a/src/aiida_common_workflows/workflows/relax/abinit/protocol.yml b/src/aiida_common_workflows/workflows/relax/abinit/protocol.yml index 127c0a68..fa2233c5 100644 --- a/src/aiida_common_workflows/workflows/relax/abinit/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/abinit/protocol.yml @@ -1,118 +1,118 @@ fast: - name: "fast" - description: "Protocol to relax a structure with low precision at minimal computational cost for testing purposes." - pseudo_family: "PseudoDojo/1.0/PBE/SR/standard/jthxml" - cutoff_stringency: "low" - base: - kpoints_distance: 0.25 - abinit: - parameters: - shiftk: [[0.0, 0.0, 0.0]] - nstep: 100 + name: fast + description: Protocol to relax a structure with low precision at minimal computational cost for testing purposes. + pseudo_family: PseudoDojo/1.0/PBE/SR/standard/jthxml + cutoff_stringency: low + base: + kpoints_distance: 0.25 + abinit: + parameters: + shiftk: [[0.0, 0.0, 0.0]] + nstep: 100 # tolerances - tolvrs: 1.0e-7 # Ha - chkprim: 0 # To allow for non-primitive unit cells - chksymbreak: 0 # No check on the symmetries of the k-points - autoparal: 1 # Run Abinit's built-in automatic parallelization + tolvrs: 1.0e-7 # Ha + chkprim: 0 # To allow for non-primitive unit cells + chksymbreak: 0 # No check on the symmetries of the k-points + autoparal: 1 # Run Abinit's built-in automatic parallelization # default to relaxing atoms only - optcell: 0 # do not optimize the cell, Abinit default - ionmov: 22 # optimize ionic positions with L-BFGS - dilatmx: 1.00 # don't book additional memory for basis set enlargement, Abinit default - ecutsm: 0.00 # don't smear the energy cutoff, Abinit default + optcell: 0 # do not optimize the cell, Abinit default + ionmov: 22 # optimize ionic positions with L-BFGS + dilatmx: 1.00 # don't book additional memory for basis set enlargement, Abinit default + ecutsm: 0.00 # don't smear the energy cutoff, Abinit default # default to metallic treatment - occopt: 7 # Gaussian smearing - fband: 2.00 # increase the number of bands to > fband * natoms - tsmear: 0.008 # Ha + occopt: 7 # Gaussian smearing + fband: 2.00 # increase the number of bands to > fband * natoms + tsmear: 0.008 # Ha # default to no spin treatment - nspinor: 1 # no spin-orbit coupling, Abinit default - nsppol: 1 # no spin-polarization, Abinit default - nspden: 1 # no spin-magnetization, Abinit default + nspinor: 1 # no spin-orbit coupling, Abinit default + nsppol: 1 # no spin-polarization, Abinit default + nspden: 1 # no spin-magnetization, Abinit default moderate: - name: "moderate" - description: "Protocol to relax a structure with normal precision at moderate computational cost." - pseudo_family: "PseudoDojo/1.0/PBE/SR/standard/jthxml" - cutoff_stringency: "normal" - base: - kpoints_distance: 0.20 - abinit: - parameters: - shiftk: [[0.0, 0.0, 0.0]] - nstep: 200 + name: moderate + description: Protocol to relax a structure with normal precision at moderate computational cost. + pseudo_family: PseudoDojo/1.0/PBE/SR/standard/jthxml + cutoff_stringency: normal + base: + kpoints_distance: 0.20 + abinit: + parameters: + shiftk: [[0.0, 0.0, 0.0]] + nstep: 200 # tolerances - tolvrs: 1.0e-9 # Ha - chkprim: 0 # To allow for non-primitive unit cells - chksymbreak: 0 # No check on the symmetries of the k-points - autoparal: 1 # Run Abinit's built-in automatic parallelization + tolvrs: 1.0e-9 # Ha + chkprim: 0 # To allow for non-primitive unit cells + chksymbreak: 0 # No check on the symmetries of the k-points + autoparal: 1 # Run Abinit's built-in automatic parallelization # default to relaxing atoms only - optcell: 0 # do not optimize the cell, Abinit default - ionmov: 22 # optimize ionic positions with L-BFGS - dilatmx: 1.00 # don't book additional memory for basis set enlargement, Abinit default - ecutsm: 0.00 # don't smear the energy cutoff, Abinit default + optcell: 0 # do not optimize the cell, Abinit default + ionmov: 22 # optimize ionic positions with L-BFGS + dilatmx: 1.00 # don't book additional memory for basis set enlargement, Abinit default + ecutsm: 0.00 # don't smear the energy cutoff, Abinit default # default to metallic treatment - occopt: 7 # Gaussian smearing - fband: 2.00 # increase the number of bands to > fband * natoms - tsmear: 0.008 # Ha + occopt: 7 # Gaussian smearing + fband: 2.00 # increase the number of bands to > fband * natoms + tsmear: 0.008 # Ha # default to no spin treatment - nspinor: 1 # no spin-orbit coupling, Abinit default - nsppol: 1 # no spin-polarization, Abinit default - nspden: 1 # no spin-magnetization, Abinit default + nspinor: 1 # no spin-orbit coupling, Abinit default + nsppol: 1 # no spin-polarization, Abinit default + nspden: 1 # no spin-magnetization, Abinit default precise: - name: "precise" - description: "Protocol to relax a structure with high precision at higher computational cost." - pseudo_family: "PseudoDojo/1.0/PBE/SR/standard/jthxml" - cutoff_stringency: "high" - base: - kpoints_distance: 0.04 - abinit: - parameters: - shiftk: [[0.0, 0.0, 0.0]] - nstep: 300 + name: precise + description: Protocol to relax a structure with high precision at higher computational cost. + pseudo_family: PseudoDojo/1.0/PBE/SR/standard/jthxml + cutoff_stringency: high + base: + kpoints_distance: 0.04 + abinit: + parameters: + shiftk: [[0.0, 0.0, 0.0]] + nstep: 300 # tolerances - tolvrs: 1.0e-10 # Ha - chkprim: 0 # To allow for non-primitive unit cells - chksymbreak: 0 # No check on the symmetries of the k-points - autoparal: 1 # Run Abinit's built-in automatic parallelization + tolvrs: 1.0e-10 # Ha + chkprim: 0 # To allow for non-primitive unit cells + chksymbreak: 0 # No check on the symmetries of the k-points + autoparal: 1 # Run Abinit's built-in automatic parallelization # default to relaxing atoms only - optcell: 0 # do not optimize the cell, Abinit default - ionmov: 22 # optimize ionic positions with L-BFGS - dilatmx: 1.00 # don't book additional memory for basis set enlargement, Abinit default - ecutsm: 0.00 # don't smear the energy cutoff, Abinit default + optcell: 0 # do not optimize the cell, Abinit default + ionmov: 22 # optimize ionic positions with L-BFGS + dilatmx: 1.00 # don't book additional memory for basis set enlargement, Abinit default + ecutsm: 0.00 # don't smear the energy cutoff, Abinit default # default to metallic treatment - occopt: 7 # Gaussian smearing - fband: 2.00 # increase the number of bands to > fband * natoms - tsmear: 0.0005 # Ha + occopt: 7 # Gaussian smearing + fband: 2.00 # increase the number of bands to > fband * natoms + tsmear: 0.0005 # Ha # default to no spin treatment - nspinor: 1 # no spin-orbit coupling, Abinit default - nsppol: 1 # no spin-polarization, Abinit default - nspden: 1 # no spin-magnetization, Abinit default + nspinor: 1 # no spin-orbit coupling, Abinit default + nsppol: 1 # no spin-polarization, Abinit default + nspden: 1 # no spin-magnetization, Abinit default verification-PBE-v1: - name: "verification-PBE-v1" - description: "Main protocol for the ACWF verification study - PseudoDojo v0.5" - pseudo_family: "PseudoDojo/0.5/PBE/SR/standard/psp8" - cutoff_stringency: "high+20" - base: - kpoints_distance: 0.06 # [1/AA] - abinit: - parameters: - nstep: 500 # Max. no. of SCF steps + name: verification-PBE-v1 + description: Main protocol for the ACWF verification study - PseudoDojo v0.5 + pseudo_family: PseudoDojo/0.5/PBE/SR/standard/psp8 + cutoff_stringency: high+20 + base: + kpoints_distance: 0.06 # [1/AA] + abinit: + parameters: + nstep: 500 # Max. no. of SCF steps # Tolerances - tolvrs: 1.0e-10 # Tolerance on the potential residual [Ha] - chkprim: 0 # Disable checking if the lattice is primitive - chksymbreak: 0 # Disable check for broken k-point symmetry - autoparal: 1 # Enable automatic parallelization + tolvrs: 1.0e-10 # Tolerance on the potential residual [Ha] + chkprim: 0 # Disable checking if the lattice is primitive + chksymbreak: 0 # Disable check for broken k-point symmetry + autoparal: 1 # Enable automatic parallelization # Relax atomic positions - optcell: 0 # [DEFAULT] No cell optimization - ionmov: 22 # Atomic position optimization with L-BFGS - dilatmx: 1.0 # [DEFAULT] Don't book additional memory for basis set enlargement - ecutsm: 0.0 # Kinetic energy cutoff smearing [Ha] + optcell: 0 # [DEFAULT] No cell optimization + ionmov: 22 # Atomic position optimization with L-BFGS + dilatmx: 1.0 # [DEFAULT] Don't book additional memory for basis set enlargement + ecutsm: 0.0 # Kinetic energy cutoff smearing [Ha] # Treat with smearing - occopt: 3 # Fermi-Dirac smearing - fband: 4.0 # No. of bands > fband * no. of atoms (Note: this is very conservative) - tsmear: 0.00225 # 0.0045 Ry [Ha] + occopt: 3 # Fermi-Dirac smearing + fband: 4.0 # No. of bands > fband * no. of atoms (Note: this is very conservative) + tsmear: 0.00225 # 0.0045 Ry [Ha] # No spin treatment - nspinor: 1 # [DEFAULT] No spin-orbit coupling - nsppol: 1 # [DEFAULT] No spin-polarization - nspden: 1 # [DEFAULT] No spin-magnetization + nspinor: 1 # [DEFAULT] No spin-orbit coupling + nsppol: 1 # [DEFAULT] No spin-polarization + nspden: 1 # [DEFAULT] No spin-magnetization diff --git a/src/aiida_common_workflows/workflows/relax/castep/additional_otfg_families.yml b/src/aiida_common_workflows/workflows/relax/castep/additional_otfg_families.yml index d7326774..9a91d6ca 100644 --- a/src/aiida_common_workflows/workflows/relax/castep/additional_otfg_families.yml +++ b/src/aiida_common_workflows/workflows/relax/castep/additional_otfg_families.yml @@ -1,32 +1,32 @@ # Family based on C19 with updated potentials for lanthanide and actinides C19V2: - - "C19" - - "La 2|2.3|5|6|7|50U:60:51:52:43{4f0.1}(qc=4.5)" - - "Ce 2|2.2|8|9|10|50U:60:51:52:43{5d0.1}(qc=4.5)" - - "Pr 2|2.1|10|12|13|50U:60:51:52:43{5d0.1}(qc=5)" - - "Nd 2|2.1|10|12|13|50U:60:51:52:43{5d0.1}(qc=5)" - - "Pm 2|2.1|8|9|11|50U:60:51:52:43{5d0.1,4f4}(qc=5.5)" - - "Sm 2|2.1|9|10|12|50U:60:51:52:43{5d0.1,4f5}(qc=5.5)" - - "Eu 2|2.1|9|10|12|50U:60:51:52:43{5d0.1,4f6}(qc=5.5)" - - "Gd 3|2.1|9|10|12|50U:60:51:52:43(qc=5.5)" - - "Tb 2|2.2|12|13|15|50U:60:51:52:43{5d0.1}(qc=5)" - - "Dy 2|2.0|12|13|15|50U:60:51:52:43{5d0.1}(qc=6.5)" - - "Ho 2|2.0|12|13|15|50U:60:51:52:43{5d0.1}(qc=6.5)" - - "Er 2|2.1|10|12|13|50U:60:51:52:43{6s0.1,5d0.1}(qc=6)" - - "Tm 2|2.1|10|12|13|50U:60:51:52:43{5d0.1,4f12}(qc=6)" - - "Yb 2|2.1|10|12|13|50U:60:51:52:43{5d0.1,4f13}(qc=6)" - - "Ac 2|2.4|7|7|9|60U:70U2U2:61:62:53{6d0.1,5f0.1}(qc=5)" - - "Th 2|2.2|7|7|9|60U:70U2U2:61:62:53{5f0.1}(qc=5)" - - "Pa 2|2.2|8|9|10|60U:70U2U2:61:62:53(qc=5)" - - "U 2|2.2|8|9|10|60U:70U2U2:61:62:53(qc=5)" - - "Np 2|2.2|9|10|12|60U:70U2U2:61:62:53(qc=5)" - - "Pu 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5)" - - "Am 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5)" - - "Cm 2|2.2|9|10|12|60U:70U2U2:61:62:53(qc=5.5)" +- C19 +- La 2|2.3|5|6|7|50U:60:51:52:43{4f0.1}(qc=4.5) +- Ce 2|2.2|8|9|10|50U:60:51:52:43{5d0.1}(qc=4.5) +- Pr 2|2.1|10|12|13|50U:60:51:52:43{5d0.1}(qc=5) +- Nd 2|2.1|10|12|13|50U:60:51:52:43{5d0.1}(qc=5) +- Pm 2|2.1|8|9|11|50U:60:51:52:43{5d0.1,4f4}(qc=5.5) +- Sm 2|2.1|9|10|12|50U:60:51:52:43{5d0.1,4f5}(qc=5.5) +- Eu 2|2.1|9|10|12|50U:60:51:52:43{5d0.1,4f6}(qc=5.5) +- Gd 3|2.1|9|10|12|50U:60:51:52:43(qc=5.5) +- Tb 2|2.2|12|13|15|50U:60:51:52:43{5d0.1}(qc=5) +- Dy 2|2.0|12|13|15|50U:60:51:52:43{5d0.1}(qc=6.5) +- Ho 2|2.0|12|13|15|50U:60:51:52:43{5d0.1}(qc=6.5) +- Er 2|2.1|10|12|13|50U:60:51:52:43{6s0.1,5d0.1}(qc=6) +- Tm 2|2.1|10|12|13|50U:60:51:52:43{5d0.1,4f12}(qc=6) +- Yb 2|2.1|10|12|13|50U:60:51:52:43{5d0.1,4f13}(qc=6) +- Ac 2|2.4|7|7|9|60U:70U2U2:61:62:53{6d0.1,5f0.1}(qc=5) +- Th 2|2.2|7|7|9|60U:70U2U2:61:62:53{5f0.1}(qc=5) +- Pa 2|2.2|8|9|10|60U:70U2U2:61:62:53(qc=5) +- U 2|2.2|8|9|10|60U:70U2U2:61:62:53(qc=5) +- Np 2|2.2|9|10|12|60U:70U2U2:61:62:53(qc=5) +- Pu 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5) +- Am 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5) +- Cm 2|2.2|9|10|12|60U:70U2U2:61:62:53(qc=5.5) # Elements below in this family are not tested again all-electron codes - use with CAUTION - - "Bk 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5)" - - "Cf 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5)" - - "Es 2|2.1|10|12|13|60U:70U2U2:61:62:53{6d0.1}(qc=6)" - - "Fm 2|2.1|10|12|13|60U:70U2U2:61:62:53{6d0.1}(qc=6)" - - "Md 2|2.0|10|12|13|60U:70U2U2:61:62:53{6d0.1,5f12}(qc=6)" - - "No 2|2.0|10|12|13|60U:70U2U2:61:62:53{6d0.1,5f13}(qc=6)" +- Bk 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5) +- Cf 2|2.2|9|10|12|60U:70U2U2:61:62:53{6d0.1}(qc=5.5) +- Es 2|2.1|10|12|13|60U:70U2U2:61:62:53{6d0.1}(qc=6) +- Fm 2|2.1|10|12|13|60U:70U2U2:61:62:53{6d0.1}(qc=6) +- Md 2|2.0|10|12|13|60U:70U2U2:61:62:53{6d0.1,5f12}(qc=6) +- No 2|2.0|10|12|13|60U:70U2U2:61:62:53{6d0.1,5f13}(qc=6) diff --git a/src/aiida_common_workflows/workflows/relax/castep/protocol.yml b/src/aiida_common_workflows/workflows/relax/castep/protocol.yml index 7f33d0a2..262a2ef9 100644 --- a/src/aiida_common_workflows/workflows/relax/castep/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/castep/protocol.yml @@ -1,165 +1,165 @@ moderate: - name: 'moderate' - description: 'Protocol to relax a structure with normal precision at moderate computational cost.' - relax: - relax_options: - max_meta_iterations: 5 + name: moderate + description: Protocol to relax a structure with normal precision at moderate computational cost. + relax: + relax_options: + max_meta_iterations: 5 - base: - kpoints_spacing: 0.15 # Note that is equivalent to kpoints_mp_spacing : 0.023873 - pseudos_family: 'C19' - max_iterations: 5 - calc: - parameters: - task: geometryoptimisation - xc_functional: pbe - calculate_stress: true - symmetry_generate: true - snap_to_symmetry: true - basis_precision: fine - write_otfg: false - opt_strategy: speed - write_bib: false - max_scf_cycles: 100 - elec_energy_tol: 1e-6 - geom_force_tol: 0.05 - geom_energy_tol: 2.0e-5 - geom_stress_tol: 0.1 + base: + kpoints_spacing: 0.15 # Note that is equivalent to kpoints_mp_spacing : 0.023873 + pseudos_family: C19 + max_iterations: 5 + calc: + parameters: + task: geometryoptimisation + xc_functional: pbe + calculate_stress: true + symmetry_generate: true + snap_to_symmetry: true + basis_precision: fine + write_otfg: false + opt_strategy: speed + write_bib: false + max_scf_cycles: 100 + elec_energy_tol: 1e-6 + geom_force_tol: 0.05 + geom_energy_tol: 2.0e-5 + geom_stress_tol: 0.1 precise: - name: 'precise' - description: 'Protocol to relax a structure with high precision at higher computational cost.' - relax: - relax_options: - max_meta_iterations: 5 + name: precise + description: Protocol to relax a structure with high precision at higher computational cost. + relax: + relax_options: + max_meta_iterations: 5 - base: - kpoints_spacing: 0.1 # Equivalent to `kpoints_mp_spacing : 0.015915` - pseudos_family: 'C19' - max_iterations: 5 - calc: - parameters: - task: geometryoptimisation - xc_functional: pbe - symmetry_generate: true - snap_to_symmetry: true - calculate_stress: true - basis_precision: precise - write_otfg: false - opt_strategy: speed - write_bib: false - max_scf_cycles: 100 - elec_energy_tol: 1e-8 - geom_force_tol: 0.03 - geom_energy_tol: 1.0e-5 - geom_stress_tol: 0.05 - grid_scale: 2 - fine_grid_scale : 3 + base: + kpoints_spacing: 0.1 # Equivalent to `kpoints_mp_spacing : 0.015915` + pseudos_family: C19 + max_iterations: 5 + calc: + parameters: + task: geometryoptimisation + xc_functional: pbe + symmetry_generate: true + snap_to_symmetry: true + calculate_stress: true + basis_precision: precise + write_otfg: false + opt_strategy: speed + write_bib: false + max_scf_cycles: 100 + elec_energy_tol: 1e-8 + geom_force_tol: 0.03 + geom_energy_tol: 1.0e-5 + geom_stress_tol: 0.05 + grid_scale: 2 + fine_grid_scale: 3 fast: - name: 'fast' - description: 'Protocol to relax a structure with low precision at minimal computational cost for testing purposes.' - relax: - relax_options: - max_meta_iterations: 5 + name: fast + description: Protocol to relax a structure with low precision at minimal computational cost for testing purposes. + relax: + relax_options: + max_meta_iterations: 5 - base: - kpoints_spacing: 0.25 # Equivalent to `kpoints_mp_spacing : 0.039789` - pseudos_family: 'QC5' - max_iterations: 5 - calc: - parameters: - task: geometryoptimisation - xc_functional: pbe - symmetry_generate: true - snap_to_symmetry: true - calculate_stress: true - basis_precision: medium - write_otfg: false - opt_strategy: speed - write_bib: false - max_scf_cycles: 100 - geom_force_tol: 0.05 - geom_energy_tol: 2.0e-5 - geom_stress_tol: 0.1 + base: + kpoints_spacing: 0.25 # Equivalent to `kpoints_mp_spacing : 0.039789` + pseudos_family: QC5 + max_iterations: 5 + calc: + parameters: + task: geometryoptimisation + xc_functional: pbe + symmetry_generate: true + snap_to_symmetry: true + calculate_stress: true + basis_precision: medium + write_otfg: false + opt_strategy: speed + write_bib: false + max_scf_cycles: 100 + geom_force_tol: 0.05 + geom_energy_tol: 2.0e-5 + geom_stress_tol: 0.1 verification-PBE-v1-a0: - name: 'verification-PBE-v1-a0' - description: 'Protocol for the oxides validation study.' - relax: - relax_options: - max_meta_iterations: 5 + name: verification-PBE-v1-a0 + description: Protocol for the oxides validation study. + relax: + relax_options: + max_meta_iterations: 5 - base: - pseudos_family: 'C19V2' - max_iterations: 5 - kpoints_spacing: 0.06 # K point spacing in A^-1, not the A^-1 2Pi that CASTEP defaults to - ensure_gamma_centering: True # Ensure that the kpoint grid is Gamma-centered - calc: - parameters: - task: geometryoptimisation - xc_functional: pbe - symmetry_generate: true - snap_to_symmetry: true - calculate_stress: true - cut_off_energy: 800 # Fixed cut off energy for handling both unaries and oxides - write_otfg: false - opt_strategy: speed - write_bib: false - write_checkpoint: minimal - finite_basis_corr: none # No finite basis corr as we are NOT moving any atoms.... - max_scf_cycles: 100 - elec_energy_tol: 1e-8 - geom_force_tol: 0.03 - geom_energy_tol: 1.0e-5 - geom_stress_tol: 0.05 - grid_scale: 2 - fine_grid_scale : 3 + base: + pseudos_family: C19V2 + max_iterations: 5 + kpoints_spacing: 0.06 # K point spacing in A^-1, not the A^-1 2Pi that CASTEP defaults to + ensure_gamma_centering: true # Ensure that the kpoint grid is Gamma-centered + calc: + parameters: + task: geometryoptimisation + xc_functional: pbe + symmetry_generate: true + snap_to_symmetry: true + calculate_stress: true + cut_off_energy: 800 # Fixed cut off energy for handling both unaries and oxides + write_otfg: false + opt_strategy: speed + write_bib: false + write_checkpoint: minimal + finite_basis_corr: none # No finite basis corr as we are NOT moving any atoms.... + max_scf_cycles: 100 + elec_energy_tol: 1e-8 + geom_force_tol: 0.03 + geom_energy_tol: 1.0e-5 + geom_stress_tol: 0.05 + grid_scale: 2 + fine_grid_scale: 3 # Revised smearing scheme for the oxide validation project - smearing_width: 0.06122561905370023 # Equivalent to 0.0045 Ry - smearing_scheme: FERMIDIRAC - perc_extra_bands: 80 - settings: - ADDITIONAL_RETRIEVE_TEMPORARY_LIST: ["aiida.castep_bin"] + smearing_width: 0.06122561905370023 # Equivalent to 0.0045 Ry + smearing_scheme: FERMIDIRAC + perc_extra_bands: 80 + settings: + ADDITIONAL_RETRIEVE_TEMPORARY_LIST: [aiida.castep_bin] verification-PBE-v1: - name: 'verification-PBE-v1' - description: 'Protocol for the oxides validation study.' - relax: - relax_options: - max_meta_iterations: 5 + name: verification-PBE-v1 + description: Protocol for the oxides validation study. + relax: + relax_options: + max_meta_iterations: 5 - base: - pseudos_family: 'C19MK2' - max_iterations: 5 - kpoints_spacing: 0.06 # K point spacing in A^-1, not the A^-1 2Pi that CASTEP defaults to - ensure_gamma_centering: True # Ensure that the kpoint grid is Gamma-centered - calc: - parameters: - task: geometryoptimisation - xc_functional: pbe - symmetry_generate: true - snap_to_symmetry: true - calculate_stress: true - cut_off_energy: 800 # Fixed cut off energy for handling both unaries and oxides - write_otfg: false - opt_strategy: speed - write_bib: false - write_checkpoint: minimal - finite_basis_corr: none # No finite basis corr as we are NOT moving any atoms.... - max_scf_cycles: 100 - elec_energy_tol: 1e-8 - geom_force_tol: 0.03 - geom_energy_tol: 1.0e-5 - geom_stress_tol: 0.05 - grid_scale: 2 - fine_grid_scale : 3 + base: + pseudos_family: C19MK2 + max_iterations: 5 + kpoints_spacing: 0.06 # K point spacing in A^-1, not the A^-1 2Pi that CASTEP defaults to + ensure_gamma_centering: true # Ensure that the kpoint grid is Gamma-centered + calc: + parameters: + task: geometryoptimisation + xc_functional: pbe + symmetry_generate: true + snap_to_symmetry: true + calculate_stress: true + cut_off_energy: 800 # Fixed cut off energy for handling both unaries and oxides + write_otfg: false + opt_strategy: speed + write_bib: false + write_checkpoint: minimal + finite_basis_corr: none # No finite basis corr as we are NOT moving any atoms.... + max_scf_cycles: 100 + elec_energy_tol: 1e-8 + geom_force_tol: 0.03 + geom_energy_tol: 1.0e-5 + geom_stress_tol: 0.05 + grid_scale: 2 + fine_grid_scale: 3 # Revised smearing scheme for the oxide validation project - smearing_width: 0.06122561905370023 # Equivalent to 0.0045 Ry - smearing_scheme: FERMIDIRAC - perc_extra_bands: 80 - settings: - ADDITIONAL_RETRIEVE_TEMPORARY_LIST: ["aiida.castep_bin"] + smearing_width: 0.06122561905370023 # Equivalent to 0.0045 Ry + smearing_scheme: FERMIDIRAC + perc_extra_bands: 80 + settings: + ADDITIONAL_RETRIEVE_TEMPORARY_LIST: [aiida.castep_bin] diff --git a/src/aiida_common_workflows/workflows/relax/castep/soft_elements.yml b/src/aiida_common_workflows/workflows/relax/castep/soft_elements.yml index a97da9b5..3fcd2c1b 100644 --- a/src/aiida_common_workflows/workflows/relax/castep/soft_elements.yml +++ b/src/aiida_common_workflows/workflows/relax/castep/soft_elements.yml @@ -16,7 +16,7 @@ - Kr - Rb - Sr -- 'Y' +- Y - Zr - In - Sn @@ -49,7 +49,7 @@ - Ac - Th - Pa -- 'No' +- No - Lr - Rf - Db diff --git a/src/aiida_common_workflows/workflows/relax/cp2k/dzvp-pbe-gth.yml b/src/aiida_common_workflows/workflows/relax/cp2k/dzvp-pbe-gth.yml index 658ddb49..c5f3a7ce 100644 --- a/src/aiida_common_workflows/workflows/relax/cp2k/dzvp-pbe-gth.yml +++ b/src/aiida_common_workflows/workflows/relax/cp2k/dzvp-pbe-gth.yml @@ -1,27 +1,27 @@ basis_set: - H: DZVP-MOLOPT-SR-GTH-q1 + H: DZVP-MOLOPT-SR-GTH-q1 He: DZVP-MOLOPT-SR-GTH-q2 Li: DZVP-MOLOPT-SR-GTH-q3 Be: DZVP-MOLOPT-SR-GTH-q4 - B: DZVP-MOLOPT-SR-GTH-q3 - C: DZVP-MOLOPT-SR-GTH-q4 - N: DZVP-MOLOPT-SR-GTH-q5 - O: DZVP-MOLOPT-SR-GTH-q6 - F: DZVP-MOLOPT-SR-GTH-q7 + B: DZVP-MOLOPT-SR-GTH-q3 + C: DZVP-MOLOPT-SR-GTH-q4 + N: DZVP-MOLOPT-SR-GTH-q5 + O: DZVP-MOLOPT-SR-GTH-q6 + F: DZVP-MOLOPT-SR-GTH-q7 Ne: DZVP-MOLOPT-SR-GTH-q8 Na: DZVP-MOLOPT-SR-GTH-q9 Mg: DZVP-MOLOPT-SR-GTH-q10 Al: DZVP-MOLOPT-SR-GTH-q3 Si: DZVP-MOLOPT-SR-GTH-q4 - P: DZVP-MOLOPT-SR-GTH-q5 - S: DZVP-MOLOPT-SR-GTH-q6 + P: DZVP-MOLOPT-SR-GTH-q5 + S: DZVP-MOLOPT-SR-GTH-q6 Cl: DZVP-MOLOPT-SR-GTH-q7 Ar: DZVP-MOLOPT-SR-GTH-q8 - K: DZVP-MOLOPT-SR-GTH-q9 + K: DZVP-MOLOPT-SR-GTH-q9 Ca: DZVP-MOLOPT-SR-GTH-q10 Sc: DZVP-MOLOPT-SR-GTH-q11 Ti: DZVP-MOLOPT-SR-GTH-q12 - V: DZVP-MOLOPT-SR-GTH-q13 + V: DZVP-MOLOPT-SR-GTH-q13 Cr: DZVP-MOLOPT-SR-GTH-q14 Mn: DZVP-MOLOPT-SR-GTH-q15 Fe: DZVP-MOLOPT-SR-GTH-q16 @@ -37,7 +37,7 @@ basis_set: Kr: DZVP-MOLOPT-SR-GTH-q8 Rb: DZVP-MOLOPT-SR-GTH-q9 Sr: DZVP-MOLOPT-SR-GTH-q10 - Y: DZVP-MOLOPT-SR-GTH-q11 + Y: DZVP-MOLOPT-SR-GTH-q11 Zr: DZVP-MOLOPT-SR-GTH-q12 Nb: DZVP-MOLOPT-SR-GTH-q13 Mo: DZVP-MOLOPT-SR-GTH-q14 @@ -51,7 +51,7 @@ basis_set: Sn: DZVP-MOLOPT-SR-GTH-q4 Sb: DZVP-MOLOPT-SR-GTH-q5 Te: DZVP-MOLOPT-SR-GTH-q6 - I: DZVP-MOLOPT-SR-GTH-q7 + I: DZVP-MOLOPT-SR-GTH-q7 Xe: DZVP-MOLOPT-SR-GTH-q8 Cs: DZVP-MOLOPT-SR-GTH-q9 Ba: DZVP-MOLOPT-SR-GTH-q10 @@ -72,7 +72,7 @@ basis_set: Lu: DZVP-MOLOPT-SR-GTH-q25 Hf: DZVP-MOLOPT-SR-GTH-q12 Ta: DZVP-MOLOPT-SR-GTH-q13 - W: DZVP-MOLOPT-SR-GTH-q14 + W: DZVP-MOLOPT-SR-GTH-q14 Re: DZVP-MOLOPT-SR-GTH-q15 Os: DZVP-MOLOPT-SR-GTH-q16 Ir: DZVP-MOLOPT-SR-GTH-q17 @@ -87,29 +87,29 @@ basis_set: Rn: DZVP-MOLOPT-SR-GTH-q8 pseudopotential: - H: GTH-PBE-q1 + H: GTH-PBE-q1 He: GTH-PBE-q2 Li: GTH-PBE-q3 Be: GTH-PBE-q4 - B: GTH-PBE-q3 - C: GTH-PBE-q4 - N: GTH-PBE-q5 - O: GTH-PBE-q6 - F: GTH-PBE-q7 + B: GTH-PBE-q3 + C: GTH-PBE-q4 + N: GTH-PBE-q5 + O: GTH-PBE-q6 + F: GTH-PBE-q7 Ne: GTH-PBE-q8 Na: GTH-PBE-q9 Mg: GTH-PBE-q10 Al: GTH-PBE-q3 Si: GTH-PBE-q4 - P: GTH-PBE-q5 - S: GTH-PBE-q6 + P: GTH-PBE-q5 + S: GTH-PBE-q6 Cl: GTH-PBE-q7 Ar: GTH-PBE-q8 - K: GTH-PBE-q9 + K: GTH-PBE-q9 Ca: GTH-PBE-q10 Sc: GTH-PBE-q11 Ti: GTH-PBE-q12 - V: GTH-PBE-q13 + V: GTH-PBE-q13 Cr: GTH-PBE-q14 Mn: GTH-PBE-q15 Fe: GTH-PBE-q16 @@ -125,7 +125,7 @@ pseudopotential: Kr: GTH-PBE-q8 Rb: GTH-PBE-q9 Sr: GTH-PBE-q10 - Y: GTH-PBE-q11 + Y: GTH-PBE-q11 Zr: GTH-PBE-q12 Nb: GTH-PBE-q13 Mo: GTH-PBE-q14 @@ -139,7 +139,7 @@ pseudopotential: Sn: GTH-PBE-q4 Sb: GTH-PBE-q5 Te: GTH-PBE-q6 - I: GTH-PBE-q7 + I: GTH-PBE-q7 Xe: GTH-PBE-q8 Cs: GTH-PBE-q9 Ba: GTH-PBE-q10 @@ -160,7 +160,7 @@ pseudopotential: Lu: GTH-PBE-q25 Hf: GTH-PBE-q12 Ta: GTH-PBE-q13 - W: GTH-PBE-q14 + W: GTH-PBE-q14 Re: GTH-PBE-q15 Os: GTH-PBE-q16 Ir: GTH-PBE-q17 diff --git a/src/aiida_common_workflows/workflows/relax/cp2k/protocol.yml b/src/aiida_common_workflows/workflows/relax/cp2k/protocol.yml index 3dfb664b..b6241c17 100644 --- a/src/aiida_common_workflows/workflows/relax/cp2k/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/cp2k/protocol.yml @@ -1,43 +1,43 @@ moderate: - description: 'Protocol to relax a structure with normal precision at moderate computational cost.' + description: Protocol to relax a structure with normal precision at moderate computational cost. kpoints_distance: 0.5 basis_pseudo: dzvp-pbe-gth.yml input: GLOBAL: PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing FORCE_EVAL: - METHOD: QUICKSTEP - STRESS_TENSOR: ANALYTICAL + METHOD: QUICKSTEP + STRESS_TENSOR: ANALYTICAL PRINT: FORCES: FILENAME: requested-forces ADD_LAST: SYMBOLIC DFT: BASIS_SET_FILE_NAME: - - BASIS_MOLOPT - - BASIS_MOLOPT_UZH - - BASIS_MOLOPT_UCL - - GTH_BASIS_SETS + - BASIS_MOLOPT + - BASIS_MOLOPT_UZH + - BASIS_MOLOPT_UCL + - GTH_BASIS_SETS POTENTIAL_FILE_NAME: - - GTH_POTENTIALS - UKS: False - CHARGE: 0 + - GTH_POTENTIALS + UKS: false + CHARGE: 0 MGRID: - CUTOFF: 600 - REL_CUTOFF: 40 - NGRIDS: 4 + CUTOFF: 600 + REL_CUTOFF: 40 + NGRIDS: 4 QS: METHOD: GPW - EPS_DEFAULT: 1.0E-12 + EPS_DEFAULT: 1.0E-12 EXTRAPOLATION: ASPC SCF: - MAX_SCF: 20 - EPS_SCF: 1.0E-7 + MAX_SCF: 20 + EPS_SCF: 1.0E-7 MAX_ITER_LUMO: 10000 OUTER_SCF: - MAX_SCF: 30 - EPS_SCF: 1.0E-7 + MAX_SCF: 30 + EPS_SCF: 1.0E-7 XC: XC_FUNCTIONAL: PBE: @@ -53,16 +53,16 @@ moderate: NHOMO: 1 # all eigenvalues are dumped anyway NLUMO: 1 # specified neigenvalues are dupmed MULLIKEN: - _: 'ON' + _: ON ADD_LAST: SYMBOLIC EACH: CELL_OPT: 0 GEO_OPT: 0 MD: 0 LOWDIN: - _: 'OFF' + _: OFF HIRSHFELD: - _: 'OFF' + _: OFF MOTION: PRINT: TRAJECTORY: @@ -78,43 +78,43 @@ moderate: GEO_OPT: 1 MD: 1 RESTART_HISTORY: - _: 'OFF' + _: OFF CELL: - _: 'OFF' + _: OFF VELOCITIES: - _: 'OFF' + _: OFF FORCES: - _: 'ON' + _: ON STRESS: - _: 'ON' + _: ON GEO_OPT: TYPE: MINIMIZATION #default: MINIMIZATION OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.25" #default: [angstrom] 0.25 + TRUST_RADIUS: '[angstrom] 0.25' #default: [angstrom] 0.25 CELL_OPT: TYPE: DIRECT_CELL_OPT #default: DIRECT_CELL_OPT - EXTERNAL_PRESSURE: "[bar] 0.0" - PRESSURE_TOLERANCE: "[bar] 100" #default: 100 - KEEP_ANGLES: False - KEEP_SYMMETRY: False + EXTERNAL_PRESSURE: '[bar] 0.0' + PRESSURE_TOLERANCE: '[bar] 100' #default: 100 + KEEP_ANGLES: false + KEEP_SYMMETRY: false OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.5" + TRUST_RADIUS: '[angstrom] 0.5' precise: - description: 'Protocol to relax a structure with high precision at higher computational cost.' + description: Protocol to relax a structure with high precision at higher computational cost. kpoints_distance: 0.06 cell_ref_scale_factor: 1.2766 #=1.2/0.94, assumption: ref.workchain starts at lowest scale of 0.94 for EOS basis_pseudo: dzvp-pbe-gth.yml @@ -122,44 +122,44 @@ precise: GLOBAL: PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing FORCE_EVAL: - METHOD: QUICKSTEP - STRESS_TENSOR: ANALYTICAL + METHOD: QUICKSTEP + STRESS_TENSOR: ANALYTICAL PRINT: FORCES: FILENAME: requested-forces ADD_LAST: SYMBOLIC DFT: BASIS_SET_FILE_NAME: - - BASIS_MOLOPT - - BASIS_MOLOPT_UZH - - BASIS_MOLOPT_UCL - - GTH_BASIS_SETS + - BASIS_MOLOPT + - BASIS_MOLOPT_UZH + - BASIS_MOLOPT_UCL + - GTH_BASIS_SETS POTENTIAL_FILE_NAME: - - GTH_POTENTIALS - UKS: False - CHARGE: 0 + - GTH_POTENTIALS + UKS: false + CHARGE: 0 MGRID: - CUTOFF: 2400 - REL_CUTOFF: 80 - NGRIDS: 4 # Set to 1 for an extremely precise grid + CUTOFF: 2400 + REL_CUTOFF: 80 + NGRIDS: 4 # Set to 1 for an extremely precise grid QS: METHOD: GPW - EPS_DEFAULT: 1.0E-16 + EPS_DEFAULT: 1.0E-16 EXTRAPOLATION: ASPC SCF: - MAX_SCF: 300 # ROBUST: optimum compromise - EPS_SCF: 1.0E-7 + MAX_SCF: 300 # ROBUST: optimum compromise + EPS_SCF: 1.0E-7 MAX_ITER_LUMO: 10000 # for computing the Band gap OUTER_SCF: - MAX_SCF: 10 # ROBUST: more than the Standard protocol - EPS_SCF: 1.0E-7 + MAX_SCF: 10 # ROBUST: more than the Standard protocol + EPS_SCF: 1.0E-7 XC: XC_FUNCTIONAL: PBE: PARAMETRIZATION: ORIG PRINT: MO: - _: 'OFF' + _: OFF ADD_LAST: SYMBOLIC EIGENVALUES: ON OCCUPATION_NUMBERS: ON @@ -170,16 +170,16 @@ precise: MD: 0 QS_SCF: 0 MULLIKEN: - _: 'ON' + _: ON ADD_LAST: SYMBOLIC EACH: CELL_OPT: 0 GEO_OPT: 0 MD: 0 LOWDIN: - _: 'OFF' + _: OFF HIRSHFELD: - _: 'OFF' + _: OFF MOTION: PRINT: TRAJECTORY: @@ -195,80 +195,80 @@ precise: GEO_OPT: 1 MD: 1 RESTART_HISTORY: - _: 'OFF' + _: OFF CELL: - _: 'OFF' + _: OFF VELOCITIES: - _: 'OFF' + _: OFF FORCES: - _: 'ON' + _: ON STRESS: - _: 'ON' + _: ON GEO_OPT: TYPE: MINIMIZATION #default: MINIMIZATION OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.25" #default: [angstrom] 0.25 + TRUST_RADIUS: '[angstrom] 0.25' #default: [angstrom] 0.25 CELL_OPT: TYPE: DIRECT_CELL_OPT #default: DIRECT_CELL_OPT - EXTERNAL_PRESSURE: "[bar] 0.0" - PRESSURE_TOLERANCE: "[bar] 100" #default: 100 - KEEP_ANGLES: False - KEEP_SYMMETRY: False + EXTERNAL_PRESSURE: '[bar] 0.0' + PRESSURE_TOLERANCE: '[bar] 100' #default: 100 + KEEP_ANGLES: false + KEEP_SYMMETRY: false OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.5" + TRUST_RADIUS: '[angstrom] 0.5' fast: - description: 'Protocol to relax a structure with low precision at minimal computational cost for testing purposes.' + description: Protocol to relax a structure with low precision at minimal computational cost for testing purposes. kpoints_distance: 1.0 basis_pseudo: dzvp-pbe-gth.yml input: GLOBAL: PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing FORCE_EVAL: - METHOD: QUICKSTEP - STRESS_TENSOR: ANALYTICAL + METHOD: QUICKSTEP + STRESS_TENSOR: ANALYTICAL PRINT: FORCES: FILENAME: requested-forces ADD_LAST: SYMBOLIC DFT: BASIS_SET_FILE_NAME: - - BASIS_MOLOPT - - BASIS_MOLOPT_UZH - - BASIS_MOLOPT_UCL - - GTH_BASIS_SETS + - BASIS_MOLOPT + - BASIS_MOLOPT_UZH + - BASIS_MOLOPT_UCL + - GTH_BASIS_SETS POTENTIAL_FILE_NAME: - - GTH_POTENTIALS - UKS: False - CHARGE: 0 + - GTH_POTENTIALS + UKS: false + CHARGE: 0 MGRID: - CUTOFF: 400 - REL_CUTOFF: 30 - NGRIDS: 4 + CUTOFF: 400 + REL_CUTOFF: 30 + NGRIDS: 4 QS: METHOD: GPW - EPS_DEFAULT: 1.0E-10 + EPS_DEFAULT: 1.0E-10 EXTRAPOLATION: ASPC SCF: - MAX_SCF: 20 - EPS_SCF: 1.0E-6 + MAX_SCF: 20 + EPS_SCF: 1.0E-6 MAX_ITER_LUMO: 10000 OUTER_SCF: - MAX_SCF: 30 - EPS_SCF: 1.0E-6 + MAX_SCF: 30 + EPS_SCF: 1.0E-6 XC: XC_FUNCTIONAL: PBE: @@ -284,16 +284,16 @@ fast: NHOMO: 1 # all eigenvalues are dumped anyway NLUMO: 1 # specified neigenvalues are dupmed MULLIKEN: - _: 'ON' + _: ON ADD_LAST: SYMBOLIC EACH: CELL_OPT: 0 GEO_OPT: 0 MD: 0 LOWDIN: - _: 'OFF' + _: OFF HIRSHFELD: - _: 'OFF' + _: OFF MOTION: PRINT: TRAJECTORY: @@ -309,87 +309,87 @@ fast: GEO_OPT: 1 MD: 1 RESTART_HISTORY: - _: 'OFF' + _: OFF CELL: - _: 'OFF' + _: OFF VELOCITIES: - _: 'OFF' + _: OFF FORCES: - _: 'ON' + _: ON STRESS: - _: 'ON' + _: ON GEO_OPT: TYPE: MINIMIZATION #default: MINIMIZATION OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.25" #default: [angstrom] 0.25 + TRUST_RADIUS: '[angstrom] 0.25' #default: [angstrom] 0.25 CELL_OPT: TYPE: DIRECT_CELL_OPT #default: DIRECT_CELL_OPT - EXTERNAL_PRESSURE: "[bar] 0.0" - PRESSURE_TOLERANCE: "[bar] 100" #default: 100 - KEEP_ANGLES: False - KEEP_SYMMETRY: False + EXTERNAL_PRESSURE: '[bar] 0.0' + PRESSURE_TOLERANCE: '[bar] 100' #default: 100 + KEEP_ANGLES: false + KEEP_SYMMETRY: false OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.5" + TRUST_RADIUS: '[angstrom] 0.5' verification-PBE-v1: - description: 'Protocol to relax a structure with high precision at higher computational cost.' + description: Protocol to relax a structure with high precision at higher computational cost. kpoints_distance: 0.06 cell_ref_scale_factor: 1.2766 #=1.2/0.94, assumption: ref.workchain starts at lowest scale of 0.94 for EOS basis_pseudo: tzv2p-pbe-gth.yml input: GLOBAL: - EXTENDED_FFT_LENGTHS: True + EXTENDED_FFT_LENGTHS: true PREFERRED_DIAG_LIBRARY: ScaLAPACK - PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing + PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing FORCE_EVAL: - METHOD: QUICKSTEP - STRESS_TENSOR: ANALYTICAL + METHOD: QUICKSTEP + STRESS_TENSOR: ANALYTICAL PRINT: FORCES: FILENAME: requested-forces ADD_LAST: SYMBOLIC DFT: BASIS_SET_FILE_NAME: - - BASIS_MOLOPT - - BASIS_MOLOPT_UZH - - BASIS_MOLOPT_UCL - - GTH_BASIS_SETS + - BASIS_MOLOPT + - BASIS_MOLOPT_UZH + - BASIS_MOLOPT_UCL + - GTH_BASIS_SETS POTENTIAL_FILE_NAME: - - GTH_POTENTIALS - UKS: False - CHARGE: 0 + - GTH_POTENTIALS + UKS: false + CHARGE: 0 MGRID: - CUTOFF: 2400 - REL_CUTOFF: 80 - NGRIDS: 4 # Set to 1 for an extremely precise grid + CUTOFF: 2400 + REL_CUTOFF: 80 + NGRIDS: 4 # Set to 1 for an extremely precise grid QS: METHOD: GPW - EPS_DEFAULT: 1.0E-16 + EPS_DEFAULT: 1.0E-16 EXTRAPOLATION: ASPC SCF: - MAX_SCF: 300 # ROBUST: optimum compromise - EPS_SCF: 1.0E-7 + MAX_SCF: 300 # ROBUST: optimum compromise + EPS_SCF: 1.0E-7 MAX_ITER_LUMO: 10000 # for computing the Band gap OUTER_SCF: - MAX_SCF: 10 # ROBUST: more than the Standard protocol - EPS_SCF: 1.0E-7 + MAX_SCF: 10 # ROBUST: more than the Standard protocol + EPS_SCF: 1.0E-7 PRINT: RESTART: BACKUP_COPIES: 1 - LOG_PRINT_KEY: True + LOG_PRINT_KEY: true EACH: QS_SCF: 5 XC: @@ -398,7 +398,7 @@ verification-PBE-v1: PARAMETRIZATION: ORIG PRINT: MO: - _: 'OFF' + _: OFF ADD_LAST: SYMBOLIC EIGENVALUES: ON OCCUPATION_NUMBERS: ON @@ -409,16 +409,16 @@ verification-PBE-v1: MD: 0 QS_SCF: 0 MULLIKEN: - _: 'ON' + _: ON ADD_LAST: SYMBOLIC EACH: CELL_OPT: 0 GEO_OPT: 0 MD: 0 LOWDIN: - _: 'OFF' + _: OFF HIRSHFELD: - _: 'OFF' + _: OFF MOTION: PRINT: TRAJECTORY: @@ -434,51 +434,51 @@ verification-PBE-v1: GEO_OPT: 1 MD: 1 RESTART_HISTORY: - _: 'OFF' + _: OFF CELL: - _: 'OFF' + _: OFF VELOCITIES: - _: 'OFF' + _: OFF FORCES: - _: 'ON' + _: ON STRESS: - _: 'ON' + _: ON GEO_OPT: TYPE: MINIMIZATION #default: MINIMIZATION OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.25" #default: [angstrom] 0.25 + TRUST_RADIUS: '[angstrom] 0.25' #default: [angstrom] 0.25 CELL_OPT: TYPE: DIRECT_CELL_OPT #default: DIRECT_CELL_OPT - EXTERNAL_PRESSURE: "[bar] 0.0" - PRESSURE_TOLERANCE: "[bar] 100" #default: 100 - KEEP_ANGLES: False - KEEP_SYMMETRY: False + EXTERNAL_PRESSURE: '[bar] 0.0' + PRESSURE_TOLERANCE: '[bar] 100' #default: 100 + KEEP_ANGLES: false + KEEP_SYMMETRY: false OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.5" + TRUST_RADIUS: '[angstrom] 0.5' verification-PBE-v1-sirius: - description: 'Protocol to relax a structure with SIRIUS and UPF pseudopotentials' + description: Protocol to relax a structure with SIRIUS and UPF pseudopotentials kpoints_distance: 0.06 basis_pseudo: SSSP/1.2/PBE/precision input: GLOBAL: - EXTENDED_FFT_LENGTHS: True + EXTENDED_FFT_LENGTHS: true PREFERRED_DIAG_LIBRARY: ScaLAPACK - PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing + PRINT_LEVEL: MEDIUM #default: MEDIUM. Important to have the correct parsing FORCE_EVAL: - METHOD: SIRIUS - STRESS_TENSOR: ANALYTICAL + METHOD: SIRIUS + STRESS_TENSOR: ANALYTICAL PRINT: FORCES: FILENAME: requested-forces @@ -488,7 +488,7 @@ verification-PBE-v1-sirius: VERBOSITY: 2 PARAMETERS: ELECTRONIC_STRUCTURE_METHOD: pseudopotential - USE_SYMMETRY: TRUE + USE_SYMMETRY: true GK_CUTOFF: 10 # a.u.^-1 PW_CUTOFF: 55 # a.u.^-1 ENERGY_TOL: 1e-15 @@ -509,7 +509,7 @@ verification-PBE-v1-sirius: _: '' PRINT: MO: - _: 'OFF' + _: OFF ADD_LAST: SYMBOLIC EIGENVALUES: ON OCCUPATION_NUMBERS: ON @@ -520,16 +520,16 @@ verification-PBE-v1-sirius: MD: 0 QS_SCF: 0 MULLIKEN: - _: 'ON' + _: ON ADD_LAST: SYMBOLIC EACH: CELL_OPT: 0 GEO_OPT: 0 MD: 0 LOWDIN: - _: 'OFF' + _: OFF HIRSHFELD: - _: 'OFF' + _: OFF SUBSYS: MOTION: PRINT: @@ -546,36 +546,36 @@ verification-PBE-v1-sirius: GEO_OPT: 1 MD: 1 RESTART_HISTORY: - _: 'OFF' + _: OFF CELL: - _: 'OFF' + _: OFF VELOCITIES: - _: 'OFF' + _: OFF FORCES: - _: 'ON' + _: ON STRESS: - _: 'ON' + _: ON GEO_OPT: TYPE: MINIMIZATION #default: MINIMIZATION OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.25" #default: [angstrom] 0.25 + TRUST_RADIUS: '[angstrom] 0.25' #default: [angstrom] 0.25 CELL_OPT: TYPE: DIRECT_CELL_OPT #default: DIRECT_CELL_OPT - EXTERNAL_PRESSURE: "[bar] 0.0" - PRESSURE_TOLERANCE: "[bar] 100" #default: 100 - KEEP_ANGLES: False - KEEP_SYMMETRY: False + EXTERNAL_PRESSURE: '[bar] 0.0' + PRESSURE_TOLERANCE: '[bar] 100' #default: 100 + KEEP_ANGLES: false + KEEP_SYMMETRY: false OPTIMIZER: BFGS #default: BFGS - MAX_ITER: 1000 #default: 200 - MAX_DR: "[bohr] 0.0030" #default: [bohr] 0.0030 - RMS_DR: "[bohr] 0.0015" #default: [bohr] 0.0015 - MAX_FORCE: "[bohr^-1*hartree] 0.00045" #default: [bohr^-1*hartree] 0.00045 - RMS_FORCE: "[bohr^-1*hartree] 0.00030" #default: [bohr^-1*hartree] 0.00030 + MAX_ITER: 1000 #default: 200 + MAX_DR: '[bohr] 0.0030' #default: [bohr] 0.0030 + RMS_DR: '[bohr] 0.0015' #default: [bohr] 0.0015 + MAX_FORCE: '[bohr^-1*hartree] 0.00045' #default: [bohr^-1*hartree] 0.00045 + RMS_FORCE: '[bohr^-1*hartree] 0.00030' #default: [bohr^-1*hartree] 0.00030 BFGS: - TRUST_RADIUS: "[angstrom] 0.5" + TRUST_RADIUS: '[angstrom] 0.5' diff --git a/src/aiida_common_workflows/workflows/relax/cp2k/tzv2p-pbe-gth.yml b/src/aiida_common_workflows/workflows/relax/cp2k/tzv2p-pbe-gth.yml index 4316afa5..b884f581 100644 --- a/src/aiida_common_workflows/workflows/relax/cp2k/tzv2p-pbe-gth.yml +++ b/src/aiida_common_workflows/workflows/relax/cp2k/tzv2p-pbe-gth.yml @@ -1,27 +1,27 @@ basis_set: - H: TZV2P-MOLOPT-PBE-GTH-q1 + H: TZV2P-MOLOPT-PBE-GTH-q1 He: TZV2P-MOLOPT-PBE-GTH-q2 Li: TZV2P-MOLOPT-PBE-GTH-q3 Be: TZV2P-MOLOPT-PBE-GTH-q4 - B: TZV2P-MOLOPT-PBE-GTH-q3 - C: TZV2P-MOLOPT-PBE-GTH-q4 - N: TZV2P-MOLOPT-PBE-GTH-q5 - O: TZV2P-MOLOPT-PBE-GTH-q6 - F: TZV2P-MOLOPT-PBE-GTH-q7 + B: TZV2P-MOLOPT-PBE-GTH-q3 + C: TZV2P-MOLOPT-PBE-GTH-q4 + N: TZV2P-MOLOPT-PBE-GTH-q5 + O: TZV2P-MOLOPT-PBE-GTH-q6 + F: TZV2P-MOLOPT-PBE-GTH-q7 Ne: TZV2P-MOLOPT-PBE-GTH-q8 Na: TZV2P-MOLOPT-PBE-GTH-q9 Mg: TZV2P-MOLOPT-PBE-GTH-q10 Al: TZV2P-MOLOPT-PBE-GTH-q3 Si: TZV2P-MOLOPT-PBE-GTH-q4 - P: TZV2P-MOLOPT-PBE-GTH-q5 - S: TZV2P-MOLOPT-PBE-GTH-q6 + P: TZV2P-MOLOPT-PBE-GTH-q5 + S: TZV2P-MOLOPT-PBE-GTH-q6 Cl: TZV2P-MOLOPT-PBE-GTH-q7 Ar: TZV2P-MOLOPT-PBE-GTH-q8 - K: TZV2P-MOLOPT-PBE-GTH-q9 + K: TZV2P-MOLOPT-PBE-GTH-q9 Ca: TZV2P-MOLOPT-PBE-GTH-q10 Sc: TZV2P-MOLOPT-PBE-GTH-q11 Ti: TZV2P-MOLOPT-PBE-GTH-q12 - V: TZV2P-MOLOPT-PBE-GTH-q13 + V: TZV2P-MOLOPT-PBE-GTH-q13 Cr: TZV2P-MOLOPT-PBE-GTH-q14 Mn: TZV2P-MOLOPT-PBE-GTH-q15 Fe: TZV2P-MOLOPT-PBE-GTH-q16 @@ -37,7 +37,7 @@ basis_set: Kr: TZV2P-MOLOPT-PBE-GTH-q8 Rb: TZV2P-MOLOPT-PBE-GTH-q9 Sr: TZV2P-MOLOPT-PBE-GTH-q10 - Y: TZV2P-MOLOPT-PBE-GTH-q11 + Y: TZV2P-MOLOPT-PBE-GTH-q11 Zr: TZV2P-MOLOPT-PBE-GTH-q12 Nb: TZV2P-MOLOPT-PBE-GTH-q13 Mo: TZV2P-MOLOPT-PBE-GTH-q14 @@ -51,13 +51,13 @@ basis_set: Sn: TZV2P-MOLOPT-PBE-GTH-q4 Sb: TZV2P-MOLOPT-PBE-GTH-q5 Te: TZV2P-MOLOPT-PBE-GTH-q6 - I: TZV2P-MOLOPT-PBE-GTH-q7 + I: TZV2P-MOLOPT-PBE-GTH-q7 Xe: TZV2P-MOLOPT-PBE-GTH-q8 Cs: TZV2P-MOLOPT-PBE-GTH-q9 Ba: TZV2P-MOLOPT-PBE-GTH-q10 Hf: TZV2P-MOLOPT-PBE-GTH-q12 Ta: TZV2P-MOLOPT-PBE-GTH-q13 - W: TZV2P-MOLOPT-PBE-GTH-q14 + W: TZV2P-MOLOPT-PBE-GTH-q14 Re: TZV2P-MOLOPT-PBE-GTH-q15 Os: TZV2P-MOLOPT-PBE-GTH-q16 Ir: TZV2P-MOLOPT-PBE-GTH-q17 @@ -72,29 +72,29 @@ basis_set: Rn: TZV2P-MOLOPT-PBE-GTH-q8 pseudopotential: - H: GTH-PBE-q1 + H: GTH-PBE-q1 He: GTH-PBE-q2 Li: GTH-PBE-q3 Be: GTH-PBE-q4 - B: GTH-PBE-q3 - C: GTH-PBE-q4 - N: GTH-PBE-q5 - O: GTH-PBE-q6 - F: GTH-PBE-q7 + B: GTH-PBE-q3 + C: GTH-PBE-q4 + N: GTH-PBE-q5 + O: GTH-PBE-q6 + F: GTH-PBE-q7 Ne: GTH-PBE-q8 Na: GTH-PBE-q9 Mg: GTH-PBE-q10 Al: GTH-PBE-q3 Si: GTH-PBE-q4 - P: GTH-PBE-q5 - S: GTH-PBE-q6 + P: GTH-PBE-q5 + S: GTH-PBE-q6 Cl: GTH-PBE-q7 Ar: GTH-PBE-q8 - K: GTH-PBE-q9 + K: GTH-PBE-q9 Ca: GTH-PBE-q10 Sc: GTH-PBE-q11 Ti: GTH-PBE-q12 - V: GTH-PBE-q13 + V: GTH-PBE-q13 Cr: GTH-PBE-q14 Mn: GTH-PBE-q15 Fe: GTH-PBE-q16 @@ -110,7 +110,7 @@ pseudopotential: Kr: GTH-PBE-q8 Rb: GTH-PBE-q9 Sr: GTH-PBE-q10 - Y: GTH-PBE-q11 + Y: GTH-PBE-q11 Zr: GTH-PBE-q12 Nb: GTH-PBE-q13 Mo: GTH-PBE-q14 @@ -124,13 +124,13 @@ pseudopotential: Sn: GTH-PBE-q4 Sb: GTH-PBE-q5 Te: GTH-PBE-q6 - I: GTH-PBE-q7 + I: GTH-PBE-q7 Xe: GTH-PBE-q8 Cs: GTH-PBE-q9 Ba: GTH-PBE-q10 Hf: GTH-PBE-q12 Ta: GTH-PBE-q13 - W: GTH-PBE-q14 + W: GTH-PBE-q14 Re: GTH-PBE-q15 Os: GTH-PBE-q16 Ir: GTH-PBE-q17 diff --git a/src/aiida_common_workflows/workflows/relax/fleur/protocol.yml b/src/aiida_common_workflows/workflows/relax/fleur/protocol.yml index 926e3a61..1deffe80 100644 --- a/src/aiida_common_workflows/workflows/relax/fleur/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/fleur/protocol.yml @@ -1,86 +1,86 @@ moderate: - name: 'moderate' - inpgen-protocol: 'moderate' - description: 'Protocol to relax a structure with normal precision at moderate computational cost. This relies on the "moderate" protocol of the fleur code.' - relax: - relax_iter: 5 - change_mixing_criterion: 0.025 - run_final_scf: true - scf: - kpoints_distance: 0.2 - fleur_runmax: 2 - itmax_per_run: 120 - force_dict: - qfix: 2 - forcealpha: 0.75 - forcemix: 'straight' + name: moderate + inpgen-protocol: moderate + description: Protocol to relax a structure with normal precision at moderate computational cost. This relies on the "moderate" protocol of the fleur code. + relax: + relax_iter: 5 + change_mixing_criterion: 0.025 + run_final_scf: true + scf: + kpoints_distance: 0.2 + fleur_runmax: 2 + itmax_per_run: 120 + force_dict: + qfix: 2 + forcealpha: 0.75 + forcemix: straight precise: - name: 'precise' - inpgen-protocol: 'precise' - description: 'Protocol to relax a structure with high precision at higher computational cost. This relies on the "precise" protocol of the fleur code.' - relax: - relax_iter: 10 - change_mixing_criterion: 0.025 - run_final_scf: true - scf: - kpoints_distance: 0.1 - fleur_runmax: 3 - itmax_per_run: 120 - force_dict: - qfix: 2 - forcealpha: 0.50 - forcemix: 'straight' + name: precise + inpgen-protocol: precise + description: Protocol to relax a structure with high precision at higher computational cost. This relies on the "precise" protocol of the fleur code. + relax: + relax_iter: 10 + change_mixing_criterion: 0.025 + run_final_scf: true + scf: + kpoints_distance: 0.1 + fleur_runmax: 3 + itmax_per_run: 120 + force_dict: + qfix: 2 + forcealpha: 0.50 + forcemix: straight fast: - name: 'fast' - inpgen-protocol: 'fast' - description: 'Protocol to relax a structure with low precision at minimal computational cost for testing purposes. This relies on the "fast" protocol of the fleur code.' - relax: - relax_iter: 3 - change_mixing_criterion: 0.025 - run_final_scf: true - scf: - fleur_runmax: 2 - itmax_per_run: 120 - kpoints_distance: 0.4 - force_dict: - qfix: 2 - forcealpha: 1.0 - forcemix: 'straight' + name: fast + inpgen-protocol: fast + description: Protocol to relax a structure with low precision at minimal computational cost for testing purposes. This relies on the "fast" protocol of the fleur code. + relax: + relax_iter: 3 + change_mixing_criterion: 0.025 + run_final_scf: true + scf: + fleur_runmax: 2 + itmax_per_run: 120 + kpoints_distance: 0.4 + force_dict: + qfix: 2 + forcealpha: 1.0 + forcemix: straight oxides_validation: - name: 'oxides_validation' - inpgen-protocol: 'oxides_validation' - description: 'Protocol to relax a structure with high precision at higher computational cost. This relies on the "precise" protocol of the fleur code.' - relax: - relax_iter: 10 - change_mixing_criterion: 0.025 - run_final_scf: true - scf: - kpoints_distance: 0.1 - kpoints_force_gamma: true - fleur_runmax: 3 - itmax_per_run: 120 - force_dict: - qfix: 2 - forcealpha: 0.50 - forcemix: 'straight' + name: oxides_validation + inpgen-protocol: oxides_validation + description: Protocol to relax a structure with high precision at higher computational cost. This relies on the "precise" protocol of the fleur code. + relax: + relax_iter: 10 + change_mixing_criterion: 0.025 + run_final_scf: true + scf: + kpoints_distance: 0.1 + kpoints_force_gamma: true + fleur_runmax: 3 + itmax_per_run: 120 + force_dict: + qfix: 2 + forcealpha: 0.50 + forcemix: straight verification-PBE-v1: - name: 'verification-PBE-v1' - inpgen-protocol: 'oxides_validation' - description: 'Protocol to relax a structure with high precision at higher computational cost. This relies on the "oxides_validation" protocol of the fleur code.' - relax: - relax_iter: 10 - change_mixing_criterion: 0.025 - run_final_scf: true - scf: - kpoints_distance: 0.06 - kpoints_force_gamma: true - fleur_runmax: 3 - itmax_per_run: 120 - force_dict: - qfix: 2 - forcealpha: 0.50 - forcemix: 'straight' + name: verification-PBE-v1 + inpgen-protocol: oxides_validation + description: Protocol to relax a structure with high precision at higher computational cost. This relies on the "oxides_validation" protocol of the fleur code. + relax: + relax_iter: 10 + change_mixing_criterion: 0.025 + run_final_scf: true + scf: + kpoints_distance: 0.06 + kpoints_force_gamma: true + fleur_runmax: 3 + itmax_per_run: 120 + force_dict: + qfix: 2 + forcealpha: 0.50 + forcemix: straight diff --git a/src/aiida_common_workflows/workflows/relax/gpaw/protocol.yml b/src/aiida_common_workflows/workflows/relax/gpaw/protocol.yml index 4d74f04b..ed376dfa 100644 --- a/src/aiida_common_workflows/workflows/relax/gpaw/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/gpaw/protocol.yml @@ -1,38 +1,38 @@ oxides_validation: - name: 'oxides_validation' - description: 'Protocol to run oxides validation study.' + name: oxides_validation + description: Protocol to run oxides validation study. parameters: calculator: - name: 'gpaw' + name: gpaw args: - xc: 'PBE' + xc: PBE mode: - '@function': 'PW' + '@function': PW args: ecut: 800 occupations: - name: 'fermi-dirac' + name: fermi-dirac width: 0.06122 optimizer: - name: 'BFGS' + name: BFGS kpoints_options: - gamma: True + gamma: true kpoint_distance: 0.06 moderate: - name: 'moderate' - description: 'Protocol to run oxides validation study.' + name: moderate + description: Protocol to run oxides validation study. parameters: calculator: - name: 'gpaw' + name: gpaw args: - xc: 'PBE' + xc: PBE gpts: - '@function': 'PW' - args: {'ecut': 600} + '@function': PW + args: {ecut: 600} occupations: - name: 'fermi-dirac' + name: fermi-dirac width: 0.0612 optimizer: - name: 'BFGS' + name: BFGS kpoint_distance: 0.04 diff --git a/src/aiida_common_workflows/workflows/relax/nwchem/protocol.yml b/src/aiida_common_workflows/workflows/relax/nwchem/protocol.yml index eb106b83..c37baa7b 100644 --- a/src/aiida_common_workflows/workflows/relax/nwchem/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/nwchem/protocol.yml @@ -1,41 +1,41 @@ moderate: - name: 'moderate' - description: 'Protocol to relax a structure with normal precision at moderate computational cost.' - kpoint_spacing: 0.2 - nwpw: - tolerances: 1.0e-7 - lmbfgs: '' - xc: 'pbe96' - ewald_rcut: 3.0 - ewald_ncut: 8 - driver: - default: '' - maxiter: '2000' + name: moderate + description: Protocol to relax a structure with normal precision at moderate computational cost. + kpoint_spacing: 0.2 + nwpw: + tolerances: 1.0e-7 + lmbfgs: '' + xc: pbe96 + ewald_rcut: 3.0 + ewald_ncut: 8 + driver: + default: '' + maxiter: '2000' precise: - name: 'precise' - description: 'Protocol to relax a structure with high precision at higher computational cost.' - kpoint_spacing: 0.1 - nwpw: - tolerances: 1.0e-9 - lmbfgs: '' - xc: 'pbe96' - ewald_rcut: 3.0 - ewald_ncut: 8 - driver: - tight: '' - maxiter: '2000' + name: precise + description: Protocol to relax a structure with high precision at higher computational cost. + kpoint_spacing: 0.1 + nwpw: + tolerances: 1.0e-9 + lmbfgs: '' + xc: pbe96 + ewald_rcut: 3.0 + ewald_ncut: 8 + driver: + tight: '' + maxiter: '2000' fast: - name: 'fast' - description: 'Protocol to relax a structure with low precision at minimal computational cost for testing purposes.' - kpoint_spacing: 1.0 - nwpw: - tolerances: 1.0e-5 - lmbfgs: '' - xc: 'pbe96' - ewald_rcut: 3.0 - ewald_ncut: 8 - driver: - default: '' - maxiter: '2000' + name: fast + description: Protocol to relax a structure with low precision at minimal computational cost for testing purposes. + kpoint_spacing: 1.0 + nwpw: + tolerances: 1.0e-5 + lmbfgs: '' + xc: pbe96 + ewald_rcut: 3.0 + ewald_ncut: 8 + driver: + default: '' + maxiter: '2000' diff --git a/src/aiida_common_workflows/workflows/relax/orca/protocol.yml b/src/aiida_common_workflows/workflows/relax/orca/protocol.yml index 83288f97..8286fcee 100644 --- a/src/aiida_common_workflows/workflows/relax/orca/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/orca/protocol.yml @@ -1,5 +1,5 @@ fast: - description: 'Minimal basis set for testing purpose!' + description: Minimal basis set for testing purpose! input_blocks: scf: convergence: Strong @@ -10,7 +10,7 @@ fast: - LOOSEOPT extra_input_keywords: [] moderate: - description: 'Moderate size basis set' + description: Moderate size basis set input_blocks: scf: convergence: Tight @@ -21,7 +21,7 @@ moderate: - NORMALOPT extra_input_keywords: [] precise: - description: 'Slightly larger basis set for more accurate results?!' + description: Slightly larger basis set for more accurate results?! input_blocks: scf: convergence: VeryTight diff --git a/src/aiida_common_workflows/workflows/relax/quantum_espresso/protocol.yml b/src/aiida_common_workflows/workflows/relax/quantum_espresso/protocol.yml index 59a8d7eb..95a007a4 100644 --- a/src/aiida_common_workflows/workflows/relax/quantum_espresso/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/quantum_espresso/protocol.yml @@ -1,15 +1,15 @@ verification-PBE-v1: description: Main protocol for the ACWF verification study - SSSP version base: - pseudo_family: &pseudo_family 'SSSP/1.2/PBE/precision' + pseudo_family: &pseudo_family SSSP/1.2/PBE/precision kpoints_distance: &kpoints_distance 0.06 meta_parameters: - conv_thr_per_atom: &conv_thr_per_atom 0.1e-9 - etot_conv_thr_per_atom: 0.5e-5 + conv_thr_per_atom: &conv_thr_per_atom 0.1e-9 + etot_conv_thr_per_atom: 0.5e-5 pw: parameters: CONTROL: - forc_conv_thr: 0.5e-4 + forc_conv_thr: 0.5e-4 SYSTEM: smearing: &smearing fd degauss: °auss 0.0045 @@ -17,7 +17,7 @@ verification-PBE-v1: pseudo_family: *pseudo_family kpoints_distance: *kpoints_distance meta_parameters: - conv_thr_per_atom: *conv_thr_per_atom + conv_thr_per_atom: *conv_thr_per_atom pw: parameters: SYSTEM: diff --git a/src/aiida_common_workflows/workflows/relax/siesta/protocol.yml b/src/aiida_common_workflows/workflows/relax/siesta/protocol.yml index 7203163f..9674caad 100644 --- a/src/aiida_common_workflows/workflows/relax/siesta/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/siesta/protocol.yml @@ -1,25 +1,25 @@ verification-PBE-v1: description: '' parameters: - xc-functional: "GGA" - xc-authors: "PBE" + xc-functional: GGA + xc-authors: PBE max-scf-iterations: 100 scf-mixer-history: 5 scf-mixer-weight: 0.1 scf-dm-tolerance: 1.e-5 - md-max-force-tol: '0.005 eV/Ang' - md-max-stress-tol: '0.7 GPa' - solution-method: 'diagon' - electronic-temperature: '61 meV' - write-forces: True - mesh-cutoff: '900 Ry' - diag-parallel-over-k: True + md-max-force-tol: 0.005 eV/Ang + md-max-stress-tol: 0.7 GPa + solution-method: diagon + electronic-temperature: 61 meV + write-forces: true + mesh-cutoff: 900 Ry + diag-parallel-over-k: true block grid-cell-sampling: "\n 0.5 0.0 0.0\n 0.0 0.5 0.0\n 0.0 0.0 0.5\n 0.5 0.5 0.0\n 0.5 0.0 0.5\n 0.0 0.5 0.5\n 0.5 0.5 0.5\n%endblock gridcellsampling" basis: - pao-split-tail-norm: True - reparametrize-pseudos: True - restricted-radial-grid: False - pseudo_family: 'PseudoDojo/0.4/PBE/FR/standard/psml' + pao-split-tail-norm: true + reparametrize-pseudos: true + restricted-radial-grid: false + pseudo_family: PseudoDojo/0.4/PBE/FR/standard/psml kpoints: distance: 0.06 offset: [0., 0., 0.] @@ -112,37 +112,37 @@ verification-PBE-v1: basis: pao-block: "Cu 6\n n=3 0 1\n 3.762992\n n=3 1 1\n 4.912695\n n=3 2 3\n 8.089686\t 2.635587\t 3.644129\n n=4 0 3\n 10.825617\t 4.888129\t 6.026683\n n=4 1 2\n 7.527117\t 6.020636\n n=4 3 1\n 6.641407" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Zn: basis: pao-block: "Zn 6\n n=3 0 1\n 6.516308\n n=3 1 1\n 5.49605\n n=3 2 3\n 7.497071\t 1.284251\t 1.963604\n n=4 0 3\n 4.097661\t 2.422427\t 3.026947\n n=4 1 2\n 8.781889\t 5.243206\n n=4 3 1\n 8.057372" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Ga: basis: pao-block: "Ga 5\n n=3 2 1\n 6.419177\n n=4 0 3\n 9.982426\t 3.721607\t 4.714842\n n=4 1 3\n 10.062739\t 5.51816\t 6.919763\n n=4 2 2\n 4.781549\t 3.95631\n n=4 3 1\n 3.988246" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Ge: basis: pao-block: "Ge 5\n n=3 2 1\n 6.688272\n n=4 0 3\n 8.001247\t 2.943044\t 3.835368\n n=4 1 3\n 11.133263\t 4.155486\t 5.607166\n n=4 2 2\n 4.321214\t 3.424355\n n=4 3 1\n 4.028308" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry As: basis: pao-block: "As 5\n n=3 2 1\n 7.489512\n n=4 0 3\n 10.276465\t 3.0209\t 3.797007\n n=4 1 3\n 13.532446\t 4.168147\t 5.397785\n n=4 2 2\n 4.570656\t 3.759212\n n=4 3 1\n 4.607506" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Se: basis: pao-block: "Se 5\n n=3 2 1\n 6.142333\n n=4 0 3\n 8.59065\t 3.169999\t 3.854643\n n=4 1 3\n 10.945425\t 4.329907\t 5.392305\n n=4 2 2\n 4.791186\t 4.138856\n n=4 3 1\n 4.805548" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Br: basis: pao-block: "Br 4\n n=4 0 3\n 10.328055\t 2.852904\t 3.490306\n n=4 1 3\n 11.917306\t 3.800786\t 4.771911\n n=4 2 2\n 4.700669\t 3.842927\n n=4 3 1\n 4.060811" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Kr: basis: pao-block: "Kr 4\n n=4 0 3\n 8.479534\t 3.008806\t 3.589705\n n=4 1 3\n 11.786916\t 4.008277\t 4.883216\n n=4 2 2\n 7.564912\t 6.483805\n n=4 3 1\n 5.877584" @@ -183,32 +183,32 @@ verification-PBE-v1: basis: pao-block: "Cd 6\n n=4 0 1\n 5.349409\n n=4 1 1\n 4.996976\n n=4 2 3\n 8.932688\t 2.317737\t 3.039042\n n=4 3 1\n 8.462527\n n=5 0 3\n 7.977248\t 4.588987\t 5.948638\n n=5 1 2\n 13.532446\t 7.656374" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry In: basis: pao-block: "In 5\n n=4 2 1\n 8.122189\n n=4 3 1\n 4.226917\n n=5 0 3\n 12.962508\t 3.319664\t 4.430817\n n=5 1 3\n 11.40387\t 4.795911\t 6.555614\n n=5 2 2\n 5.237915\t 3.924752" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Sn: basis: pao-block: "Sn 5\n n=4 2 1\n 6.809781\n n=4 3 1\n 4.360331\n n=5 0 3\n 9.410031\t 3.417552\t 4.355985\n n=5 1 3\n 11.846064\t 4.776636\t 6.260441\n n=5 2 2\n 5.306701\t 4.168147" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Sb: basis: pao-block: "Sb 5\n n=4 2 1\n 6.032541\n n=4 3 1\n 4.218413\n n=5 0 3\n 11.657848\t 3.427945\t 4.256775\n n=5 1 3\n 12.705696\t 4.672512\t 5.960543\n n=5 2 2\n 5.170263\t 4.184776" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Te: basis: pao-block: "Te 5\n n=4 2 1\n 6.892173\n n=4 3 1\n 4.273782\n n=5 0 3\n 9.195737\t 3.582524\t 4.321214\n n=5 1 3\n 11.324313\t 4.829737\t 5.948638\n n=5 2 2\n 5.180657\t 4.391133" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry I: basis: pao-block: "I 4\n n=4 3 1\n 4.667788\n n=5 0 3\n 10.825617\t 2.038059\t 2.864432\n n=5 1 3\n 10.204845\t 2.531842\t 3.717828\n n=5 2 2\n 10.092974\t 5.52364" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Xe: basis: pao-block: "Xe 4\n n=4 3 1\n 5.853963\n n=5 0 3\n 9.561964\t 3.448543\t 4.077063\n n=5 1 3\n 12.416569\t 4.552326\t 5.49057\n n=5 2 2\n 8.154881\t 6.91296" @@ -246,120 +246,120 @@ verification-PBE-v1: basis: pao-block: "Hg 6\n n=5 0 1\n 6.056918\n n=5 1 1\n 5.441249\n n=5 2 3\n 10.526286\t 1.981556\t 2.77108\n n=5 3 1\n 3.680789\n n=6 0 3\n 9.095015\t 2.640878\t 3.50429\n n=6 1 2\n 11.576401\t 6.038588" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Tl: basis: pao-block: "Tl 5\n n=5 2 1\n 10.431989\n n=5 3 1\n 4.430817\n n=6 0 3\n 11.834159\t 3.20836\t 4.226917\n n=6 1 3\n 13.437961\t 5.098265\t 6.996485\n n=6 2 2\n 5.02211\t 3.86617" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Pb: basis: pao-block: "Pb 5\n n=5 2 1\n 7.866133\n n=5 3 1\n 4.448581\n n=6 0 3\n 9.447825\t 3.363128\t 4.235421\n n=6 1 3\n 12.92358\t 5.118674\t 6.654824\n n=6 2 2\n 5.463169\t 4.386598" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Bi: basis: pao-block: "Bi 5\n n=5 2 1\n 11.290298\n n=5 3 1\n 4.616766\n n=6 0 3\n 10.836388\t 2.572849\t 3.434748\n n=6 1 3\n 13.119166\t 3.633168\t 5.067652\n n=6 2 2\n 7.504441\t 5.113572" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Po: basis: pao-block: "Po 5\n n=5 2 1\n 7.656374\n n=5 3 1\n 9.53324\n n=6 0 3\n 9.076874\t 3.615027\t 4.312521\n n=6 1 3\n 11.763294\t 5.25908\t 6.399902\n n=6 2 2\n 5.726407\t 4.922522" parameters: - mesh-cutoff: "1500 Ry" + mesh-cutoff: 1500 Ry Rn: basis: pao-block: "Rn 5\n n=5 2 1\n 9.288333\n n=5 3 1\n 5.06255\n n=6 0 3\n 9.457274\t 3.816093\t 4.408708\n n=6 1 3\n 11.989115\t 5.47413\t 6.419177\n n=6 2 2\n 7.123663\t 6.399902" moderate: - description: 'A standard list of inputs for Siesta. Tested with DeltaTest. No Spin-Orbit support.' + description: A standard list of inputs for Siesta. Tested with DeltaTest. No Spin-Orbit support. parameters: - xc-functional: "GGA" - xc-authors: "PBE" + xc-functional: GGA + xc-authors: PBE max-scf-iterations: 50 scf-mixer-history: 5 scf-mixer-weight: 0.1 scf-dm-tolerance: 1.e-4 #1.e-5 - solution-method: 'diagon' - electronic-temperature: '25 meV' - write-forces: True - mesh-cutoff: '200 Ry' + solution-method: diagon + electronic-temperature: 25 meV + write-forces: true + mesh-cutoff: 200 Ry write-mulliken-pop: 1 basis: - pao-energy-shift: '50 meV' - pao-basis-size: 'DZP' - pseudo_family: 'PseudoDojo/0.4/PBE/FR/standard/psml' + pao-energy-shift: 50 meV + pao-basis-size: DZP + pseudo_family: PseudoDojo/0.4/PBE/FR/standard/psml kpoints: distance: 0.1 offset: [0., 0., 0.] atomic_heuristics: Li: parameters: - mesh-cutoff: '250 Ry' + mesh-cutoff: 250 Ry basis: - polarization: 'non-perturbative' + polarization: non-perturbative Be: parameters: - mesh-cutoff: '250 Ry' + mesh-cutoff: 250 Ry basis: - polarization: 'non-perturbative' + polarization: non-perturbative Na: parameters: - mesh-cutoff: '250 Ry' + mesh-cutoff: 250 Ry basis: - polarization: 'non-perturbative' + polarization: non-perturbative Mg: parameters: - mesh-cutoff: '250 Ry' + mesh-cutoff: 250 Ry basis: - polarization: 'non-perturbative' + polarization: non-perturbative Mn: parameters: - mesh-cutoff: '400 Ry' + mesh-cutoff: 400 Ry Fe: parameters: - mesh-cutoff: '400 Ry' + mesh-cutoff: 400 Ry Ag: parameters: - mesh-cutoff: '300 Ry' + mesh-cutoff: 300 Ry Ca: basis: pao-block: "Ca 3 \n n=3 0 1 \n 3.505 \n n=4 0 2 \n 7.028 0.000 \n n=3 1 1 \n 4.072" - split-tail-norm: True + split-tail-norm: true Sr: basis: pao-block: "Sr 3 \n n=4 0 1 \n 3.809 \n n=5 0 2 \n 7.599 0.000 \n n=4 1 1 \n 4.538" - split-tail-norm: True + split-tail-norm: true Ba: basis: pao-block: "Ba 3 \n n=5 0 1 \n 4.369 \n n=6 0 2 \n 7.602 0.000 \n n=5 1 1 \n 5.205" - split-tail-norm: True + split-tail-norm: true Sb: parameters: - mesh-cutoff: '400 Ry' + mesh-cutoff: 400 Ry Hg: basis: pao-block: "Hg 4 \n n=5 0 1 \n 3.568 \n n=6 0 2 \n 6.573 0.0 \n n=5 1 2 \n 4.059 0.0 \n n=5 2 1 \n 5.918" precise: - description: 'A more stringent set of siesta parameters. Never tested.' + description: A more stringent set of siesta parameters. Never tested. parameters: - xc-functional: "GGA" - xc-authors: "PBE" + xc-functional: GGA + xc-authors: PBE max-scf-iterations: 100 scf-mixer-history: 5 scf-mixer-weight: 0.1 scf-dm-tolerance: 1.e-5 - md-max-force-tol: '0.005 eV/Ang' - md-max-stress-tol: '0.7 GPa' - solution-method: 'diagon' - electronic-temperature: '25 meV' - write-forces: True - mesh-cutoff: '500 Ry' + md-max-force-tol: 0.005 eV/Ang + md-max-stress-tol: 0.7 GPa + solution-method: diagon + electronic-temperature: 25 meV + write-forces: true + mesh-cutoff: 500 Ry basis: - pao-energy-shift: '50 meV' - pao-basis-size: 'DZP' - pseudo_family: 'PseudoDojo/0.4/PBE/FR/standard/psml' + pao-energy-shift: 50 meV + pao-basis-size: DZP + pseudo_family: PseudoDojo/0.4/PBE/FR/standard/psml kpoints: distance: 0.1 #0.062 offset: [0., 0., 0.] @@ -369,11 +369,11 @@ precise: pao-block: "H 1\n n=1 0 2 P 1 \n 6.0473 \t 2.5529" Li: basis: - size: 'DZDP' - polarization: 'non-perturbative' + size: DZDP + polarization: non-perturbative Be: basis: - polarization: 'non-perturbative' + polarization: non-perturbative B: basis: pao-block: "B 2\n n=2 0 2 \n 5.9924789\t 2.0\n n=2 1 2 P 2 \n 7.50444\t 2.9" @@ -385,7 +385,7 @@ precise: pao-block: "N 2\n n=2 0 3 \n 4.389\t 2.1270\t 3.2669\n n=2 1 3 P 1 \n 5.496\t 2.0914\t 3.522" Na: basis: - polarization: 'non-perturbative' + polarization: non-perturbative Mg: basis: pao-block: "Mg 4\n n=2 0 1 \n 2.56\n n=2 1 1 \n 2.9\n n=3 0 2 \n 8.0855\t 6.8564\n n=3 1 2 \n 8.0855\t 7.50" @@ -403,14 +403,14 @@ precise: pao-block: "S 3\n n=3 0 2 \n 4.96485\t 2.51\n n=3 1 2 \n 6.2177\t 2.51\n n=3 2 2 \n 6.2177\t 3.6149" Cl: basis: - size: 'DZDP' + size: DZDP K: basis: - size: 'TZP' + size: TZP Ca: basis: pao-block: "Ca 3 \n n=3 0 1 \n 3.505 \n n=4 0 2 \n 7.028 0.000 \n n=3 1 1 \n 4.072" - split-tail-norm: True + split-tail-norm: true Sc: basis: pao-block: "Sc 4\n n=3 0 1 \n 4.24658\n n=3 1 1 \n 4.466\n n=3 2 2 \n 6.8927\t 4.0\n n=4 0 2 P 1 \n 9.0744\t 4.14" @@ -421,135 +421,135 @@ precise: basis: pao-block: "V 4\n n=3 0 1 \n 3.75\n n=3 1 1 \n 3.9946\n n=3 2 2 \n 5.6945\t 3.88\n n=4 0 2 P 1 \n 8.28546\t 3.17" parameters: - mesh-cutoff: '850 Ry' + mesh-cutoff: 850 Ry Cr: basis: - size: 'TZP' + size: TZP Mn: parameters: - mesh-cutoff: '850 Ry' + mesh-cutoff: 850 Ry basis: - size: 'TZP' + size: TZP Fe: basis: - size: 'TZP' + size: TZP Ni: parameters: - mesh-cutoff: '850 Ry' + mesh-cutoff: 850 Ry basis: - size: 'TZP' + size: TZP Cu: basis: - size: 'TZP' + size: TZP Zn: basis: - size: 'TZP' + size: TZP Ga: basis: - size: 'DZDP' + size: DZDP Ge: basis: pao-block: "Ge 3\n n=4 0 2 \n 5.323265\t 0.0\n n=4 1 2 P 2 \n 6.06078\t 0.0\n n=3 2 1 \n 4.224" As: basis: - size: 'TZP' + size: TZP Se: basis: - size: 'DZDP' + size: DZDP Br: basis: - size: 'TZP' + size: TZP Rb: basis: - size: 'TZP' + size: TZP Sr: basis: pao-block: "Sr 3 \n n=4 0 1 \n 3.809 \n n=5 0 2 \n 7.599 0.000 \n n=4 1 1 \n 4.538" - split-tail-norm: True + split-tail-norm: true Zr: basis: - size: 'TZP' + size: TZP Nb: basis: - size: 'TZP' + size: TZP Mo: basis: - size: 'TZP' + size: TZP Tc: basis: - size: 'TZP' + size: TZP Ru: basis: - size: 'TZP' + size: TZP Rh: basis: - size: 'TZP' + size: TZP Pd: basis: - size: 'TZP' + size: TZP Ag: parameters: - mesh-cutoff: '850 Ry' + mesh-cutoff: 850 Ry basis: - size: 'DZDP' + size: DZDP Cd: basis: - size: 'TZP' + size: TZP Sb: basis: - size: 'DZDP' + size: DZDP Te: basis: pao-block: "Te 3\n n=5 0 3 \n 5.3203\t 3.300\t 3.500\n n=5 1 3 P 1 \n 6.0497\t 3.3865\t 4.3158\n n=4 2 1 \n 4.5104" I: basis: - size: 'TZP' + size: TZP Cs: basis: - size: 'TZP' + size: TZP Ba: basis: pao-block: "Ba 3 \n n=5 0 1 \n 4.369 \n n=6 0 2 \n 7.602 0.000 \n n=5 1 1 \n 5.205" - split-tail-norm: True + split-tail-norm: true Ta: basis: - size: 'TZP' + size: TZP Ir: basis: - size: 'TZP' + size: TZP Pt: basis: - size: 'TZP' + size: TZP Au: basis: - size: 'DZDP' + size: DZDP Hg: basis: pao-block: "Hg 4 \n n=5 0 1 \n 3.568 \n n=6 0 2 \n 6.573 0.0 \n n=5 1 1 \n 4.059 0.0 \n n=5 2 2 \n 5.918" Pb: basis: - size: 'TZP' + size: TZP Po: basis: - size: 'TZP' + size: TZP fast: - description: 'A list of inputs for Siesta for quick exploratory calculations. Never tested! No Spin-Orbit.' + description: A list of inputs for Siesta for quick exploratory calculations. Never tested! No Spin-Orbit. parameters: - xc-functional: "GGA" - xc-authors: "PBE" + xc-functional: GGA + xc-authors: PBE max-scf-iterations: 50 scf-mixer-history: 5 scf-mixer-weight: 0.1 scf-dm-tolerance: 1.e-3 - solution-method: 'diagon' - electronic-temperature: '25 meV' - write-forces: True - mesh-cutoff: '50 Ry' + solution-method: diagon + electronic-temperature: 25 meV + write-forces: true + mesh-cutoff: 50 Ry basis: - pao-energy-shift: '200 meV' - pao-basis-size: 'DZ' - pseudo_family: 'PseudoDojo/0.4/PBE/FR/standard/psml' + pao-energy-shift: 200 meV + pao-basis-size: DZ + pseudo_family: PseudoDojo/0.4/PBE/FR/standard/psml kpoints: distance: 0.2 offset: [0., 0., 0.] diff --git a/src/aiida_common_workflows/workflows/relax/vasp/potential_mapping.yml b/src/aiida_common_workflows/workflows/relax/vasp/potential_mapping.yml index c70ceee8..62166433 100644 --- a/src/aiida_common_workflows/workflows/relax/vasp/potential_mapping.yml +++ b/src/aiida_common_workflows/workflows/relax/vasp/potential_mapping.yml @@ -1,196 +1,2 @@ -RECOMMENDED_ACWF_LANTH: { - 'H': 'H_GW', - 'He': 'He_GW', - 'Li': 'Li_sv_GW', - 'Be': 'Be_sv_GW', - 'B': 'B_GW', - 'C': 'C_GW', - 'N': 'N_GW', - 'O': 'O_h_GW', - 'F': 'F_GW', - 'Ne': 'Ne_GW', - 'Na': 'Na_sv_GW', - 'Mg': 'Mg_sv_GW', - 'Al': 'Al_GW', - 'Si': 'Si_GW', - 'P': 'P_GW', - 'S': 'S_GW', - 'Cl': 'Cl_GW', - 'Ar': 'Ar_GW', - 'K': 'K_sv_GW', - 'Ca': 'Ca_sv_GW', - 'Sc': 'Sc_sv_GW', - 'Ti': 'Ti_sv_GW', - 'V': 'V_sv_GW', - 'Cr': 'Cr_sv_GW', - 'Mn': 'Mn_sv_GW', - 'Fe': 'Fe_sv_GW', - 'Co': 'Co_sv_GW', - 'Ni': 'Ni_sv_GW', - 'Cu': 'Cu_sv_GW', - 'Zn': 'Zn_sv_GW', - 'Ga': 'Ga_d_GW', - 'Ge': 'Ge_d_GW', - 'As': 'As_GW', - 'Se': 'Se_GW', - 'Br': 'Br_GW', - 'Kr': 'Kr_GW', - 'Rb': 'Rb_sv_GW', - 'Sr': 'Sr_sv_GW', - 'Y': 'Y_sv_GW', - 'Zr': 'Zr_sv_GW', - 'Nb': 'Nb_sv_GW', - 'Mo': 'Mo_sv_GW', - 'Tc': 'Tc_sv_GW', - 'Ru': 'Ru_sv_GW', - 'Rh': 'Rh_sv_GW', - 'Pd': 'Pd_sv_GW', - 'Ag': 'Ag_sv_GW', - 'Cd': 'Cd_sv_GW', - 'In': 'In_d_GW', - 'Sn': 'Sn_d_GW', - 'Sb': 'Sb_d_GW', - 'Te': 'Te_GW', - 'I': 'I_GW', - 'Xe': 'Xe_GW', - 'Cs': 'Cs_sv_GW', - 'Ba': 'Ba_sv_GW', - 'La': 'La_GW', - 'Ce': 'Ce_GW', - 'Pr': 'Pr_h', - 'Nd': 'Nd_h', - 'Pm': 'Pm_h', - 'Sm': 'Sm_h', - 'Eu': 'Eu_h', - 'Gd': 'Gd_h', - 'Tb': 'Tb_h', - 'Dy': 'Dy_h', - 'Ho': 'Ho_h', - 'Er': 'Er_h', - 'Tm': 'Tm_h', - 'Yb': 'Yb_h', - 'Lu': 'Lu', - 'Hf': 'Hf_sv_GW', - 'Ta': 'Ta_sv_GW', - 'W': 'W_sv_GW', - 'Re': 'Re_sv_GW', - 'Os': 'Os_sv_GW', - 'Ir': 'Ir_sv_GW', - 'Pt': 'Pt_sv_GW', - 'Au': 'Au_sv_GW', - 'Hg': 'Hg_sv_GW', - 'Tl': 'Tl_d_GW', - 'Pb': 'Pb_d_GW', - 'Bi': 'Bi_d_GW', - 'Po': 'Po_d_GW', - 'At': 'At_d_GW', - 'Rn': 'Rn_d_GW', - 'Fr': 'Fr_sv', - 'Ra': 'Ra_sv', - 'Ac': 'Ac', - 'Th': 'Th', - 'Pa': 'Pa', - 'U': 'U', - 'Np': 'Np', - 'Pu': 'Pu', - 'Am': 'Am', - 'Cm': 'Cm' -} -RECOMMENDED_PBE: { - 'H': 'H', - 'He': 'He', - 'Li': 'Li_sv', - 'Be': 'Be', - 'B': 'B', - 'C': 'C', - 'N': 'N', - 'O': 'O', - 'F': 'F', - 'Ne': 'Ne', - 'Na': 'Na_pv', - 'Mg': 'Mg', - 'Al': 'Al', - 'Si': 'Si', - 'P': 'P', - 'S': 'S', - 'Cl': 'Cl', - 'Ar': 'Ar', - 'K': 'K_sv', - 'Ca': 'Ca_sv', - 'Sc': 'Sc_sv', - 'Ti': 'Ti_sv', - 'V': 'V_sv', - 'Cr': 'Cr_pv', - 'Mn': 'Mn_pv', - 'Fe': 'Fe', - 'Co': 'Co', - 'Ni': 'Ni', - 'Cu': 'Cu', - 'Zn': 'Zn', - 'Ga': 'Ga_d', - 'Ge': 'Ge_d', - 'As': 'As', - 'Se': 'Se', - 'Br': 'Br', - 'Kr': 'Kr', - 'Rb': 'Rb_sv', - 'Sr': 'Sr_sv', - 'Y': 'Y_sv', - 'Zr': 'Zr_sv', - 'Nb': 'Nb_sv', - 'Mo': 'Mo_sv', - 'Tc': 'Tc_pv', - 'Ru': 'Ru_pv', - 'Rh': 'Rh_pv', - 'Pd': 'Pd', - 'Ag': 'Ag', - 'Cd': 'Cd', - 'In': 'In_d', - 'Sn': 'Sn_d', - 'Sb': 'Sb', - 'Te': 'Te', - 'I': 'I', - 'Xe': 'Xe', - 'Cs': 'Cs_sv', - 'Ba': 'Ba_sv', - 'La': 'La', - 'Ce': 'Ce', - 'Pr': 'Pr_3', - 'Nd': 'Nd_3', - 'Pm': 'Pm_3', - 'Sm': 'Sm_3', - 'Eu': 'Eu_2', - 'Gd': 'Gd_3', - 'Tb': 'Tb_3', - 'Dy': 'Dy_3', - 'Ho': 'Ho_3', - 'Er': 'Er_3', - 'Tm': 'Tm_3', - 'Yb': 'Yb_2', - 'Lu': 'Lu_3', - 'Hf': 'Hf_pv', - 'Ta': 'Ta_pv', - 'W': 'W_sv', - 'Re': 'Re', - 'Os': 'Os', - 'Ir': 'Ir', - 'Pt': 'Pt', - 'Au': 'Au', - 'Hg': 'Hg', - 'Tl': 'Tl_d', - 'Pb': 'Pb_d', - 'Bi': 'Bi_d', - 'Po': 'Po_d', - 'At': 'At', - 'Rn': 'Rn', - 'Fr': 'Fr_sv', - 'Ra': 'Ra_sv', - 'Ac': 'Ac', - 'Th': 'Th', - 'Pa': 'Pa', - 'U': 'U', - 'Np': 'Np', - 'Pu': 'Pu', - 'Am': 'Am', - 'Cm': 'Cm' -} +RECOMMENDED_ACWF_LANTH: {H: H_GW, He: He_GW, Li: Li_sv_GW, Be: Be_sv_GW, B: B_GW, C: C_GW, N: N_GW, O: O_h_GW, F: F_GW, Ne: Ne_GW, Na: Na_sv_GW, Mg: Mg_sv_GW, Al: Al_GW, Si: Si_GW, P: P_GW, S: S_GW, Cl: Cl_GW, Ar: Ar_GW, K: K_sv_GW, Ca: Ca_sv_GW, Sc: Sc_sv_GW, Ti: Ti_sv_GW, V: V_sv_GW, Cr: Cr_sv_GW, Mn: Mn_sv_GW, Fe: Fe_sv_GW, Co: Co_sv_GW, Ni: Ni_sv_GW, Cu: Cu_sv_GW, Zn: Zn_sv_GW, Ga: Ga_d_GW, Ge: Ge_d_GW, As: As_GW, Se: Se_GW, Br: Br_GW, Kr: Kr_GW, Rb: Rb_sv_GW, Sr: Sr_sv_GW, Y: Y_sv_GW, Zr: Zr_sv_GW, Nb: Nb_sv_GW, Mo: Mo_sv_GW, Tc: Tc_sv_GW, Ru: Ru_sv_GW, Rh: Rh_sv_GW, Pd: Pd_sv_GW, Ag: Ag_sv_GW, Cd: Cd_sv_GW, In: In_d_GW, Sn: Sn_d_GW, Sb: Sb_d_GW, Te: Te_GW, I: I_GW, Xe: Xe_GW, Cs: Cs_sv_GW, Ba: Ba_sv_GW, La: La_GW, Ce: Ce_GW, Pr: Pr_h, Nd: Nd_h, Pm: Pm_h, Sm: Sm_h, Eu: Eu_h, Gd: Gd_h, Tb: Tb_h, Dy: Dy_h, Ho: Ho_h, Er: Er_h, Tm: Tm_h, Yb: Yb_h, Lu: Lu, Hf: Hf_sv_GW, Ta: Ta_sv_GW, W: W_sv_GW, Re: Re_sv_GW, Os: Os_sv_GW, Ir: Ir_sv_GW, Pt: Pt_sv_GW, Au: Au_sv_GW, Hg: Hg_sv_GW, Tl: Tl_d_GW, Pb: Pb_d_GW, Bi: Bi_d_GW, Po: Po_d_GW, At: At_d_GW, Rn: Rn_d_GW, Fr: Fr_sv, Ra: Ra_sv, Ac: Ac, Th: Th, Pa: Pa, U: U, Np: Np, Pu: Pu, Am: Am, Cm: Cm} +RECOMMENDED_PBE: {H: H, He: He, Li: Li_sv, Be: Be, B: B, C: C, N: N, O: O, F: F, Ne: Ne, Na: Na_pv, Mg: Mg, Al: Al, Si: Si, P: P, S: S, Cl: Cl, Ar: Ar, K: K_sv, Ca: Ca_sv, Sc: Sc_sv, Ti: Ti_sv, V: V_sv, Cr: Cr_pv, Mn: Mn_pv, Fe: Fe, Co: Co, Ni: Ni, Cu: Cu, Zn: Zn, Ga: Ga_d, Ge: Ge_d, As: As, Se: Se, Br: Br, Kr: Kr, Rb: Rb_sv, Sr: Sr_sv, Y: Y_sv, Zr: Zr_sv, Nb: Nb_sv, Mo: Mo_sv, Tc: Tc_pv, Ru: Ru_pv, Rh: Rh_pv, Pd: Pd, Ag: Ag, Cd: Cd, In: In_d, Sn: Sn_d, Sb: Sb, Te: Te, I: I, Xe: Xe, Cs: Cs_sv, Ba: Ba_sv, La: La, Ce: Ce, Pr: Pr_3, Nd: Nd_3, Pm: Pm_3, Sm: Sm_3, Eu: Eu_2, Gd: Gd_3, Tb: Tb_3, Dy: Dy_3, Ho: Ho_3, Er: Er_3, Tm: Tm_3, Yb: Yb_2, Lu: Lu_3, Hf: Hf_pv, Ta: Ta_pv, W: W_sv, Re: Re, Os: Os, Ir: Ir, Pt: Pt, Au: Au, Hg: Hg, Tl: Tl_d, Pb: Pb_d, Bi: Bi_d, Po: Po_d, At: At, Rn: Rn, Fr: Fr_sv, Ra: Ra_sv, Ac: Ac, Th: Th, Pa: Pa, U: U, Np: Np, Pu: Pu, Am: Am, Cm: Cm} diff --git a/src/aiida_common_workflows/workflows/relax/vasp/protocol.yml b/src/aiida_common_workflows/workflows/relax/vasp/protocol.yml index ea78dbe6..211b314e 100644 --- a/src/aiida_common_workflows/workflows/relax/vasp/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/vasp/protocol.yml @@ -1,81 +1,81 @@ verification-PBE-v1: - name: 'verification-PBE-v1' - description: 'Protocol for the ACWF study on unaries and oxides' - potential_family: 'PBE_lanth_3006' - potential_mapping: 'RECOMMENDED_ACWF_LANTH' + name: verification-PBE-v1 + description: Protocol for the ACWF study on unaries and oxides + potential_family: PBE_lanth_3006 + potential_mapping: RECOMMENDED_ACWF_LANTH kpoint_distance: 0.06 relax: - algo: 'rd' + algo: rd threshold_forces: 0.001 steps: 200 parameters: - prec: 'Accurate' + prec: Accurate encut: 1000 ediff: 0.0000001 ismear: -1 sigma: 0.0612256413 - algo: 'Normal' + algo: Normal nelmin: 6 nelm: 300 lmaxmix: 6 - lasph: True - gga_compat: False + lasph: true + gga_compat: false ncore: 2 kpar: 4 precise: - name: 'precise' - description: 'Protocol to relax a structure with high precision at higher computational cost.' - potential_family: 'PBE5.4' - potential_mapping: 'RECOMMENDED_PBE' + name: precise + description: Protocol to relax a structure with high precision at higher computational cost. + potential_family: PBE5.4 + potential_mapping: RECOMMENDED_PBE kpoint_distance: 0.1 relax: - algo: 'rd' + algo: rd threshold_forces: 0.001 steps: 200 parameters: - prec: 'Accurate' + prec: Accurate encut: 550 ediff: 0.000001 ismear: 0 sigma: 0.2 - algo: 'Fast' + algo: Fast nelmin: 6 nelm: 2000 moderate: - name: 'moderate' - description: 'Protocol to relax a structure with normal precision at moderate computational cost.' - potential_family: 'PBE5.4' - potential_mapping: 'RECOMMENDED_PBE' + name: moderate + description: Protocol to relax a structure with normal precision at moderate computational cost. + potential_family: PBE5.4 + potential_mapping: RECOMMENDED_PBE kpoint_distance: 0.15 relax: - algo: 'rd' + algo: rd threshold_forces: 0.01 steps: 200 parameters: - prec: 'Normal' + prec: Normal ediff: 0.00001 ismear: 0 sigma: 0.2 - algo: 'Fast' + algo: Fast nelmin: 4 nelm: 2000 fast: - name: 'fast' - description: 'Protocol to relax a structure with low precision at minimal computational cost for testing purposes.' - potential_family: 'PBE5.4' - potential_mapping: 'RECOMMENDED_PBE' + name: fast + description: Protocol to relax a structure with low precision at minimal computational cost for testing purposes. + potential_family: PBE5.4 + potential_mapping: RECOMMENDED_PBE kpoint_distance: 0.25 relax: - algo: 'cg' + algo: cg threshold_forces: 0.1 steps: 200 parameters: - prec: 'Single' + prec: Single ediff: 0.0001 ismear: 0 sigma: 0.2 - algo: 'Veryfast' + algo: Veryfast nelm: 2000 diff --git a/src/aiida_common_workflows/workflows/relax/wien2k/protocol.yml b/src/aiida_common_workflows/workflows/relax/wien2k/protocol.yml index ac6a5c5c..9f192298 100644 --- a/src/aiida_common_workflows/workflows/relax/wien2k/protocol.yml +++ b/src/aiida_common_workflows/workflows/relax/wien2k/protocol.yml @@ -1,13 +1,13 @@ moderate: - description: 'A standard list of inputs for Wienk.' + description: A standard list of inputs for Wienk. parameters: red: '3' max-scf-iterations: '100' scf-ene-tol-Ry: '0.000001' scf-charge-tol: '0.000001' fermi-temp-Ry: '0.0045' - nokshift: True + nokshift: true noprec: '2' - numk: '-1 0.0317506' - numk2: '-1 0.023812976204734406' - parallel: False + numk: -1 0.0317506 + numk2: -1 0.023812976204734406 + parallel: false