ElectrodeInsertionMaker¶
- class atomate2.common.flows.electrode.ElectrodeInsertionMaker(relax_maker, static_maker, bulk_relax_maker=None, name='ion insertion', structure_matcher=<factory>)[source]¶
-
Attempt ion insertion into a structure.
- The basic unit for cation insertion is:
- [get_stable_inserted_structure]:
(static) -> (chgcar analysis) -> N x (relax) -> (return best structure)
- The workflow is:
[relax structure] [get_stable_inserted_structure] [get_stable_inserted_structure] [get_stable_inserted_structure] … until the insertion is no longer topotactic.
- This workflow requires the users to provide the following functions:
- self.get_charge_density(task_doc: TaskDoc):
Get the charge density of a TaskDoc output from a calculation.
- self.update_static_maker():
Ensure that the static maker will store the desired data.
- If you use this workflow please cite the following paper:
Shen, J.-X., Horton, M., & Persson, K. A. (2020). A charge-density-based general cation insertion algorithm for generating new Li-ion cathode materials. npj Computational Materials, 6(161), 1—7. doi: 10.1038/s41524-020-00422-3
- Variables:
name (str) – The name of the flow created by this maker.
relax_maker (RelaxMaker) – A maker to perform relaxation calculations.
bulk_relax_maker (Maker) – A separate maker to perform the first bulk relaxation calculation. If None, the relax_maker will be used.
static_maker (Maker) – A maker to perform static calculations.
structure_matcher (StructureMatcher) – The structure matcher to use to determine if additional insertion is needed.
- Parameters:
- make(structure, inserted_element, n_steps, insertions_per_step=4, working_ion_entry=None)[source]¶
Make the flow.
- Parameters:
structure (Structure) – Structure to insert ion into.
inserted_species – Species to insert.
n_steps (int) – The maximum number of sequential insertion steps to attempt.
insertions_per_step (int) – The maximum number of ion insertion sites to attempt.
inserted_element (ElementLike)
working_ion_entry (ComputedEntry | None)
- Return type:
Flow for ion insertion.