Surface Binding Energy¶
SBEAnalyzer
¶
SBEAnalyzer(
max_index: int = 1,
min_slab_size: float = 10.0,
min_vacuum_size: float = 10.0,
height: float = 1.0,
supercell_size: list[int] | None = None,
calculator: BaseCalculator | None = None,
sbe_transformation: SBETransformation | None = None,
)
A class used to compute surface binding energies (SBE) for a bulk structure.
Initializes the SBEAnalyzer object.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
max_index
|
int
|
Maximum Miller index to consider when generating slabs. Defaults to 1. |
1
|
min_slab_size
|
float
|
Minimum slab thickness in Angstroms for slab generation. Defaults to 10.0. |
10.0
|
min_vacuum_size
|
float
|
Minimum vacuum size in Angstroms for slab generation. Defaults to 10.0. |
10.0
|
height
|
float
|
Height above the surface, in Angstroms, used to identify surface atoms. Defaults to 1.0. |
1.0
|
supercell_size
|
list[int] | None
|
Supercell replication factors used when building the
slab supercell for vacancy calculations. Defaults to |
None
|
calculator
|
BaseCalculator | None
|
The calculator used for energy calculations. Defaults to a lazily constructed default calculator. |
None
|
sbe_transformation
|
SBETransformation | None
|
The transformation object used to generate
slabs, supercells, vacancy structures, and isolated-atom references. If not provided, a new
instance is initialized from |
None
|
calculate
¶
Calculates the surface binding energy (SBE) for a given bulk structure.
Every energy/metadata collection below is a flat list of uniform dicts, joinable on
miller_index/termination_index/site_index. Structure objects are kept out of
these records and returned separately under structures, keyed the same way, so the main
result stays small and easy to hand to e.g. pandas.DataFrame.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
structure
|
Structure | Atoms
|
The bulk structure to be analyzed. |
required |
is_relaxed
|
bool
|
Whether the input structure is already relaxed. Defaults to False. |
False
|
Returns:
| Type | Description |
|---|---|
dict[str, Any]
|
dict[str, Any]: A dictionary with the following keys:
- |
Raises:
| Type | Description |
|---|---|
ValueError
|
If the calculator does not implement the 'energy' property, or if no slabs were generated for the given structure and parameters. |
sbe_transformation
¶
Returns the transformation object used to generate slabs, supercells, and vacancy structures.
Returns:
| Name | Type | Description |
|---|---|---|
SBETransformation |
SBETransformation
|
The transformation object used to generate structures. |