Skip to content

Z Binned Strain Using Top Bottom Atoms Analysis

Compute robust z-binned geometric strain from top/bottom atom spans.

The analyzer compares per-bin coordinate spans against frame zero. Each span uses averages of the largest and smallest selected coordinates, which reduces sensitivity to a single extreme atom. File loading and output rendering remain workflow responsibilities.

Usage context

  • Slab deformation: Track normal strain profiles through material thickness.
  • Robust geometry: Reduce sensitivity to noisy extrema with atom-set averages.

Request: ZBinnedTopBottomStrainRequest

Request configuration for robust z-binned span strain.

Fields

Field Type Default Help Choices
z_bins int 20 Number of equal-width z bins.
atom_types Optional[Sequence[str]] Al, N Elements to include; empty selects all atoms.
bin_range str reference Fixed reference or current-frame z bins. reference, current
n_extreme_atoms int 5 Atoms averaged at each coordinate extreme.
selected_frames Optional[Sequence[int]] Zero-based frames to report.
every int 1 Stride over selected frames.
unwrap bool True Cumulatively unwrap periodic coordinates.
periodic str xyz Periodic axes, such as xy or xyz. none, x, y, z, xy, xz, yz, xyz
zero_tolerance float 1e-12 Smallest usable reference span.

Examples

`ZBinnedTopBottomStrainRequest(z_bins=20, atom_types=("Al", "N"), periodic="xy")`
This configures fixed reference bins for an xy-periodic slab.

Task: ZBinnedTopBottomStrainTask

Run robust top/bottom span strain analysis on canonical trajectories.

Return table and normal-strain profile presentation specifications.

Works on

Analyzer task output payloads.

Parameters

Name Type Description
_result ZBinnedTopBottomStrainResult Typed analyzer result.
payload dict[str, Any] Serialized result payload.

Returns

Type Description
list[PresentationSpec] Table and strain-versus-z plot specifications.

Examples

`ZBinnedTopBottomStrainTask.recommended_presentations(result, payload)`
returns standard views for downstream presentation dispatch.

Method: run(data: TrajectoryData, request: ZBinnedTopBottomStrainRequest, reporter=None)

Execute robust top/bottom span strain analysis.

Works on

TrajectoryData plus ZBinnedTopBottomStrainRequest analyzer inputs.

Parameters

Name Type Description
data TrajectoryData Canonical trajectory data.
request ZBinnedTopBottomStrainRequest Analysis configuration.
reporter Any, optional Progress reporter accepted by the analyzer interface.

Returns

Type Description
ZBinnedTopBottomStrainResult Computed table and request provenance.

Examples

`ZBinnedTopBottomStrainTask().run(data, request)` returns one row per
selected frame and z bin.

Result: ZBinnedTopBottomStrainResult

Result of robust z-binned span strain analysis.

Fields

Field Type Default Help Choices
table pd.DataFrame
request ZBinnedTopBottomStrainRequest

Examples

`ZBinnedTopBottomStrainResult(table=<DataFrame>, request=request)` stores
both computed values and their provenance.