Closed lauren-walters closed 3 years ago
I believe your issue 1 can be solved by adding a line to the cif:
loop_
_atom_type_symbol
_atom_type_oxidation_number
Dear Lauren! Thank you very much for such a well described problem. I'm glad to help you.
_atom_type_symbol
should be added. Thank you Marcel!Best, Kirill
P.S. I have a vacation now, so my reply can be delayed.
Hi Gitdowski and Kirill,
Thank you for the quick responses!
For issue 1, I added those lines to the cif. Do you both mean specifying the _atom_type_symbol
and _atom_type_oxidation_number
? When I attempted to both add the atom symbols, and oxidation states, as well as add just the lines themselves, the manual properties table still outputs a nan oxidation state. When I specify the _atom_type_symbol
and _atom_type_oxidation_number
, instead of just adding the blank lines, the oxidation states are then 0. The output is included below.
Kirill, as for the hydrogen, you are correct that the identification of hydrogen in the structure has been challenging for my collaborators. The structure is a molybdenum oxide precursor that has had nitrogen run over it, thus substituting most of the anion sites for nitrogen. It's not a perfect process, so there is some oxygen remaining. Our collaborators want to use DFT (with the POSCAR created from the Supercell program) to understand how the leftover oxygen content is influencing the electronic behavior, and were also hoping to use a vasp patch to do a simulated NMR.
Therefore, my group has been talking about taking the hydrogen out of the unit cell so that we are only looking at the occupational disorder of the Mo-vaccancy and O-N behavior. Do you think this could be a necessary change to make? If the hydrogen is taken out, the molybednums oxidation states at +4 charge balance the cell, which makes a bit more sense than +6 and +2 charge disproportion. Therefore, we might try to do this and treat the hydrogen later as hydrogen doping. I can include this new cif if that would be helpful. Any insight you might have, or if you don't believe supercell can handle the hydrogen as is would be great!
Let me know if you want more specific information.
-----------------------------------------------------
- Supercell program -
-----------------------------------------------------
- Authors: * Kirill Okhotnikov -
- (kirill.okhotnikov@gmail.com) -
- * Sylvian Cadars -
- (sylvian.cadars@cnrs-imn.fr) -
- * Thibault Charpentier -
- (Thibault.Charpentier@cea.fr) -
-----------------------------------------------------
- please cite: -
- K. Okhotnikov, T. Charpentier and S. Cadars -
- J. Cheminform. 8 (2016) 17 – 33. -
-----------------------------------------------------
Manual properties
Label |fixed |charge |popul |
H1 |N/A |1 |N/A |
H2 |N/A |1 |N/A |
Mo1 |N/A |6 |N/A |
Mo2 |N/A |2 |N/A |
N1 |N/A |-3 |N/A |
N2 |N/A |-3 |N/A |
O1 |N/A |-2 |N/A |
Initial system:
Chemical Formula: H2.2656 Mo2.6176 N2.488 O1.512
Supercell system (1x1x1):
Size a=4.183, b=4.183, c=4.183
Current charge balance option is "try"
Total charge oxidation state (cif): 0
Total charge cell: -0.0912
Charge balancing: yes
----------------------------------------------------------------
| Atom Label | charge | mult | occup x mult
| | Ox. state | Used | (cif) |
----------------------------------------------------------------
| H1 | 0 | 1 | 24 | 1.1208
| H2 | 0 | 1 | 24 | 1.1448
| Mo1 | 0 | 6 | 1 | 0.724
| Mo2 | 0 | 2 | 3 | 1.8936
| N1 | 0 | -3 | 1 | 1
| N2 | 0 | -3 | 3 | 1.488
| O1 | 0 | -2 | 3 | 1.512
----------------------------------------------------------------
ERROR: Group has no unique connection.
ERROR: Group has no unique connection.
ERROR: Group has no unique connection.
Create occupation groups error.
Dear Lauren,
For (1) please check supercell tutorial. https://orex.github.io/supercell/doc/supercell_tutorial.pdf On page 1 you can find an example cif file. You need lines 21-30. Please use it as template. If something goes wrong with it, please attach the modified cif file. (2) Your questions are very difficult to answer "yes" or "no", because it is not about supercell itself, but about your calculation in general. I assume that you want to perform "canonical" calculations: charge balanced cell and no-VCA (in any form). As I know this is a must to get for example a reliable NMR data. In this case you should think simultaneously about supercell size, atoms population and charge balancing. If you can balance cell without hydrogen it is better to exclude it (if you do not need it). If you would like to work with hydrogen with my program it is also possible. Just decrease a tolerance "-t" parameter to "0.1" and you can process a hydrogen disorder also. From my point of view it is worth to try some "trial" calculations, which can give you more information about the way to solve your problem: 1) Try to get as much as possible initial populations (which have sense, of course). For example, 0, 1, 2 hydrogens; Mo +2/+6 or Mo +4; different N/O ratio. 2) Try to also vary supercell size and shape. 3) Use electrostatic ("-q" option) and random selection of output configuration.
After performing the VASP calculations and analysing the results, you will get much more information about the input you needed.
NMR method is also extremely good for fine structure resolving. If you can have an extra NMR data it can help you a lot: 1) Of course, you can check hydrogen qualitatively and probably quantitatively. 2) If you have a possibility to make a 95,97Mo NMR, in this case you can easily see Mo sites ratio. Probably oxidation state also. 3) The same for N. 4) Comparing of simulated and experimental NMR spectra can give you a hint about a disorder type.
You can check some papers, if you need more information: 1) Random sampling: http://arxiv.org/abs/1606.08062 2) Electrostatic sampling: https://doi.org/10.1088/0953-8984/22/25/255401 3) Electrostatic sampling with supercell and NMR simulation: http://doi.org/10.1016/j.ssnmr.2017.04.001 4) Electronic calculations for Li compound (may be you can find there some good ideas for your project): https://doi.org/10.1016/j.ensm.2020.07.013
I also recommend you to go through the supercell tutorial. It can be boring and probably can take a few hours, but I hope it gives you a good overview of supercell facilities and applications.
Conclusion: Please check the the (1) problem with charges. If you can't fix it, reply here with modified cif file attached.
If you have an extra questions or need some pieces of advice about your projects, don't hesitate to write me on e-mail (kirill.okhotnikov@gmail.com).
Best, Kirill.
Hi Kirill,
Thank you for the help, and especially on issue 1. It is now resolved through adding the suggested lines, along with the oxidation states. I didn't realize that the oxidation states needed to be specified in the cif and not just the command line call, and I really appreciate your patience. I have included the output below.
For issue 2, you bring up a lot of really good points, and I realize that it's not straightforward. You are right, we are trying to perform charge balanced, non VCA calculations. We're definitely planning to compare experimental and computational NMR, so this supercell calculation will be really key to understanding the disorder as you pointed out.
As to not including hydrogen, I have been able to run the calculation effectively with Mo*:c=+4 for both sites, and no ERROR: Group has no unique connection and Create occupation groups errors occur which is great! As pointed out earlier, specifying both molybdenums as +4 makes maybe more sense given the stability of the +4 oxidation state with Mo.
I appreciate the references and will go through more of the tutorial. At this point, I will try to move forward with the charge balanced structure with no hydrogen, and talk to my collaborators and work through the test examples you gave, such as obtaining many possible populations and decreasing the tolerance. I'm a bit worried about the supercell size I might need but am hoping to find something workable.
Anyway, I just want to say again that your help and the ability to use your code is so appreciated. I'll reach out if I have any other questions, but this gave me the information I needed to proceed. Thank you!
Sincerely, Lauren
$ ./supercell -d -i Mo-O-N-H-700C-2.cif -m
-----------------------------------------------------
- Supercell program -
-----------------------------------------------------
- Authors: * Kirill Okhotnikov -
- (kirill.okhotnikov@gmail.com) -
- * Sylvian Cadars -
- (sylvian.cadars@cnrs-imn.fr) -
- * Thibault Charpentier -
- (Thibault.Charpentier@cea.fr) -
-----------------------------------------------------
- please cite: -
- K. Okhotnikov, T. Charpentier and S. Cadars -
- J. Cheminform. 8 (2016) 17 – 33. -
-----------------------------------------------------
Initial system:
Chemical Formula: H2.2656 Mo2.6176 N2.488 O1.512
Supercell system (1x1x1):
Size a=4.183, b=4.183, c=4.183
Current charge balance option is "try"
Total charge oxidation state (cif): -0.0912
Total charge cell: -0.0912
Charge balancing: yes
----------------------------------------------------------------
| Atom Label | charge | mult | occup x mult
| | Ox. state | Used | (cif) |
----------------------------------------------------------------
| H1 | 1 | 1 | 24 | 1.1208
| H2 | 1 | 1 | 24 | 1.1448
| Mo1 | 6 | 6 | 1 | 0.724
| Mo2 | 2 | 2 | 3 | 1.8936
| N1 | -3 | -3 | 1 | 1
| N2 | -3 | -3 | 3 | 1.488
| O1 | -2 | -2 | 3 | 1.512
----------------------------------------------------------------
ERROR: Group has no unique connection.
ERROR: Group has no unique connection.
ERROR: Group has no unique connection.
Create occupation groups error.
Hi Lauren, maybe another comment: It involves a bit of preprocessing but for me it always worked out that way.
Try to convert the cif file to P1 symmetry, i.e., such that every site in the unit (or super cell) has its one entry and is not relying on the symmetry operations as given in the cif file. E.g., all Mo1 sites that are visualized in your attached picture would have an own entry in the cif.
What I do to achieve that is the following: I open the cif with VESTA, replace some atom types with dummy atom types (e.g., replace H2 with Li, Mo2 with Ta and N2 with P) and export it as vasp structure which gives you the coordinates of every site. If you don't change the atoms the exported vasp file would only show H and you could not distinguish between H1 and H2 anymore. All these coordinates I put into the cif file with the correct _atom_site_label
, _atom_site_type_symbol
and _atom_site_occupancy
. I also throw out every other information that is not needed by supercell. In the end your cif file should look something like that:
_cell_length_a 4.1829990000
_cell_length_b 4.1829990000
_cell_length_c 4.1829990000
_cell_angle_alpha 90.0000000000
_cell_angle_beta 90.0000000000
_cell_angle_gamma 90.0000000000
_space_group_name_H-M_alt 'P 1'
_space_group_IT_number 1
loop_
_space_group_symop_operation_xyz
'x, y, z'
loop_
_atom_site_label
_atom_site_type_symbol
_atom_site_fract_x
_atom_site_fract_y
_atom_site_fract_z
_atom_site_occupancy
Mo1 Mo 0.00000 0.00000 0.00000 0.72400
Mo1 Mo x.xxxxx y.yyyyyy z.zzzzz 0.72400
[...]
loop_
_atom_type_symbol
_atom_type_oxidation_number
N1 -3
N2 -3
O1 -2
H1 1
H2 1
Mo1 6
Mo2 2
If I know I want to do a calculation with a super cell I proceed in the same way and create the supercell in VESTA under Edit > Edit Data > Unit Cell > Transform... by putting the right numbers into the matrix (usually only into the main diagonal), confirm it and select the "Search atoms in the new unit-cell and add them as new sites". Then I do the same as described above.
I know it is a bit cumbersome and involves some work beforehand but afterwards you should not encounter any more issues with the cif file. I hope this helps!
Best regards, Marcel
Hi Marcel,
This does help! I think I've seen people try similar methods for simulating paramagnetic ordering as well. I will definitely try to this, and I appreciate you going through all the steps! Similar to Kirill, I will be out of office this weekend before the academic year begins this next week, but will definitely try both these methods and report back. Thank you again!
Sincerely, Lauren
Hello Developers,
I am a new user to Supercell, and have worked through a number of the examples successfully. I am writing about issues that are similar to comment 18, for which I was also able to run successfully after making the edits suggested in that thread. I am dealing with similar issues as the user PheLiBoP, where I am obtaining two key error messages when running ./supercell: 1) “Nan” Charge Oxidation States in the atom enumeration tables and 2) “ERROR: Group has no unique connection”. Additionally, another error, 3) “Create occupation groups error” appeared. If I could have help on any of these three errors, that would be wonderful.
1) For error 1, the Nan charge, I have decided to identify the charges through specifying them when calling the supercell executable rather than in the .cif (-p "Mo1:c=+6" -p "Mo2:c=+2" -p "N:c=-3" -p "O:c=-2" -p "H*:c=+1"). However, the Nan error can be reproduced by adding the following lines to the cif below the _atom_site_fract_symmform, which follows with what was recommended in comment 18. However, this makes it so “Used” in the table goes to 0, so therefore I believe specifying the oxidation states in the command line explicitly is more successful for this case.
2) For error 2, I tried to identify ways that I could simplify the .cif where there is fractional occupancy for the hydrogen, as I believe this could be where the error lies for “ERROR: Group has no unique connection”. Similarly to comment 18 for oxygen, this structure produces a situation where there are many possible places for hydrogen to occur. Therefore, I think given what the developers discussed for comment 18, hydrogen could be considered to be displacement disordered? There are two unique sites each with a 24 multiplicity, meaning that each unit cell we’re looking for has about 1 of each unique hydrogen, or two H’s.
The two unique positions can be seen when visualizing the .cif, again similar to what the developer did for comment 18. H1 lies closer to the Mo2 atom, between the transition metal-nitrogen bonds. On the other hand, H2 lies very close to the fractional O/N site, nearly halo-ing the anion. This can be seen in the pictures below, labelled, though due to the number of atomic sites, it could be helpful for the developers and any reading this post to visualize the system yourself.
Hydrogen 1 
Hydrogen 2
Unlike comment 18, I don’t see an easy way to reduce the complexity of where the hydrogens can exist within the cif, without making a decision about where they would be in the cell. If I am not missing something, is there a way to handle the “ERROR: Group has no unique connection” without choosing a spot for each hydrogen in the .cif?
3) Unfortunately, I was not able to find instances of the error “Create occupation groups error” in other examples or comments on the GitHub, though I could have missed them. Therefore, I’m not quite sure exactly what it indicates. However, I want to point it out in case this helps the developers address the issue or other users in the future see this error.
As a background, these cells were created by a collaborator from diffraction patterns after a synthesis, and thus are a bit complicated. The goal is to develop a supercell for which we can do a DFT relaxation, followed by looking at other characteristics with DFT (i.e. electronic band structures and NMR). Below I have included my .cif and my output. The full command I used to obtain the output was (
./supercell -d -i Mo-O-N-H.cif -m -p "Mo1:c=+6" -p "Mo2:c=+2" -p "N*:c=-3" -p "O*:c=-2" -p "H*:c=+1”
). Thank you!OUTPUT
CIF