Prediction Module
Prediction algorithm implementation. Wraps the structure prediction pipeline.
Structure prediction implementation.
Todo
Test with a fully populated database.
Implement n-ary substitution probabilities; at the moment, only zero- and single-species substitutions are considered.
- class smact.structure_prediction.prediction.StructurePredictor(mutator: CationMutator, struct_db: StructureDB, table: str)[source]
Bases:
object
Provides structure prediction functionality.
Implements a statistically-based model for determining likely structures of a given composition, based on a database of known compositions and a lambda table of weights.
- Based on the algorithm presented in:
Hautier, G., Fischer, C., Ehrlacher, V., Jain, A., and Ceder, G. (2011) Data Mined Ionic Substitutions for the Discovery of New Compounds. Inorganic Chemistry, 50(2), 656-663. doi:10.1021/ic102031h
- nary_predict_structs(species: List[Tuple[str, int]], n_ary: Optional[int] = 2, thresh: Optional[float] = 0.001, include_same: Optional[bool] = True) Generator[Tuple[SmactStructure, float, SmactStructure], None, None] [source]
Predicts structures for a combination of species.
- Parameters
species – A list of (element, charge). The constituent species of the target compound.
thresh – The probability threshold, below which to discard predictions.
n_ary – The number of species in a parent compound to replace.
include_same – Whether to include unmodified structures from the database, i.e. structures containing all the same species.
- Yields
Potential structures, as tuples of (structure, probability, parent).
- predict_structs(species: List[Tuple[str, int]], thresh: Optional[float] = 0.001, include_same: Optional[bool] = True) Generator[Tuple[SmactStructure, float, SmactStructure], None, None] [source]
Predict structures for a combination of species.
- Parameters
species – A list of (element, charge). The constituent species of the target compound.
thresh – The probability threshold, below which to discard predictions.
include_same – Whether to include unmodified structures from the database, i.e. structures containing all the same species. Defaults to True.
- Yields
Potential structures, as tuples of (structure, probability, parent).