pymatgen.apps.battery.analyzer module¶
Analysis classes for batteries
-
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
- Parameters
struc_oxid – a Structure object; oxidation states must be assigned for this structure; disordered structures should be OK
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!
-
property
max_cation_insertion
¶ Maximum number of cation A that can be inserted while maintaining charge-balance. 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!)
-
property
max_cation_removal
¶ Maximum number of cation A that can be removed while maintaining charge-balance.
- Returns
integer amount of cation. Depends on cell size (this is an ‘extrinsic’ function!)