Measurement¶
Module to describe the detection of scattered electron waves.

class
abtem.measure.
Calibration
(offset, sampling, units, name='', endpoint=True, adjustable=True)[source]¶ Calibration object
The calibration object represents the sampling of a uniformly sampled Measurement.
 Parameters
offset (float) – The lower bound of the sampling points.
sampling (float) – The distance between sampling points.
units (str) – The units of the calibration shown in plots.
name (str) – The name of this calibration to be shown in plots.

class
abtem.measure.
Measurement
(array, calibrations=None, units='', name='', base_dimensions=2)[source]¶ Measurement object.
The measurement object is used for representing the output of a TEM simulation. For example a line profile, an image or a collection of diffraction patterns.
 Parameters
array (ndarray) – The array representing the measurements. The array can be any dimension.
calibrations (list of Calibration objects) – The calibration for each dimension of the measurement array.
units (str) – The units of the array values to be displayed in plots.
name (str) – The name of the array values to be displayed in plots.

property
array
¶ Array of measurements.
 Return type
ndarray

property
calibrations
¶ The measurement calibrations.
 Return type
Tuple
[Optional
[Calibration
]]

diffractograms
(axes=None, energy=None)[source]¶ Calculate the diffractograms of this measurement.
 Parameters
axes (list of int) – The axes to Fourier transform.
 Returns
 Return type

property
dimensions
¶ The measurement dimensions.
 Return type
int

gaussian_filter
(sigma, padding_mode='wrap')[source]¶ Apply gaussian filter to measurement.
 Parameters
sigma (float or sequence of float) – Standard deviation for Gaussian kernel. The standard deviations of the Gaussian filter are given for each axis as a sequence, or as a single number, in which case it is equal for all axes.
padding_mode (
str
) – The padding_mode parameter determines how the input array is padded at the border. Different modes can be specified along each axis. Default value is ‘wrap’.
 Returns
Blurred measurement.
 Return type

integrate
(start, end, axis= 1, interactive=False)[source]¶ Perform 1d integration measurement from e.g. the FlexibleAnnularDetector
 Parameters
start (float) – Lower limit of integral in units of the calibration of the given axis.
end (float) – Upper limit of integral in units of the calibration of the given axis.
axis (int) – The
 Returns
Integrated measurement.
 Return type

interpolate
(new_sampling=None, new_gpts=None, padding='wrap', kind=None, axes=None)[source]¶ Interpolate a 2d measurement.
 Parameters
new_sampling (one or two float, optional) – Target measurement sampling. Same units as measurement calibrations.
new_gpts (one or two int, optional) – Target measurement gpts.
padding (str, optional) – The padding mode as used by numpy.pad.
kind (str, optional) – The kind of spline interpolation to use. Default is ‘quintic’.
 Returns
Interpolated measurement
 Return type
Measurement object

interpolate_line
(start, end=None, angle=0.0, gpts=None, sampling=None, width=None, margin=0.0, endpoint=True, interpolation_method='splinef2d')[source]¶ Interpolate 2d measurement along a line.
 Parameters
start (two float, Atom) – Start point on line [Å].
end (two float, Atom, optional) – End point on line [Å].
angle (float, optional) – The angle of the line. This is only used when an “end” is not give.
gpts (int) – Number of grid points along line.
sampling (float) – Sampling rate of grid points along line [1 / Å].
width (float, optional) – The interpolation will be averaged across line of this width.
margin (float, optional) – The line will be extended by this amount at both ends.
interpolation_method (str, optional) – The interpolation method.
 Returns
Line profile measurement.
 Return type

mean
(axis)[source]¶ Mean of measurement elements over a given axis.
 Parameters
axis (int or tuple of ints) – Axis or axes along which a sum is performed. If axis is negative it counts from the last to the first axis.
 Returns
A measurement with the same shape, but with the specified axis removed.
 Return type
Measurement object

property
name
¶ The name of the array values to be displayed in plots.
 Return type
str

classmethod
read
(path)[source]¶ Read measurement from a hdf5 file.
 path: str
The path to read the file.
 Return type

save_as_image
(path)[source]¶ Write the measurement array to an image file. The array will be normalized and converted to 16bit integers.
 path: str
The path to write the file.

property
shape
¶ The shape of the measurement array.
 Return type
Tuple
[int
]

show
(ax=None, interact=False, **kwargs)[source]¶ Show the measurement.
 Parameters
kwargs – Additional keyword arguments for the abtem.plot.show_image function.

sum
(axis)[source]¶ Sum of measurement elements over a given axis.
 Parameters
