"volume change" in the battery explorer app



How did you define “volume change” in the battery explorer app?

I was playing around with the pymatgen’s MPRester and tried to calculate volume change for “Ca_0-0.5_FeO2” electrode system. (https://materialsproject.org/batteries/mvc-2000025690/). I got volumes for FeO2 and Ca(FeO2)2 as 279.0727Å^3 and 309.1910Å^3, respectively. However, (309.1910-279.0727)/279.0727 gives 10.79% of volume change, not 13%.

Similarly for the LiCoO2 system (https://materialsproject.org/batteries/mp-300024850/), how was the overall volume change of 4% calculated?

Thank you.


My instinct here is to ensure that you are using the get_primitive_structure method of pymatgen structures to ensure a minimal-volume unit cell for each structure. Please post your code so that we can reproduce your method of calculation. Thanks!


In the specific instance of mvc-5967 and mp-25690 for the Ca(FeO_2)_2 system, it looks like conventional and primitive cells are the same / have the same volume, and the volumes of 279.07 Å^3 and 309.19 Å^3 respectively seem to be correct, so it’s not clear to me where that 13% comes from either.


@gear0679: @dwinston, Jimmy and I are still investigating this. The volume change is specifically the max volume change between any pair. Specifically, in pymatgen, this is calculated here as:

    def max_delta_volume(self):
        Maximum volume change along insertion
        vols = [v.vol_charge for v in self.voltage_pairs]
        vols.extend([v.vol_discharge for v in self.voltage_pairs])
        return max(vols) / min(vols) - 1

As for why the 13% is shown and not 10%, this might be an issue with inaccessible data, related to Significant release of new database schema and additional data – if so, this would mean the quoted volume changes are correct, but the tasks used to calculate them are not currently available on the website. We will investigate further.