Closed sgodse16 closed 1 year ago
Try:
9.066705 0.0 0.0
-4.533351 7.851996 0.0
0.0 0.0 14.650154
If you want a 3x3x1 fixed cell, you need to multiply the first and second vectors of the parent lattice by 3.
Tried this, still no enumerations.
I think there are just way too many enumerations. I tried a smaller problem. Here's a similar concentration range but much smaller supercell (size 3 and 6---and not restricting to a fixed cell yet):
(base) ➜ input git:(main) ✗ ../../src/enum.x struct_enum.in.sgodse16
---------------------------------------------------------------------------------------------
Calculating derivative structures for index n= 1 to 6
Including only structures of which the concentration of each atom is in the range:
Type: 1: 10/36--10/36
Type: 2: 4/36--4/36
Type: 3: 4/36--4/36
Type: 4: 18/36--18/36
Volume CPU #HNFs #SNFs #reduced % dups volTot RunTot
3 0.0110 13 1 6 0.5385 176 176
6 68.0240 91 1 24 0.7363 1183554 1183730
---------------------------------------------------------------------------------------------
The jump in the number of structures from size 3 to 6 is huge. Imagine how big it would be going from 6 to 9.
Here's another case, fixed 2x2x1 cell. Works fine, but probably doesn't get you to the concentration you want.
(base) ➜ input git:(main) ✗ ../../src/enum.x struct_enum.in.sgodse16
---------------------------------------------------------------------------------------------
Generating permutations for fixed cells. index n= 4 to 4
Be aware: non-primitive structures (super-periodic configurations) are included
in the final list in this mode.
---------------------------------------------------------------------------------------------
Calculating derivative structures for index n= 4 to 4
Including only structures of which the concentration of each atom is in the range:
Type: 1: 7/24--7/24
Type: 2: 2/24--2/24
Type: 3: 3/24--3/24
Type: 4: 12/24--12/24
Volume CPU #HNFs #SNFs #reduced % dups volTot RunTot
4 0.0324 1 1 1 0.0000 132 132
---------------------------------------------------------------------------------------------
The 2x2x1 might be too small for your needs, but the 3x3x1 is too big to enumerate. I tried another compact fixed cell that was 5x bigger than the primitive and I got this. (I'm guessing this is already way more structures than you want to calculate in DFT.)
(base) ➜ input git:(main) ✗ ../../src/enum.x struct_enum.in.sgodse16
---------------------------------------------------------------------------------------------
Generating permutations for fixed cells. index n= 4 to 9
Be aware: non-primitive structures (super-periodic configurations) are included
in the final list in this mode.
---------------------------------------------------------------------------------------------
Calculating derivative structures for index n= 4 to 9
Including only structures of which the concentration of each atom is in the range:
Type: 1: 12/60--18/60
Type: 2: 6/60-- 9/60
Type: 3: 6/60-- 9/60
Type: 4: 30/60--30/60
Volume CPU #HNFs #SNFs #reduced % dups volTot RunTot
5 1.6772 1 1 1 0.0000 16280 16280
---------------------------------------------------------------------------------------------
I made my fixed cell by picking cell vectors s1 = 3*a1+2*a2, s2 = 2*a1+3*a2
Closing this. If you have further questions, feel free to open it again.
I am trying to enumerate possible all possible structures for Li1.2Mn0.4Ni0.4O2. Starting with a unit cell of LiMnO2 which contains 12 atoms (Li3Mn3O6), I am trying to create the required composition by creating a 3x3x1 supercell and then replacing some Mn atoms with Li and Ni to get Li1.2Mn0.4Ni0.4O2 composition (trying to get Li32Mn11Ni11O54 which is close to the desired composition). I am using a fixed_cells.in file to restrict the supercell size, but I am not getting any enumerations.
Here's my enumerate.in file - Li1.2Ni0.4Mn0.4O2_Layered bulk 3.022235 0.0 0.0 -1.511117 2.617332 0.0 0.0 0.0 14.650154 4 12 0.0 0.0 7.325077 0 1.511117 0.872444 12.208462 0 0.0 1.744888 2.441692 0 0.0 0.0 0.0 0/1/2 1.511117 0.872444 4.883385 0/1/2 0.0 1.744888 9.766769 0/1/2 0.0 0.0 3.773587 3 0.0 0.0 10.876567 3 1.511117 0.872444 8.656971 3 1.511117 0.872444 1.109798 3 0.0 1.744888 13.540356 3 0.0 1.744888 5.993183 3 9 9 1.0000000E-06 # Epsilon (finite precision parameter) full 32 32 108 11 11 108 11 11 108 54 54 108
And the fixed_cells.in file: 3x3x1 supercell 3 0 0 -1.5 2.598076 0.0 0 0 1
In the struct_enum.out, I am getting the following ouput-
Li1.2Ni0.4 bulk 3.0222350 0.0000000 0.0000000 # a1 parent lattice vector -1.5111170 2.6173320 0.0000000 # a2 parent lattice vector 0.0000000 0.0000000 14.650154 # a3 parent lattice vector 12 # Number of points in the multilattice 0.0000000 0.0000000 7.3250770 # d01 d-vector, labels: 0 1.5111170 0.87244400 12.208462 # d02 d-vector, labels: 0 0.0000000 1.7448880 2.4416920 # d03 d-vector, labels: 0 0.0000000 0.0000000 0.0000000 # d04 d-vector, labels: 0/1/2 1.5111170 0.87244400 4.8833850 # d05 d-vector, labels: 0/1/2 0.0000000 1.7448880 9.7667690 # d06 d-vector, labels: 0/1/2 0.0000000 0.0000000 3.7735870 # d07 d-vector, labels: 3 0.0000000 0.0000000 10.876567 # d08 d-vector, labels: 3 1.5111170 0.87244400 8.6569710 # d09 d-vector, labels: 3 1.5111170 0.87244400 1.1097980 # d10 d-vector, labels: 3 0.0000000 1.7448880 13.540356 # d11 d-vector, labels: 3 0.0000000 1.7448880 5.9931830 # d12 d-vector, labels: 3 4-nary case 9 9 # Starting and ending cell sizes for search 0.10000000E-05 # Epsilon (finite precision parameter) Concentration check: T Including only structures of which the concentration of each atom is in the range: Type 1: 32/ 108 -- 32/ 108 Type 2: 11/ 108 -- 11/ 108 Type 3: 11/ 108 -- 11/ 108 Type 4: 54/ 108 -- 54/ 108 full list of labelings (including incomplete labelings) is used Equivalency list: 1 2 3 4 5 6 7 8 9 10 11 12 start #tot HNF Hdegn labdegn Totdegn #size idx pg SNF HNF Left transform labeling
Enumlib is not able to create any structures, which is weird as I can just manually create the required composition by replacing Mn atoms in 3x3x1 supercell. However I want to create all possible structures which is not possible manually.
Any help is appreciated!