- Preparation
- Configure all with one command
- Configure separately
- Example
- Validation for configuration
- Help for
dfttk configcommand
For configure dfttk, the following file you need to prepare.
current_folder
├── psp [specified by -psp]
│ ├── pseudopotential_content [required if you didnot configurate pymatgen]
│ └── ...
├── config [specified by -c parameter]
│ ├── db.json [required]
│ ├── my_launchpad.yaml [required]
│ ├── FW_config.yaml [optional]
│ ├── my_fworker.yaml [optional]
│ └── my_qadapter.yaml [optional]
└── vaspjob.pbs [optional, specified by -q parameter]After prepared the above required file, simply run dfttk config -all to finish the configuration. If such command successes, you can skip all of the reset part of this documents. If not, please reading the following parts.
-
pseudopotential_content:** The vasp pseudopotential.
-
PRL Group Notes: For PRL group, if you use ACI at PSU, you can skip this part, using
-aciparameter -
It can be compressed file (
*.tar.gz) or uncompressed folder. The name is handled as follows:Note: 1. The split can recognize
.,-,_,+,=,*andspace. 2. After split, the name will be a list. The condition e.g
contain 52is the elements' level. It means52should be a elements of the list. ButUSis string level, which meansUSonly need be a sub-string of the elements of the list. 3. For compressed file, it support
*.tar.gzand*.tar e.g.
potpaw_PBE,PBE.tar.gzandpotpaw_PBE_5254will be recognized asPBE.
potpaw_PBE.52andpotpaw_PBE_52will be recognized asPBE_52
potUSPP_LDAandPOT_LDA_USwill be recognized asLDA_USAfter prepare, the file structure should look like as follows:
Click for details
e.g. psp ├── potpaw_LDA.54.tar.gz ├── potpaw_PBE.54.tar.gz └── ... or: psp ├── potpaw_LDA_54 │ ├── Ac │ └── ... ├── potpaw_PBE_54 │ ├── Ac │ └── ... └── ...The original pseudopotential file, please ask those who are in charge of vasp in your group.
-
-
MAPI_KEY: The API key of Materials Project, ref. API KEY
-
vaspjob.pbs: The submitting script of your queue system. Currently, only pbs system is supported
-
other config files: At least, you need prepare two files,
db.jsonandmy_launchpad.yaml. The template is shown in theconfigfolder.- For more details, please ref. Configure database connections and computing center parameters
-
PRL GROUP NOTES:
- For db.json and my_launchpad.yaml file, please ask Brandon for help.
- vaspjob.pbs for ACI can be download from github
- For pseudopotential, two choices: 1. using the pseudopotentials in ACI account (Using
-aciparameter). 2. Download the pseudopotential from group's box(Group Documents/VASP_potentialnote: onlyPBE_54andLDA_54).
-
dfttk config -all -
For ACI at PSU user, please use
dfttk config -all -aciusage: dfttk config [-h] [-all] [-p PATH_TO_STORE_CONFIG] [-a] [-c CONFIG_FOLDER] [-q QUEUE_SCRIPT] [-qt QUEUE_TYPE] [-v VASP_CMD_FLAG] [-mp] [-aci] [-psp VASP_PSP_DIR] [-mapi MAPI_KEY] [-df DEFAULT_FUNCTIONAL]The meaning of the parameters, please ref Help for
dfttk configcommand or just rundfttk config -h
-
Config manual, ref Configure database connections and computing center parameters
-
dfttk config -ausage: dfttk config -a [-p PATH_TO_STORE_CONFIG] [-c CONFIG_FOLDER] [-q QUEUE_SCRIPT] [-qt QUEUE_TYPE] [-v VASP_CMD_FLAG]The meaning of the parameters, please ref Help for
dfttk configcommand or just rundfttk config -h
-
Config manual, ref POTCAR setup in pymatgen
-
dfttk config -mpusage: dfttk config -mp [-aci] [-p PATH_TO_STORE_CONFIG] [-psp VASP_PSP_DIR] [-mapi MAPI_KEY] [-df DEFAULT_FUNCTIONAL]The meaning of the parameters, please ref Help for
dfttk configcommand or just rundfttk config -h
dfttk config -all -p test_config -mapi test_api
In test_config folder
test_config
├── config
│ ├── db.json
│ ├── FW_config.yaml
│ ├── my_fworker.yaml
│ ├── my_launchpad.yaml
│ └── my_qadapter.yaml
├── logs
└── vasp_psp
├── POT_GGA_PAW_PBE_54
│ ├──Ac
│ └── ...
└── POT_LDA_PAW_54
├──Ac
└── ...In ~/.bashrc
export FW_CONFIG_FILE=/gpfs/scratch/mjl6505/test/dfttk/tutorial/config/test_config/config/FW_config.yamlin ~/.pmgrc.yaml
PMG_DEFAULT_FUNCTIONAL: PBE
PMG_MAPI_KEY: test_api
PMG_VASP_PSP_DIR: /gpfs/scratch/mjl6505/test/dfttk/tutorial/config/test_config/vasp_psp-
dfttk config -tThis command will validate the configuration, and give some error or tips for the incorrect configuration
dfttk config -t [{all,pymatgen,atomate,none}]- Currently only support validation for the configuration of pymatgen
dfttk config -hDFTTK version: 0.1+121.g8fddda3.dirty
Copyright © Phases Research Lab (https://www.phaseslab.com/)
usage: dfttk config [-h] [-all] [-p PATH_TO_STORE_CONFIG] [-a]
[-c CONFIG_FOLDER] [-q QUEUE_SCRIPT] [-qt QUEUE_TYPE]
[-v VASP_CMD_FLAG] [-mp] [-aci] [-psp VASP_PSP_DIR]
[-mapi MAPI_KEY]
[-df {LDA,LDA_52,LDA_54,LDA_US,PBE,PBE_52,PBE_54,PW91,PW91_US,Perdew-Zunger81}]
[-t [{all,pymatgen,atomate}]]
optional arguments:
-h, --help show this help message and exit
-all, --all Configure atomate and pymatgen.
-p PATH_TO_STORE_CONFIG, --prefix PATH_TO_STORE_CONFIG
The folder to store the config files. Default: .
(current folder)
-a, --atomate Configure atomate.
-c CONFIG_FOLDER, --config_folder CONFIG_FOLDER
The folder containing config files, at least contain
db.json and my_launchpad.yaml. Default: '.'
-q QUEUE_SCRIPT, --queue_script QUEUE_SCRIPT
The filename of the script for sumitting vasp job. It
will search in current folder and sub-folders.
Default: vaspjob.pbs
-qt QUEUE_TYPE, --queue_type QUEUE_TYPE
The type of queue system. Note, only pbs is supported
now. Default: pbs
-v VASP_CMD_FLAG, --vasp_cmd_flg VASP_CMD_FLAG
The flag to distinguish vasp_cmd to othe commands in
queue_script. Default: vasp_std
-mp, --pymatgen Configure pymatgen.
-aci, --aci Using the pesudopotential on the ACI cluster at PSU.
-psp VASP_PSP_DIR, --vasp_psp_dir VASP_PSP_DIR
The path of pseudopotentials. Default: psp
-mapi MAPI_KEY, --mapi_key MAPI_KEY
The API key of Materials Projects
-df {LDA,LDA_52,LDA_54,LDA_US,PBE,PBE_52,PBE_54,PW91,PW91_US,Perdew-Zunger81}, --default_functional {LDA,LDA_52,LDA_54,LDA_US,PBE,PBE_52,PBE_54,PW91,PW91_US,Perdew-Zunger81}
The default functional. Default: PBE
-t [{all,pymatgen,atomate}], --test_config [{all,pymatgen,atomate}]
Test for configurations. Note: currently only support
for pymatgen.