Thanks for your powerful and user-friendly code. However, I run into some troubles.
When I run the amset to get the final result, it always stops at the step of getting band interpolation coefficients. I’m wondering what should I do to fix it.
the setting input:
elstk_cst_path = "./elastic_constant/OUTCAR"
dtensor_path = "./dfpt/OUTCAR"
elstk_cst = []
dtensor = []
dtensor_ion = []
total_dtensor = []
with open(elstk_cst_path, "r") as f:
i = 1
outcar = f.read().splitlines()
for key, value in enumerate(outcar):
if re.search(r"TOTAL ELASTIC MODULI", value, flags=0) != None:
elstk_cst = outcar[key + 3:key + 9]
break
for i in range(6):
elstk_cst[i] = elstk_cst[i].split()[1:]
elstk_cst = np.array(elstk_cst).astype(float)
elstk_cst[[3, 4, 5], :] = elstk_cst[[4, 5, 3], :]
elstk_cst[:, [3, 4, 5]] = elstk_cst[:, [4, 5, 3]]
with open(dtensor_path, "r") as f:
i = 1
outcar = f.read().splitlines()
for key, value in enumerate(outcar):
if re.search(r"MACROSCOPIC STATIC DIELECTRIC TENSOR \(including local field effects in DFT\)", value,
flags=0) != None:
dtensor = outcar[key + 2:key + 5]
if re.search(r"MACROSCOPIC STATIC DIELECTRIC TENSOR IONIC CONTRIBUTION", value, flags=0) != None:
dtensor_ion = outcar[key + 2:key + 5]
break
for i in range(3):
dtensor[i] = dtensor[i].split()
dtensor_ion[i] = dtensor_ion[i].split()
dtensor = np.array(dtensor).astype(float)
dtensor_ion = np.array(dtensor_ion).astype(float)
total_dtensor = dtensor + dtensor_ion
setting_dict = {
# general settings
"scattering_type": ["IMP", "ADP","PIE","POP"],
"doping": [1.99e14, 2.20e15, 1.72e16, 1.86e17, 1.46e18, 4.39e18,-1.99e14, -2.20e15, -1.72e16, -1.86e17, -1.46e18, -4.39e18],
"temperatures": [100,200,300,400,500 ,600,700,800,900,1000],
#"bandgap": 1.14,
# electronic_structure settings
"interpolation_factor": 1,
# materials properties
"deformation_potential": "./deformation/deformation.h5",
"elastic_constant":elstk_cst.tolist(),
#"defect_charge": 1,
#"acceptor_charge": 1,
"static_dielectric":total_dtensor.tolist(),
#"high_frequency_dielectric": 13.1,
"wavefunction_coefficients":"./uniform/wavefunction.h5",
"piezoelectric_constant":
[[ 0.00558 , -0.00103 , -0.00485 , 0.00000 , 0.00435 , 0.00000],
[ -0.00439 , 0.00406 , -0.00180 , 0.00000 , -0.03326 , 0.00000],
[ 0.00094 , 0.00094 , -0.00129 , 0.00000 , 0.00000 , -0.00000 ]],
"pop_frequency": 15.71 ,
"high_frequency_dielectric":dtensor.tolist()
#"write_mesh":True
}
#y = amset_run(calculation_dict,setting_dict, [20,20,1], 1)
#y._vasp()
runner = Runner.from_vasprun('./uniform/vasprun.xml.gz', setting_dict)
amset_data = runner.run()
the error output is as follow:
~~~~~~~~~~~~~~~~~~~~~~~~~~ INTERPOLATION ~~~~~~~~~~~~~~~~~~~~~~~~~~
Getting band interpolation coefficients
python: symbol lookup error: /public/home/mrkong/anaconda3/lib/python3.8/site-packages/scipy/special/../../../../libmkl_intel_thread.so.1: undefined symbol: omp_get_num_procs
[mrkong@node5 c2h]$ Process MemTimer-1:
Traceback (most recent call last):
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_common.py", line 447, in wrapper
ret = self._cache[fun]
AttributeError: _cache
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_pslinux.py", line 1576, in wrapper
return fun(self, *args, **kwargs)
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_common.py", line 450, in wrapper
return fun(self)
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_pslinux.py", line 1618, in _parse_stat_file
with open_binary("%s/%s/stat" % (self._procfs_path, self.pid)) as f:
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_common.py", line 711, in open_binary
return open(fname, "rb", **kwargs)
FileNotFoundError: [Errno 2] No such file or directory: '/proc/21554/stat'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/__init__.py", line 354, in _init
self.create_time()
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/__init__.py", line 710, in create_time
self._create_time = self._proc.create_time()
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_pslinux.py", line 1576, in wrapper
return fun(self, *args, **kwargs)
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_pslinux.py", line 1788, in create_time
ctime = float(self._parse_stat_file()['create_time'])
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/_pslinux.py", line 1583, in wrapper
raise NoSuchProcess(self.pid, self._name)
psutil.NoSuchProcess: psutil.NoSuchProcess process no longer exists (pid=21554)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/public/home/mrkong/anaconda3/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/public/home/mrkong/.local/lib/python3.8/site-packages/memory_profiler.py", line 215, in run
cur_mem = _get_memory(
File "/public/home/mrkong/.local/lib/python3.8/site-packages/memory_profiler.py", line 184, in _get_memory
return tools[backend]()
File "/public/home/mrkong/.local/lib/python3.8/site-packages/memory_profiler.py", line 128, in ps_util_tool
process = psutil.Process(pid)
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/__init__.py", line 326, in __init__
self._init(pid)
File "/public/home/mrkong/anaconda3/lib/python3.8/site-packages/psutil/__init__.py", line 367, in _init
raise NoSuchProcess(pid, None, msg)
psutil.NoSuchProcess: psutil.NoSuchProcess no process found with pid 21554