elastic
Elastic constants recipes for EMT.
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.