Detectors¶
Module for describing the detection of transmitted waves and different detector types.
-
class
abtem.detect.
AbstractDetector
(max_detected_angle=None, save_file=None)[source]¶ Abstract base class for all detectors.
-
property
save_file
¶ The path to the file for saving the detector output.
- Return type
str
-
property
-
class
abtem.detect.
AnnularDetector
(inner, outer, offset=None, save_file=None)[source]¶ Annular detector object.
The annular detector integrates the intensity of the detected wave functions between an inner and outer integration limit.
- Parameters
inner (float) – Inner integration limit [mrad].
outer (float) – Outer integration limit [mrad].
offset (two float, optional) – Center offset of integration region [mrad].
save_file (str, optional) – The path to the file for saving the detector output.
-
allocate_measurement
(waves, scan=None)¶ Allocate a Measurement object or an hdf5 file.
- Parameters
waves (Waves object) – An example of the
scan (Scan object) – The scan object that will define the scan dimensions the measurement.
- Returns
The allocated measurement or path to hdf5 file with the measurement data.
- Return type
Measurement object or str
-
detect
(waves)[source]¶ Integrate the intensity of a the wave functions over the detector range.
- Parameters
waves (Waves object) – The batch of wave functions to detect.
- Returns
Detected values as a 1D array. The array has the same length as the batch size of the wave functions.
- Return type
1d array
-
property
inner
¶ Inner integration limit [mrad].
- Return type
float
-
integrate
(diffraction_patterns)[source]¶ Integrate diffraction pattern measurements on the detector region.
- Parameters
diffraction_patterns (2d, 3d or 4d Measurement object) – The collection diffraction patterns to be integrated.
- Returns
- Return type
-
property
outer
¶ Outer integration limit [mrad].
- Return type
float
-
property
save_file
¶ The path to the file for saving the detector output.
- Return type
str
-
show
(waves, **kwargs)¶ Visualize the detector region(s) of the detector as applied to a specified wave function.
- Parameters
waves (Waves or SMatrix object) – The wave function the visualization will be created to match
kwargs – Additional keyword arguments for abtem.visualize.mpl.show_measurement_2d.
-
class
abtem.detect.
FlexibleAnnularDetector
(step_size=1.0, save_file=None)[source]¶ Flexible annular detector object.
The FlexibleAnnularDetector object allows choosing the integration limits after running the simulation by radially binning the intensity.
- Parameters
step_size (float) – The radial separation between integration regions [mrad].
save_file (str) – The path to the file used for saving the detector output.
-
allocate_measurement
(waves, scan=None)¶ Allocate a Measurement object or an hdf5 file.
- Parameters
waves (Waves object) – An example of the
scan (Scan object) – The scan object that will define the scan dimensions the measurement.
- Returns
The allocated measurement or path to hdf5 file with the measurement data.
- Return type
Measurement object or str
-
detect
(waves)[source]¶ Integrate the intensity of a the wave functions over the detector range.
- Parameters
waves (Waves object) – The batch of wave functions to detect.
- Returns
Detected values. The array has shape of (batch size, number of bins).
- Return type
2d array
-
property
save_file
¶ The path to the file for saving the detector output.
- Return type
str
-
show
(waves, **kwargs)¶ Visualize the detector region(s) of the detector as applied to a specified wave function.
- Parameters
waves (Waves or SMatrix object) – The wave function the visualization will be created to match
kwargs – Additional keyword arguments for abtem.visualize.mpl.show_measurement_2d.
-
property
step_size
¶ Step size [mrad].
- Return type
float
-
class
abtem.detect.
PixelatedDetector
(max_angle='valid', resample=False, mode='intensity', save_file=None)[source]¶ Pixelated detector object.
The pixelated detector records the intensity of the Fourier-transformed exit wavefunction. This may be used for example for simulating 4D-STEM.
- Parameters
max_angle (str or float or None) – The diffraction patterns will be detected up to this angle. If set to a string it must be ‘limit’ or ‘valid’
resample ('uniform' or False) – If ‘uniform’, the diffraction patterns from rectangular cells will be downsampled to a uniform angular sampling.
mode ('intensity' or 'complex') –
save_file (str) – The path to the file used for saving the detector output.
-
allocate_measurement
(waves, scan=None)[source]¶ Allocate a Measurement object or an hdf5 file.
- Parameters
waves (Waves or SMatrix object) – The wave function that will define the shape of the diffraction patterns.
scan (Scan object) – The scan object that will define the scan dimensions the measurement.
- Returns
The allocated measurement or path to hdf5 file with the measurement data.
- Return type
Measurement object or str
-
detect
(waves)[source]¶ Calculate the far field intensity of the wave functions. The output is cropped to include the non-suppressed frequencies from the antialiased 2D fourier spectrum.
- Parameters
waves (Waves object) – The batch of wave functions to detect.
- Return type
ndarray
- Returns
Detected values. The first dimension indexes the batch size, the second and third indexes the two components
of the spatial frequency.
-
property
save_file
¶ The path to the file for saving the detector output.
- Return type
str
-
class
abtem.detect.
SegmentedDetector
(inner, outer, nbins_radial, nbins_angular, rotation=0.0, save_file=None)[source]¶ Segmented detector object.
The segmented detector covers an annular angular range, and is partitioned into several integration regions divided to radial and angular segments. This can be used for simulating differential phase contrast (DPC) imaging.
- Parameters
inner (float) – Inner integration limit [mrad].
outer (float) – Outer integration limit [mrad].
nbins_radial (int) – Number of radial bins.
nbins_angular (int) – Number of angular bins.
save_file (str) – The path to the file used for saving the detector output.
-
allocate_measurement
(waves, scan=None)¶ Allocate a Measurement object or an hdf5 file.
- Parameters
waves (Waves object) – An example of the
scan (Scan object) – The scan object that will define the scan dimensions the measurement.
- Returns
The allocated measurement or path to hdf5 file with the measurement data.
- Return type
Measurement object or str
-
detect
(waves)[source]¶ Integrate the intensity of a the wave functions over the detector range.
- Parameters
waves (Waves object) – The batch of wave functions to detect.
- Returns
Detected values. The first dimension indexes the batch size, the second and third indexes the radial and angular bins, respectively.
- Return type
3d array
-
property
inner
¶ Inner integration limit [mrad].
- Return type
float
-
property
nbins_angular
¶ Number of angular bins.
- Return type
int
-
property
nbins_radial
¶ Number of radial bins.
- Return type
int
-
property
outer
¶ Outer integration limit [mrad].
- Return type
float
-
property
save_file
¶ The path to the file for saving the detector output.
- Return type
str
-
show
(waves, **kwargs)¶ Visualize the detector region(s) of the detector as applied to a specified wave function.
- Parameters
waves (Waves or SMatrix object) – The wave function the visualization will be created to match
kwargs – Additional keyword arguments for abtem.visualize.mpl.show_measurement_2d.
-
class
abtem.detect.
WavefunctionDetector
(save_file=None)[source]¶ Wave function detector object
The wave function detector records the raw exit wave functions.
- Parameters
save_file (str) – The path to the file used for saving the detector output.
-
allocate_measurement
(waves, scan)[source]¶ Allocate a Measurement object or an hdf5 file.
- Parameters
waves (Waves or SMatrix object) – The wave function that will define the shape of the diffraction patterns.
scan (Scan object) – The scan object that will define the scan dimensions the measurement.
- Returns
The allocated measurement or path to hdf5 file with the measurement data.
- Return type
Measurement object or str
-
detect
(waves)[source]¶ Detect the complex wave function.
- Parameters
waves (Waves object) – The batch of wave functions to detect.
- Returns
The arrays of the Waves object.
- Return type
3d complex array
-
property
save_file
¶ The path to the file for saving the detector output.
- Return type
str