def __init__(self, exclude=None): super(CompositionFeaturizers, self).__init__(exclude=exclude) self._fast_featurizers = [ cf.AtomicOrbitals(), cf.ElementProperty.from_preset("matminer"), cf.ElementProperty.from_preset("magpie"), cf.ElementFraction(), cf.Stoichiometry(), cf.TMetalFraction(), cf.BandCenter(), cf.ValenceOrbital() ] self._slow_featurizers = [ cf.Miedema(), cf.AtomicPackingEfficiency(), # slower than the rest cf.CohesiveEnergy() # requires mpid present ] self._need_oxi_featurizers = [ cf.CationProperty.from_preset(preset_name='deml'), cf.OxidationStates.from_preset(preset_name='deml'), cf.ElectronAffinity(), cf.ElectronegativityDiff(), cf.YangSolidSolution(), cf.IonProperty() ]
def express(self): fs = [ cf.ElementProperty.from_preset("magpie"), cf.OxidationStates.from_preset(preset_name='deml'), cf.ElectronAffinity(), cf.IonProperty(), cf.YangSolidSolution(), cf.Miedema(), ] return self._get_featurizers(fs)
def all(self): fs = [ cf.AtomicOrbitals(), cf.ElementProperty.from_preset("matminer"), cf.ElementProperty.from_preset("magpie"), cf.ElementProperty.from_preset("matscholar_el"), cf.ElementProperty.from_preset("deml"), cf.ElementFraction(), cf.Stoichiometry(), cf.TMetalFraction(), cf.BandCenter(), cf.ValenceOrbital(), cf.YangSolidSolution(), cf.CationProperty.from_preset(preset_name='deml'), cf.OxidationStates.from_preset(preset_name='deml'), cf.ElectronAffinity(), cf.ElectronegativityDiff(), cf.IonProperty(), cf.Miedema(), cf.AtomicPackingEfficiency(), # slower than the rest cf.CohesiveEnergy() # requires mpid present ] return self._get_featurizers(fs)