Questions about the use of init_surf #1701
Replies: 1 comment
-
When I went through the POSCAR files created in the 00.place_ele folder-sys-- folders, unlike init_bulk Ive found out that all the POSCAR files had the same compositions. So I could conclude that the init_surf function doesnt make slab structures with different composition values. Then what are the different sys-- folders for? The numbers behind the sys- used to state the atom numbers for each specie in the init_bulk stage. But it seems that in init_surf stage it doesnt. Does it have anything to do with the random occupation? |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Thanks in advance for checking out my discussion for everyone.
Currently, I want to generate structures of slab models including two types of metal element species. From what Ive seen in the documentations, I can either specify the cell_type in dpgen init_surf param.json file to generate simple unit cells, or I could just set from_poscar to true to use pre-optimized structures. So, what I want to do is to use bulk-type intermediate compounds as a starting point of dpgen init_surf to generate slab structures. However, when I use the following param.json file:
{
"stages": [1, 2],
"from_poscar": true,
"from_poscar_path": "./POSCAR",
"super_cell": [1, 1, 1],
"layer_numb": 4,
"vacuum_max": 12.0,
"vacuum_resol": [0.5, 1.0],
"mid_point": 6.0,
"millers": [
[0, 0, 1],
[1, 0, 0],
[0, 1, 0]
],
"elements": ["A", "B"],
"potcars": [
"./POTCAR_A", "./POTCAR_B"
],
"relax_incar": "./INCAR.rlx",
"scale": [1.0],
"skip_relax": true,
"pert_numb": 5,
"pert_box": 0.03,
"pert_atom": 0.01,
"coll_ndata": 5000
}
I end up with the following error saying that I should specify the cell_type keyword:
Traceback (most recent call last):
File "/home/mesiya9804/anaconda3/envs/deepmd/bin/dpgen", line 10, in
sys.exit(main())
^^^^^^
File "/home/mesiya9804/anaconda3/envs/deepmd/lib/python3.12/site-packages/dpgen/main.py", line 255, in main
args.func(args)
File "/home/mesiya9804/anaconda3/envs/deepmd/lib/python3.12/site-packages/dpgen/data/surf.py", line 627, in gen_init_surf
place_element(jdata)
File "/home/mesiya9804/anaconda3/envs/deepmd/lib/python3.12/site-packages/dpgen/data/surf.py", line 314, in place_element
cell_type = class_cell_type(jdata)
^^^^^^^^^^^^^^^^^^^^^^
File "/home/mesiya9804/anaconda3/envs/deepmd/lib/python3.12/site-packages/dpgen/data/surf.py", line 99, in class_cell_type
ct = jdata["cell_type"]
~~~~~^^^^^^^^^^^^^
KeyError: 'cell_type'
And when I do specify the cell_type by assigning any type of unit cell, say fcc, it seems to work well, but not in a way that Ive intended. If I do as I said, the dpgen init_surf stage creates slab structures with various compositions. To be more specific, for the slab-001 system, every compositions possible are created. But what I wanted is to create (001) slab structure of the intermediate compound. Is this the way it should be? or am I doing something wrong?
Beta Was this translation helpful? Give feedback.
All reactions