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
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
- 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.