diff --git a/jobflow_to_pyiron_base_qe.ipynb b/jobflow_to_pyiron_base_qe.ipynb index 8b301a0..004a897 100644 --- a/jobflow_to_pyiron_base_qe.ipynb +++ b/jobflow_to_pyiron_base_qe.ipynb @@ -84,7 +84,12 @@ { "id": "07598344-0f75-433b-8902-bea21a42088c", "cell_type": "code", - "source": "calculate_qe = job(_calculate_qe, data=[\"energy\", \"volume\", \"structure\"])\ngenerate_structures = job(_generate_structures, data=[\"i\" for i in range(100)])\nplot_energy_volume_curve = job(_plot_energy_volume_curve)\nget_bulk_structure = job(_get_bulk_structure)", + "source": [ + "calculate_qe = job(_calculate_qe, data=[\"energy\", \"volume\", \"structure\"])\n", + "generate_structures = job(_generate_structures, data=[f\"s_{i}\" for i in range(100)])\n", + "plot_energy_volume_curve = job(_plot_energy_volume_curve)\n", + "get_bulk_structure = job(_get_bulk_structure)" + ], "metadata": { "trusted": true }, @@ -140,7 +145,21 @@ { "id": "53e979ac-21db-4aa5-ae58-7cfc08dfa87b", "cell_type": "code", - "source": "job_strain_lst = []\nfor i in range(number_of_strains):\n calc_strain = calculate_qe(\n working_directory=\"strain_\" + str(i),\n input_dict={\n \"structure\": getattr(structure_lst.output, str(i)),\n \"pseudopotentials\": pseudopotentials,\n \"kpts\": (3, 3, 3),\n \"calculation\": \"scf\",\n \"smearing\": 0.02,\n },\n )\n job_strain_lst.append(calc_strain)", + "source": [ + "job_strain_lst = []\n", + "for i in range(number_of_strains):\n", + " calc_strain = calculate_qe(\n", + " working_directory=\"strain_\" + str(i),\n", + " input_dict={\n", + " \"structure\": getattr(structure_lst.output, f\"s_{i}\"),\n", + " \"pseudopotentials\": pseudopotentials,\n", + " \"kpts\": (3, 3, 3),\n", + " \"calculation\": \"scf\",\n", + " \"smearing\": 0.02,\n", + " },\n", + " )\n", + " job_strain_lst.append(calc_strain)" + ], "metadata": { "trusted": true }, diff --git a/quantum_espresso_workflow.py b/quantum_espresso_workflow.py index e6a1396..3eca694 100644 --- a/quantum_espresso_workflow.py +++ b/quantum_espresso_workflow.py @@ -58,7 +58,7 @@ def generate_structures(structure, strain_lst): structure_strain.cell * strain ** (1 / 3), scale_atoms=True ) structure_lst.append(structure_strain) - return {str(i): atoms_to_json_dict(atoms=s) for i, s in enumerate(structure_lst)} + return {f"s_{i}": atoms_to_json_dict(atoms=s) for i, s in enumerate(structure_lst)} def plot_energy_volume_curve(volume_lst, energy_lst): @@ -110,4 +110,4 @@ def atoms_to_json_dict(atoms): else: json_dict[key] = value - return json_dict \ No newline at end of file + return json_dict diff --git a/workflow_qe.json b/workflow_qe.json index 47d4d55..efc1eba 100644 --- a/workflow_qe.json +++ b/workflow_qe.json @@ -47,35 +47,35 @@ {"target": 2, "targetHandle": "structure", "source": 1, "sourceHandle": "structure"}, {"target": 2, "targetHandle": "strain_lst", "source": 18, "sourceHandle": null}, {"target": 3, "targetHandle": "working_directory", "source": 19, "sourceHandle": null}, - {"target": 20, "targetHandle": "structure", "source": 2, "sourceHandle": "0"}, + {"target": 20, "targetHandle": "structure", "source": 2, "sourceHandle": "s_0"}, {"target": 20, "targetHandle": "pseudopotentials", "source": 14, "sourceHandle": null}, {"target": 20, "targetHandle": "kpts", "source": 15, "sourceHandle": null}, {"target": 20, "targetHandle": "calculation", "source": 21, "sourceHandle": null}, {"target": 20, "targetHandle": "smearing", "source": 17, "sourceHandle": null}, {"target": 3, "targetHandle": "input_dict", "source": 20, "sourceHandle": null}, {"target": 4, "targetHandle": "working_directory", "source": 22, "sourceHandle": null}, - {"target": 23, "targetHandle": "structure", "source": 2, "sourceHandle": "1"}, + {"target": 23, "targetHandle": "structure", "source": 2, "sourceHandle": "s_1"}, {"target": 23, "targetHandle": "pseudopotentials", "source": 14, "sourceHandle": null}, {"target": 23, "targetHandle": "kpts", "source": 15, "sourceHandle": null}, {"target": 23, "targetHandle": "calculation", "source": 21, "sourceHandle": null}, {"target": 23, "targetHandle": "smearing", "source": 17, "sourceHandle": null}, {"target": 4, "targetHandle": "input_dict", "source": 23, "sourceHandle": null}, {"target": 5, "targetHandle": "working_directory", "source": 24, "sourceHandle": null}, - {"target": 25, "targetHandle": "structure", "source": 2, "sourceHandle": "2"}, + {"target": 25, "targetHandle": "structure", "source": 2, "sourceHandle": "s_2"}, {"target": 25, "targetHandle": "pseudopotentials", "source": 14, "sourceHandle": null}, {"target": 25, "targetHandle": "kpts", "source": 15, "sourceHandle": null}, {"target": 25, "targetHandle": "calculation", "source": 21, "sourceHandle": null}, {"target": 25, "targetHandle": "smearing", "source": 17, "sourceHandle": null}, {"target": 5, "targetHandle": "input_dict", "source": 25, "sourceHandle": null}, {"target": 6, "targetHandle": "working_directory", "source": 26, "sourceHandle": null}, - {"target": 27, "targetHandle": "structure", "source": 2, "sourceHandle": "3"}, + {"target": 27, "targetHandle": "structure", "source": 2, "sourceHandle": "s_3"}, {"target": 27, "targetHandle": "pseudopotentials", "source": 14, "sourceHandle": null}, {"target": 27, "targetHandle": "kpts", "source": 15, "sourceHandle": null}, {"target": 27, "targetHandle": "calculation", "source": 21, "sourceHandle": null}, {"target": 27, "targetHandle": "smearing", "source": 17, "sourceHandle": null}, {"target": 6, "targetHandle": "input_dict", "source": 27, "sourceHandle": null}, {"target": 7, "targetHandle": "working_directory", "source": 28, "sourceHandle": null}, - {"target": 29, "targetHandle": "structure", "source": 2, "sourceHandle": "4"}, + {"target": 29, "targetHandle": "structure", "source": 2, "sourceHandle": "s_4"}, {"target": 29, "targetHandle": "pseudopotentials", "source": 14, "sourceHandle": null}, {"target": 29, "targetHandle": "kpts", "source": 15, "sourceHandle": null}, {"target": 29, "targetHandle": "calculation", "source": 21, "sourceHandle": null},