-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
The workflow should be used in four steps: (1) create workflow class and initialise parameters, (2) generate structures by calling generate_structures()
, (3) evaluate structures with any external code, (4) analyse the computed results using analyse_structures()
. Here is an example to calculate an energy volume curve from the documentation
from ase.build import bulk
from atomistics.calculators import evaluate_with_lammps, get_potential_by_name
from atomistics.workflows import EnergyVolumeCurveWorkflow
potential_dataframe = get_potential_by_name(
potential_name='1999--Mishin-Y--Al--LAMMPS--ipr1'
)
workflow = EnergyVolumeCurveWorkflow(
structure=bulk("Al", cubic=True),
num_points=11,
fit_type="polynomial",
fit_order=3,
vol_range=0.05,
axes=("x", "y", "z"),
strains=None,
)
task_dict = workflow.generate_structures()
result_dict = evaluate_with_lammps(
task_dict=task_dict,
potential_dataframe=potential_dataframe,
)
fit_dict = workflow.analyse_structures(output_dict=result_dict)
print(fit_dict)
To encourage this behaviour the workflow should not have any public facing properties.
Metadata
Metadata
Assignees
Labels
No labels