Relaxation

[1]:
from workgraph_collections.ase.espresso.relax import RelaxWorkgraph
from ase.build import bulk
from ase import Atoms
from aiida import load_profile
from aiida_pythonjob.config import config

load_profile()

config["allow_pickle"] = True

# create input structure
atoms = bulk("Si")
atoms.set_cell(atoms.cell * 1.05, scale_atoms=True)

metadata = {
    "options": {
        'prepend_text' : """eval "$(conda shell.posix hook)"
        conda activate aiida
        export OMP_NUM_THREADS=1
        """,
    }
}
pseudopotentials = {"Si": "Si.pbe-nl-rrkjus_psl.1.0.0.UPF"}
pseudo_dir = "/home/xing/data/ase/espresso_pseudo"
# pseudo_dir = "/home/wang_x3/datas/pseudos/psl"
input_data = {
    "control": {"calculation": "scf"},
    "system": {"ecutwfc": 30, "ecutrho": 240,
               "occupations": "smearing",
                "degauss": 0.01,
                "smearing": "cold",},
}
# ------------------------- Set the inputs -------------------------
wg = RelaxWorkgraph.build_graph(
    atoms=atoms,
    computer="localhost",
    command="mpirun -np 2 pw.x",
    pseudopotentials=pseudopotentials,
    pseudo_dir=pseudo_dir,
    input_data=input_data,
    kpts=[4, 4, 4],
    metadata=metadata,
)
wg.to_html()
[1]:

Run the workflow

[2]:
wg.run()
09/04/2025 07:30:18 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|continue_workgraph]: tasks ready to run: pw_calculator
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|continue_workgraph]: tasks ready to run: pw_calculator
09/04/2025 07:30:19 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180113
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180113
09/04/2025 07:30:41 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|update_task_state]: Task: pw_calculator, type: PYTHONJOB, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|update_task_state]: Task: pw_calculator, type: PYTHONJOB, finished.
09/04/2025 07:30:42 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|continue_workgraph]: tasks ready to run: inspect_relax
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|continue_workgraph]: tasks ready to run: inspect_relax
INFO:aiida_pythonjob.decorator:Executing process function, current stack status: 47 frames of 3000
09/04/2025 07:30:43 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|update_task_state]: Task: inspect_relax, type: PYFUNCTION, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|update_task_state]: Task: inspect_relax, type: PYFUNCTION, finished.
09/04/2025 07:30:43 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|continue_workgraph]: tasks ready to run: RelaxWorkgraph
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|continue_workgraph]: tasks ready to run: RelaxWorkgraph
09/04/2025 07:30:46 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180139
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180139
09/04/2025 07:30:50 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|continue_workgraph]: tasks ready to run: pw_calculator
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|continue_workgraph]: tasks ready to run: pw_calculator
09/04/2025 07:30:50 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180143
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180143
09/04/2025 07:31:02 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|update_task_state]: Task: pw_calculator, type: PYTHONJOB, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|update_task_state]: Task: pw_calculator, type: PYTHONJOB, finished.
09/04/2025 07:31:04 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|continue_workgraph]: tasks ready to run: inspect_relax
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|continue_workgraph]: tasks ready to run: inspect_relax
INFO:aiida_pythonjob.decorator:Executing process function, current stack status: 47 frames of 3000
09/04/2025 07:31:05 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|update_task_state]: Task: inspect_relax, type: PYFUNCTION, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|update_task_state]: Task: inspect_relax, type: PYFUNCTION, finished.
09/04/2025 07:31:05 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|continue_workgraph]: tasks ready to run: RelaxWorkgraph
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|continue_workgraph]: tasks ready to run: RelaxWorkgraph
09/04/2025 07:31:08 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180168
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180168
09/04/2025 07:31:10 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180168|WorkGraphEngine|continue_workgraph]: tasks ready to run: pw_calculator
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180168|WorkGraphEngine|continue_workgraph]: tasks ready to run: pw_calculator
09/04/2025 07:31:11 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180168|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180172
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180168|WorkGraphEngine|on_wait]: Process status: Waiting for child processes: 180172
09/04/2025 07:31:20 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180168|WorkGraphEngine|update_task_state]: Task: pw_calculator, type: PYTHONJOB, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180168|WorkGraphEngine|update_task_state]: Task: pw_calculator, type: PYTHONJOB, finished.
09/04/2025 07:31:21 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180168|WorkGraphEngine|continue_workgraph]: tasks ready to run:
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180168|WorkGraphEngine|continue_workgraph]: tasks ready to run:
09/04/2025 07:31:21 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180168|WorkGraphEngine|finalize]: Finalize workgraph.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180168|WorkGraphEngine|finalize]: Finalize workgraph.
09/04/2025 07:31:22 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|update_task_state]: Task: RelaxWorkgraph, type: GRAPH, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|update_task_state]: Task: RelaxWorkgraph, type: GRAPH, finished.
09/04/2025 07:31:24 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|continue_workgraph]: tasks ready to run:
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|continue_workgraph]: tasks ready to run:
09/04/2025 07:31:24 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180139|WorkGraphEngine|finalize]: Finalize workgraph.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180139|WorkGraphEngine|finalize]: Finalize workgraph.
09/04/2025 07:31:24 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|update_task_state]: Task: RelaxWorkgraph, type: GRAPH, finished.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|update_task_state]: Task: RelaxWorkgraph, type: GRAPH, finished.
09/04/2025 07:31:26 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|continue_workgraph]: tasks ready to run:
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|continue_workgraph]: tasks ready to run:
09/04/2025 07:31:26 AM <593221> aiida.orm.nodes.process.workflow.workchain.WorkChainNode: [REPORT] [180109|WorkGraphEngine|finalize]: Finalize workgraph.
REPORT:aiida.orm.nodes.process.workflow.workchain.WorkChainNode:[180109|WorkGraphEngine|finalize]: Finalize workgraph.