pymatgen.apps.battery.analyzer module¶

class
BatteryAnalyzer
(struc_oxid, cation='Li')[source]¶ Bases:
object
A suite of methods for starting with an oxidized structure and determining its potential as a battery
Pass in a structure for analysis :param struc_oxid  a Structure object; oxidation states must be assigned for this structure; disordered structures should be OK: :param cation  a String symbol or Element for the cation. It must be positively charged, but can be 1+/2+/3+ etc.:

get_max_capgrav
(remove=True, insert=True)[source]¶ Give max capacity in mAh/g for inserting and removing a charged cation Note that the weight is normalized to the most lithiated state, thus removal of 1 Li from LiFePO4 gives the same capacity as insertion of 1 Li into FePO4.
 Parameters
remove – (bool) whether to allow cation removal
insert – (bool) whether to allow cation insertion
 Returns
max grav capacity in mAh/g

get_max_capvol
(remove=True, insert=True, volume=None)[source]¶ Give max capacity in mAh/cc for inserting and removing a charged cation into base structure.
 Parameters
remove – (bool) whether to allow cation removal
insert – (bool) whether to allow cation insertion
volume – (float) volume to use for normalization (default=volume of initial structure)
 Returns
max vol capacity in mAh/cc

get_removals_int_oxid
()[source]¶ Returns a set of delithiation steps, e.g. set([1.0 2.0 4.0]) etc. in order to produce integer oxidation states of the redox metals. If multiple redox metals are present, all combinations of reduction/oxidation are tested. Note that having more than 3 redox metals will likely slow down the algorithm.
Examples
LiFePO4 will return [1.0] Li4Fe3Mn1(PO4)4 will return [1.0, 2.0, 3.0, 4.0]) Li6V4(PO4)6 will return [4.0, 6.0]) note that this example is not normalized
 Returns
array of integer cation removals. If you double the unit cell, your answers will be twice as large!

max_cation_insertion
¶ Maximum number of cation A that can be inserted while maintaining chargebalance. No consideration is given to whether there (geometrically speaking) are Li sites to actually accommodate the extra Li.
 Returns
integer amount of cation. Depends on cell size (this is an ‘extrinsic’ function!)

max_cation_removal
¶ Maximum number of cation A that can be removed while maintaining chargebalance.
 Returns
integer amount of cation. Depends on cell size (this is an ‘extrinsic’ function!)
