I want to calculate the number of atoms in a structure ( For example - mp-1013796)The cif file is having 160 atoms and if I use nsites, i get 80 atoms. How can I get the number of atoms in a unit cell?

I want to calculate the number of atoms in a structure ( For example - mp-1013796)

The cif file is having 160 atoms and if I use nsites, i get 80 atoms.

How can I get the number of atoms in a unit cell?

@Steven_Zhang @Nicholas_Winner could you please help?

Hi, the most likely reason for the difference in the number of atoms is due to cif file being the conventional cell, but the structure that you are trying to calculate sites for is the primitive cell.

1 Like

AntObi is right. It depends which version of the structure you downloaded the cif as. You can try reducing it using Structure.get_primitive_structure() or check which one you downloaded carefully.

1 Like

@Nicholas_Winner Thank you so much for your reply. I am using this mprester query to get the structure.

criteria = {“structure”: {‘$exists’: True},“material_id”:“mp-555322”}
c = m.query(criteria=criteria,properties=[“material_id”,“nsites”,“nelements”,“num_sites”,“structure”])

How will I know if it is conventional or primitive? Is there a way to get primitive structure? Any property name?