Here is my code for static calculation for an Au slab. I am using pymatgen to generate the input files and trying to use atomate to run the Vasp calculations.
from pymatgen.core import Lattice, Structure
import json
import os
import random
import numpy as np
from pymatgen.analysis.structure_matcher import StructureMatcher
from pymatgen.core.lattice import Lattice
from pymatgen.core.structure import Structure
from pymatgen.core.surface import (
ReconstructionGenerator,
Slab,
SlabGenerator,
generate_all_slabs,
get_d,
get_slab_regions,
get_symmetrically_distinct_miller_indices,
get_symmetrically_equivalent_miller_indices,
miller_index_from_sites,
ReconstructionGenerator,
)
from pymatgen.symmetry.analyzer import SpacegroupAnalyzer
from pymatgen.symmetry.groups import SpaceGroup
from pymatgen.io.vasp.sets import MPStaticSet
from atomate.vasp.fireworks import StaticFW
import fireworks
from fireworks.core.firework import Firework, Workflow
from fireworks.core.fworker import FWorker
from fireworks.core.launchpad import LaunchPad
from fireworks.core.rocket_launcher import launch_rocket, rapidfire
print("Vasp check: ")
print(os.system("which vasp_std"))
Au_fcc = Structure(
Lattice.cubic(4.0782),
["Au", "Au", "Au", "Au"],
[
[0.000000, 0.000000, 0.000000],
[0.000000, 0.500000, 0.500000],
[0.500000, 0.000000, 0.500000],
[0.500000, 0.500000, 0.000000],
],
)
Au_slab_fcc = SlabGenerator(
initial_structure=Au_fcc,
miller_index=(1, 1, 1),
min_vacuum_size=5,
min_slab_size=4,
center_slab=True
)
Au_111_fcc = Au_slab_fcc.get_slabs()[0]
slabs = Au_slab_fcc.get_slabs()
from pymatgen.io.vasp.sets import MPStaticSet
static_set = MPStaticSet(Au_111_fcc)
vasp_wf = StaticFW(
structure=Au_111_fcc,
name="static",
vasp_input_set=static_set,
vasp_input_set_params=None,
vasp_cmd = "vasp_std",
prev_calc_loc=False,
#prev_calc_dir=None,
db_file='~/atomate/config/db.json',
vasptodb_kwargs=None,
parents=None,
spec_structure_key=None)
from fireworks import LaunchPad
lp = LaunchPad.auto_load()
fws = []
lp.add_wf(vasp_wf)
fws.append(vasp_wf)
print("*"*100)
print("LOOPING COMPLETE")
print("*"*100)
print(lp)
print("*"*100)
print(FWorker())
print("*"*100)
rapidfire(lp, FWorker())
The error that I get is:
Vasp check:
/opt/software/easybuild/2020/avx2/MPI/intel2020/impi2019/vasp/6.1.2/bin/vasp_std
0
2022-04-13 16:47:32,885 INFO Added a workflow. id_map: {-1: 31}
****************************************************************************************************
LOOPING COMPLETE
****************************************************************************************************
{"host": "localhost", "port": 27017, "name": "fireworks", "username": null, "password": null, "logdir": null, "strm_lvl": "INFO", "user_indices": [], "wf_us
er_indices": [], "authsource": "fireworks", "uri_mode": false, "mongoclient_kwargs": {}}
****************************************************************************************************
{"name": "Automatically generated Worker", "category": "", "query": "{}", "env": {}}
****************************************************************************************************
2022-04-13 16:47:33,106 INFO Created new dir /project/6006984/prabh97/test_dir/test_scripts/vasp_test/launcher_2022-04-13-20-47-33-105648
2022-04-13 16:47:33,106 INFO Launching Rocket
2022-04-13 16:47:34,020 INFO RUNNING fw_id: 31 in directory: /project/6006984/prabh97/test_dir/test_scripts/vasp_test/launcher_2022-04-13-20-47-33-105648
2022-04-13 16:47:34,389 INFO Task started: {{atomate.vasp.firetasks.write_inputs.WriteVaspFromIOSet}}.
/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/pymatgen/io/vasp/sets.py:611: BadInputSetWarning: Relaxation of likely metal with ISMEAR < 1 detected. Please see VASP recommendations on ISMEAR for metals.
warnings.warn(
/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/pymatgen/io/vasp/inputs.py:1825: UnknownPotcarWarning: POTCAR with symbol Au ha
s metadata that does not match any VASP POTCAR known to pymatgen. The data in this POTCAR is known to match the following functionals: ['PBE']
warnings.warn(
2022-04-13 16:47:34,523 INFO Task completed: {{atomate.vasp.firetasks.write_inputs.WriteVaspFromIOSet}}
2022-04-13 16:47:34,630 INFO Task started: {{atomate.vasp.firetasks.run_calc.RunVaspCustodian}}.
Failed to load vasprun.xml
Traceback (most recent call last):
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/custodian/vasp/validators.py", line 38, in check
Vasprun("vasprun.xml")
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/pymatgen/io/vasp/outputs.py", line 348, in __init__
with zopen(filename, "rt") as f:
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/monty/io.py", line 45, in zopen
return open(filename, *args, **kwargs) # pylint: disable=R1732
FileNotFoundError: [Errno 2] No such file or directory: 'vasprun.xml'
Validation failed: VasprunXMLValidator
Traceback (most recent call last):
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/fireworks/core/rocket.py", line 265, in run
m_action = t.run_task(my_spec)
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/atomate/vasp/firetasks/run_calc.py", line 299, in run_task
c.run()
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/custodian/custodian.py", line 368, in run
self._run_job(job_n, job)
File "/project/6006984/prabh97/environments/VirtualENV/lib/python3.8/site-packages/custodian/custodian.py", line 492, in _run_job
raise ValidationError(s, True, v)
custodian.custodian.ValidationError: Validation failed: VasprunXMLValidator
2022-04-13 16:47:45,976 INFO Rocket finished
Any leads to understanding this error would be appreciated.