Elastic
Elastic constants recipes for MLIPs.
elastic_tensor_flow ¶
elastic_tensor_flow(
atoms: Atoms,
pre_relax: bool = True,
run_static: bool = False,
deform_kwargs: dict[str, Any] | None = None,
job_params: dict[str, dict[str, Any]] | None = None,
job_decorators: (
dict[str, Callable | None] | None
) = None,
) -> ElasticSchema
Workflow consisting of:
-
Bulk structure relaxation (if pre_relax is True)
- name: "relax_job"
- job: quacc.recipes.emt.core.relax_job
-
Bulk structure static calculation (if run_static is True)
- name: "static_job"
- job: quacc.recipes.emt.core.static_job
-
Deformed structures generation
-
Deformed structures relaxations
- name: "relax_job"
- job: quacc.recipes.emt.core.relax_job
-
Deformed structures statics (if run_static is True)
- name: "static_job"
- job: quacc.recipes.emt.core.static_job
-
Elastic tensor calculation
Parameters:
-
atoms(Atoms) –Atoms object
-
pre_relax(bool, default:True) –Whether to run a relaxation on the structure before deformation (true)
-
run_static(bool, default:False) –Whether to run static calculations after any relaxations on the undeformed or deformed structures
-
deform_kwargs(dict[str, Any] | None, default:None) –Additional keyword arguments to pass to quacc.atoms.deformation.make_deformations_from_bulk
-
job_params(dict[str, dict[str, Any]] | None, default:None) –Custom parameters to pass to each Job in the Flow. This is a dictionary where the keys are the names of the jobs and the values are dictionaries of parameters.
-
job_decorators(dict[str, Callable | None] | None, default:None) –Custom decorators to apply to each Job in the Flow. This is a dictionary where the keys are the names of the jobs and the values are decorators.
Returns:
-
ElasticSchema–See the return type-hint for the data structure.