|
本帖最后由 maoxinxina 于 2025-2-27 17:25 编辑
按照网页http://bbs.keinsci.com/thread-43794-1-1.html给出的帖子对几个环境变量进行设置,但是出现了问题。
export VASP_COMMAND=$HOME/users/maoxin/vasp/vasp_sub.shexport VASP_SCRIPT=$HOME/users/maoxin/vasp/run_vasp.py
export VASP_PP_PATH=$HOME
几个环境参数的设置。
其中vasp_sub.sh的内容如下:
#!/bin/bash
#SBATCH -J vasp
#SBATCH -N 1
#SBATCH --ntasks-per-node=32
#SBATCH -p wzhcnormal
module purge
source /work/home/acdsqiq3o7/apprepo/vasp/5.4.4-ioptcell_intelmpi2017_hdf5_libxc/scripts/env.sh
export MKL_DEBUG_CPU_TYPE=5 #加速代码
export MKL_CBWR=AVX2 #使cpu默认支持avx2
export I_MPI_PIN_DOMAIN=numa #内存位置与cpu位置绑定,加速内存读取。对于内存带宽要求高的计算提速明显
srun --mpi=pmi2 vasp_std > vasp.out
run_vasp.py内容如下:
import os
exitcode = os.system('vasp_sub.sh')
这里对一个1.py来执行 python 1.py
from ase import Atoms, Atom
from ase.calculators.vasp import Vasp
from ase.build import bulk
atoms = bulk('Pt', 'fcc', a=3.5, cubic=True)
calc = Vasp(prec='Accurate', xc='PBE', lreal=False)
atoms.calc = calc
print(atoms.get_potential_energy())
报错如下:
Traceback (most recent call last):
File "/work/home/**/users/maoxin/vasp/1.py", line 19, in <module>
print(atoms.get_potential_energy())
File "/work/home/**/anaconda3/envs/workflow/lib/python3.9/site-packages/ase/atoms.py", line 770, in get_potential_energy
energy = self._calc.get_potential_energy(self)
File "/work/home/**/anaconda3/envs/workflow/lib/python3.9/site-packages/ase/calculators/abc.py", line 24, in get_potential_energy
return self.get_property(name, atoms)
File "/work/home/**/anaconda3/envs/workflow/lib/python3.9/site-packages/ase/calculators/calculator.py", line 538, in get_property
self.calculate(atoms, [name], system_changes)
File "/work/home/**/anaconda3/envs/workflow/lib/python3.9/site-packages/ase/calculators/vasp/vasp.py", line 340, in calculate
raise calculator.CalculationFailed(
ase.calculators.calculator.CalculationFailed: vasp in /work/home/**/users/**/vasp returned an error: 1 stderr srun: error: Unable to allocate resources: No partition specified or system default partition
在后面大哥的提醒下,把1.py里面计算这一行改为calc = Vasp(prec='Accurate', xc='PBE', lreal=False, command='srun --mpi=pmi2 vasp_std', directory = './tmp', txt='-')
在1.sh里面执行python3 1.py
最后再执行sbatch 1.sh就可以正常运行了。
|
|