TemporalEnvelope#

class abtem.transfer.TemporalEnvelope(focal_spread, energy=None, extent=None, gpts=None, sampling=None)[source]#

Bases: abtem.transfer.BaseTransferFunction

Envelope function for simulating partial temporal coherence in the quasi-coherent approximation.

Parameters
  • focal_spread (float or 1D array or BaseDistribution) – The standard deviation of the focal spread due to chromatic aberration and lens current instability [Å]. Alternatively, a distribution of values may be provided.

  • energy (float, optional) – Electron energy [eV]. If not provided, inferred from the wave functions.

  • extent (float or two float, optional) – Lateral extent of wave functions [Å] in x and y directions. If a single float is given, both are set equal.

  • gpts (two ints, optional) – Number of grid points describing the wave functions.

  • sampling (two float, optional) – Lateral sampling of wave functions [1 / Å]. If ‘gpts’ is also given, will be ignored.

__init__(focal_spread, energy=None, extent=None, gpts=None, sampling=None)[source]#

Methods

__init__(focal_spread[, energy, extent, ...])

apply(waves)

Apply the transform to the given waves.

copy()

Make a copy.

ensemble_blocks([chunks])

Split the ensemble into an array of smaller ensembles.

generate_blocks([chunks])

Generate chunks of the ensemble.

match_grid(other[, check_match])

Match the grid to another object with a Grid.

select_block(index, chunks)

Select a block from the ensemble.

show(**kwargs)

to_diffraction_patterns([max_angle, gpts])

Attributes

accelerator

Accelerator object describing the acceleration energy.

angular_sampling

The sampling in scattering angles of the transfer function [mrad].

axes_metadata

List of AxisMetadata.

base_axes_metadata

List of AxisMetadata of the base axes.

base_shape

Shape of the base axes.

distributions

energy

Electron acceleration energy in electron volts.

ensemble_axes_metadata

Axes metadata describing the ensemble axes added to the waves when applying the transform.

ensemble_shape

The shape of the ensemble axes added to the waves when applying the transform.

extent

Extent of grid for each dimension in Ångstrom.

focal_spread

The standard deviation of the focal spread [Å].

gpts

Number of grid points for each dimension.

grid

Simulation grid.

in_place

The array representing the waves may be modified in-place.

metadata

Metadata added to the waves when applying the transform.

reciprocal_space_sampling

Reciprocal-space sampling in reciprocal Ångstrom.

sampling

Grid sampling for each dimension in Ångstrom per grid point.

shape

Shape of the ensemble.

wavelength

Relativistic wavelength in Ångstrom.

property accelerator: abtem.core.energy.Accelerator#

Accelerator object describing the acceleration energy.

Return type

Accelerator

property angular_sampling: tuple[float, float]#

The sampling in scattering angles of the transfer function [mrad].

Return type

tuple[float, float]

apply(waves)#

Apply the transform to the given waves.

Parameters

array_object (ArrayObject) – The array object to transform.

Returns

transformed_array_object

Return type

ArrayObject

property axes_metadata: abtem.core.axes.AxesMetadataList#

List of AxisMetadata.

Return type

AxesMetadataList

property base_axes_metadata: list[abtem.core.axes.AxisMetadata]#

List of AxisMetadata of the base axes.

Return type

list[AxisMetadata]

property base_shape: tuple[int, ...]#

Shape of the base axes.

Return type

tuple[int, ...]

copy()#

Make a copy.

property energy#

Electron acceleration energy in electron volts.

property ensemble_axes_metadata: list[abtem.core.axes.AxisMetadata]#

Axes metadata describing the ensemble axes added to the waves when applying the transform.

Return type

list[AxisMetadata]

ensemble_blocks(chunks=None)#

Split the ensemble into an array of smaller ensembles.

Parameters

chunks (iterable of tuples) – Block sizes along each dimension.

Return type

Array

property ensemble_shape#

The shape of the ensemble axes added to the waves when applying the transform.

property extent: tuple[float] | tuple[float, float] | tuple[float, ...]#

Extent of grid for each dimension in Ångstrom.

Return type

tuple[float] | tuple[float, float] | tuple[float, …]

property focal_spread#

The standard deviation of the focal spread [Å].

generate_blocks(chunks=1)#

Generate chunks of the ensemble.

Parameters

chunks (iterable of tuples) – Block sizes along each dimension.

property gpts: tuple[int] | tuple[int, int] | tuple[int, ...]#

Number of grid points for each dimension.

Return type

tuple[int] | tuple[int, int] | tuple[int, …]

property grid: abtem.core.grid.Grid#

Simulation grid.

Return type

Grid

property in_place: bool#

The array representing the waves may be modified in-place.

Return type

bool

match_grid(other, check_match=False)#

Match the grid to another object with a Grid.

property metadata: dict#

Metadata added to the waves when applying the transform.

Return type

dict

property reciprocal_space_sampling: tuple[float] | tuple[float, float] | tuple[float, ...]#

Reciprocal-space sampling in reciprocal Ångstrom.

Return type

tuple[float] | tuple[float, float] | tuple[float, …]

property sampling: tuple[float] | tuple[float, float] | tuple[float, ...]#

Grid sampling for each dimension in Ångstrom per grid point.

Return type

tuple[float] | tuple[float, float] | tuple[float, …]

select_block(index, chunks)#

Select a block from the ensemble.

Parameters
  • index (tuple of ints) – Index of selected block.

  • chunks (iterable of tuples) – Block sizes along each dimension.

property shape#

Shape of the ensemble.

property wavelength#

Relativistic wavelength in Ångstrom.