axis (int or tuple of ints) – Axis or axes along which a sum is performed. If axis is negative it counts from the last to the first axis.
 Returns
A measurement with the same shape, but with the specified axis removed.
 Return type

tile
(multiples)[source]¶ Construct a measurement by repeating the measurement number of times given by multiples.
 Parameters
multiples (sequence of int) – The number of repetitions of the measurement along each axis.
 Returns
The tiled potential.
 Return type
Measurement object

to_hyperspy
(signal_type=None)[source]¶ Changes the Measurement object to a hyperspy.BaseSignal Object or a defined signal type.
 signal_type: str
The signal type alias for some signal type

property
units
¶ The units of the array values to be displayed in plots.
 Return type
str

abtem.measure.
bandlimit
(measurement, cutoff, taper=0.1, band_type='lowpass')[source]¶ Bandlimit a collection of diffraction patterns.
 Parameters
measurement (Measurement) – Collection of diffraction patterns.
cutoff (float) – The cutoff radius in mrad.
taper (float) – Taper the bandlimiting window to avoid a sharp cutoff.
 Returns
Bandlimited measurement.
 Return type

abtem.measure.
block_zeroth_order_spot
(diffraction_pattern, angular_radius=1)[source]¶ Set the zero’th order spot of a diffraction pattern to zero.
 Parameters
diffraction_pattern (Measurement) – Measurement representing one or more diffraction patterns.
angular_radius (float) – The radius of the diskshaped region set to zero.
 Returns
 Return type

abtem.measure.
calculate_fwhm
(probe_profile)[source]¶ Calculate the full width at half maximum of a 1d measurement, typically a probe profile.
 Parameters
probe_profile (Measurement) – Probe profile measurement.
 Returns
 Return type
float

abtem.measure.
calibrations_from_grid
(gpts, sampling, names=None, units=None, fourier_space=False, scale_factor=1.0)[source]¶ Returns the spatial calibrations for a given computational grid and sampling.
 Parameters
gpts (list of int) – Number of grid points in the x and y directions.
sampling (list of float) – Sampling of the potential in Å.
names (list of str, optional) – The name of this calibration.
units (str, optional) – Units for the calibration.
fourier_space (bool, optional) – Setting for calibrating either in the reciprocal or real space. Default is False.
scale_factor (float, optional) – Scaling factor for the calibration. Default is 1.0.
 Returns
calibrations
 Return type
Tuple of Calibrations

abtem.measure.
center_of_mass
(measurement, return_magnitude=False, return_icom=False)[source]¶ Calculate the center of mass of a measurement.
 Parameters
measurement (Measurement) – A collection of diffraction patterns.
return_icom (bool) – If true, return the integrated center of mass.
 Returns
 Return type

abtem.measure.
fourier_space_offset
(n, d)[source]¶ Calculate the calibration offset of a Fourier space measurement.
 Parameters
n (int) – Number of sampling points.
d (float) – Real space sampling density.

abtem.measure.
integrate_disc
(image, position, radius, return_mean=True, border='wrap', interpolate=0.01)[source]¶ Integrate the values of a 2d measurement on a discshaped region.
 Parameters
position (two floats) – Center of discshaped integration region
measurement (2d measurement) – The measurement to integrate
radius (float) – Radius of discshaped integration region
return_mean (bool) – If true return the mean, otherwise return the sum.
border (str) –
Specify how to treat integration regions that cross the image border. The valid values and their behaviour is: ‘wrap’
The measurement is extended by wrapping around to the opposite edge.
 ’raise’
Raise an error if the integration region crosses the measurement border.
interpolate (float or False) – The image will be interpolated to this sampling. Units of Angstrom.
 Returns
Integral value
 Return type
float

abtem.measure.
intgrad2d
(gradient, sampling=None)[source]¶ Perform Fourierspace integration of gradient.
 Parameters
gradient (two np.ndarrays) – The x and ycomponents of the gradient.
sampling (two float) – Lateral sampling of the gradients. Default is 1.0.
 Returns
Integrated center of mass measurement
 Return type
np.ndarray

abtem.measure.
probe_profile
(probe_measurement, angle=0.0)[source]¶ Return the profile of a probe given a 2d measurement of that probe.
 Parameters
probe_measurement (Measurement) – 2d measurement of the centered intensity of an electron probe.
angle (float) – The angle at which to interpolate the profile.
 Returns
1d measurement of the probe profile.
 Return type

abtem.measure.
rotational_average
(measurement)[source]¶ Calculate the rotational average of a measurement.
 Parameters
measurement (Measurement) – 2d measurement of calculate the rotational average from.
 Returns
1d rotational average of a 2d measurement.
 Return type