Shape factor for compounds

Hello,
dear users and developers.

I am sincerely grateful for all your kind responses to my questions, even though some of them have been very detailed and long.
I apologize for the inconvenience, but I have a few more short questions.

In the endpoints, there is a ‘shape factor’ item, but it seems to output ‘None’ for compounds. (Although not all elemental data is available either).

I know it’s not easy to find the shape factor for compounds, but I was wondering if there is any information available.

In the endpoints, does ‘density_atomic’ mean atomic density?
If so, should I understand ‘density’ as the density of the entire cell, and ‘atomic density’ as the density based on the mass and volume of each individual atom?
For compounds, is the atomic density treated as the average of the atoms?

Where can I find the detailed units for the data?
The units I have guessed are as follows (based on data from VASP, etc.).

Property Unit
Volume Å^3
Density g⋅cm⁻³
Atomic density g⋅cm⁻³
Energy / atom eV/atom
Formation E / atom eV/atom
Fermi E eV
Modulus GPa
Magnetization μ_B /f.u.

I extracted the data using the method below.

    file.write(f"Number of documents: {total_materials}\n\n")

    for idx, material in enumerate(materials, start=1):
        material_id = material.material_id

        update          = material.last_updated
        formula         = material.formula_pretty
        chemsys         = material.chemsys
        nsites          = material.nsites
        nelements       = material.nelements
        volume          = material.volume
        density         = material.density
        density_atomic  = material.density_atomic
        energy_atom     = material.energy_per_atom
        fenergy_atom    = material.formation_energy_per_atom
        e_hull          = material.energy_above_hull
        grain_boundary  = material.grain_boundaries
        space_group     = material.symmetry
        magnetic        = material.is_magnetic
        mag_order       = material.ordering
        shape           = material.shape_factor
  1. The shape factors have only been computed for a handful of materials surfaces, we don’t have plans right now to expand that collection

  2. density_atomic means the volume per number of atoms in our docs

  3. Most of the units can be found in our document schemas in the annotations, although the annotation for atomic density is wrong, I’ll fix that now.

Everything besides atomic density (Å3/atom) and magnetization (\mu_B) look correct in your table!

  1. Does density_atomic mean volume per unit atom?

If it is indeed volume per unit atom as you said, wouldn’t we just divide the volume by the atom value?

Perhaps if the unit is not ų/atom, but atom/ų (number of atoms per unit volume = atomic density), I thought the calculation for this would follow the formula below.
(density * Avogadro constant) / atomic mass

For example, the calculation for Ac (mp-862690) would be defined as follows (assuming the atomic weight of Actinium is 227.027 g/mol).
Element MPID nsites ntype Volume Density d_atom
Ac4 mp-862690 4 1 184.54540076862065 8.17018179970668 0.02167488316338547

Element MPID nsites ntype Volume Density Density_atomic
Ac mp-862690 4 1 184.54540076862065 8.17018179970668 0.02167488316338547

image
image - unit

Therefore, based on the calculation, if the result is 0.0216748 in units of atoms/ų, it seems to match the output value.
If I am mistaken, please correct me.
Thank you.

If it is indeed volume per unit atom as you said, wouldn’t we just divide the volume by the atom value?

Yes, that’s what is done in the code snippet I sent (linking here too)

You can check this as well:

from mp_api.client import MPRester
import numpy as np

with MPRester() as mpr:
    summ_docs = mpr.materials.summary.search()

volumes_per_atom = np.array([doc.structure.volume / doc.structure.num_sites for doc in summ_docs])
density_atomic = np.array([doc.density_atomic for doc in summ_docs])
print(np.allclose(volumes_per_atom,density_atomic))
>>> True

I’m not sure where the value of 0.022 for mp-862690 is coming from, it shows up as 46.136 for me in the summary collection

It seems there was a problem with the process of loading the code.
I’ve checked it again, and it looks like the call was being made from a strange place.

Thank you. Thanks to you, I was able to solve the problem I was having.

Thank you for providing the information regarding units and formulas.

1 Like