Detectors#
- class PhotodiodeSet#
Bases:
BaseDetectorSetSet of photodiode detectors.
A
PhotodiodeSetstores one or more intensity based detectors defined by their numerical aperture, angular offsets, sampling, optional polarization filtering, and surrounding medium.- attributes = ['sampling', 'numerical_aperture', 'cache_numerical_aperture', 'phi_offset', 'gamma_offset', 'polarization_filter', 'medium']#
- static build_sequential(target_size: typing.SupportsInt | typing.SupportsIndex, numerical_aperture: object, phi_offset: object, gamma_offset: object, sampling: object = 200, cache_numerical_aperture: object = 0.0, polarization_filter: object = <PyMieSim.polarization.PolarizationState object at 0x7fe8150db7b0>, medium: object = 1) PyMieSim.experiment.detector_set.PhotodiodeSet#
Build a sequential photodiode detector set.
Scalar inputs or length one arrays are broadcast to
target_size. Any non scalar input must already have lengthtarget_size.- Parameters:
target_size (int) – Number of detectors in the sequential set.
numerical_aperture (float or array-like of float) – Numerical aperture of each detector.
phi_offset (Angle or array-like of Angle) – Azimuthal offset of each detector.
gamma_offset (Angle or array-like of Angle) – Polar offset of each detector.
sampling (int or array-like of int, optional) – Number of angular sampling points used to evaluate each detector. Default is
200.cache_numerical_aperture (float or array-like of float, optional) – Numerical aperture used for cached field evaluation. Default is
0.0.polarization_filter (Angle or array-like of Angle, optional) – Polarization analyzer angle. If
None, the filter is disabled for all detectors.medium (BaseMedium, MediumSet, float, or array-like, optional) – Surrounding medium. This can be provided either as medium objects or as refractive index values. Default is
ConstantMedium(1.0).
- Returns:
Detector set with
is_sequential = True.- Return type:
- property cache_numerical_aperture#
Cached numerical aperture associated with each detector.
- property gamma_offset#
Polar offset of each detector.
- get_mapping(self: PyMieSim.experiment.detector_set.PhotodiodeSet) dict#
Return detector parameters as a dictionary.
The returned mapping is formatted for PyMieSim parameter tracking and dataframe generation. Keys follow the
detector:<parameter_name>convention.
- property numerical_aperture#
Numerical aperture of each detector.
- property phi_offset#
Azimuthal offset of each detector.
- property sampling#
Sampling point count for each detector.
- class CoherentModeSet#
Bases:
BaseDetectorSetSet of coherent mode detectors.
A
CoherentModeSetstores one or more detectors used for coherent mode coupling calculations. Each detector is defined by its mode label, numerical aperture, angular offsets, rotation, optional polarization filtering, and surrounding medium.- attributes = ['mode_numbers', 'sampling', 'numerical_aperture', 'cache_numerical_aperture', 'phi_offset', 'gamma_offset', 'polarization_filter', 'rotation', 'medium']#
- static build_sequential(target_size: typing.SupportsInt | typing.SupportsIndex, mode_number: object, numerical_aperture: object, phi_offset: object, gamma_offset: object, rotation: object, cache_numerical_aperture: object = 0.0, sampling: object = 200, polarization_filter: object = <PyMieSim.polarization.PolarizationState object at 0x7fe8150d8fb0>, medium: object = 1, mean_coupling: bool = False) PyMieSim.experiment.detector_set.CoherentModeSet#
Build a sequential coherent mode detector set.
Scalar inputs or length one arrays are broadcast to
target_size. Any non scalar input must already have lengthtarget_size.- Parameters:
target_size (int) – Number of detectors in the sequential set.
mode_number (str or array-like of str) – Mode label or labels defining the collected coherent mode.
numerical_aperture (float or array-like of float) – Numerical aperture of each detector.
phi_offset (Angle or array-like of Angle) – Azimuthal offset of each detector.
gamma_offset (Angle or array-like of Angle) – Polar offset of each detector.
rotation (Angle or array-like of Angle) – Rotation of the detector mode basis.
cache_numerical_aperture (float or array-like of float, optional) – Numerical aperture used for cached field evaluation. Default is
0.0.sampling (int or array-like of int, optional) – Number of angular sampling points used to evaluate each detector. Default is
200.polarization_filter (Angle or array-like of Angle, optional) – Polarization analyzer angle. If
None, the filter is disabled for all detectors.medium (BaseMedium, MediumSet, float, or array-like, optional) – Surrounding medium. This can be provided either as medium objects or as refractive index values. Default is
ConstantMedium(1.0).mean_coupling (bool, optional) – If
True, use mean coupling rather than mode resolved coupling. Default isFalse.
- Returns:
Detector set with
is_sequential = True.- Return type:
- property cache_numerical_aperture#
Cached numerical aperture associated with each detector.
- property coherent#
Flag indicating that this detector set performs coherent detection.
- property gamma_offset#
Polar offset of each detector.
- get_mapping(self: PyMieSim.experiment.detector_set.CoherentModeSet) dict#
Return detector parameters as a dictionary.
The returned mapping is formatted for PyMieSim parameter tracking and dataframe generation. Keys follow the
detector:<parameter_name>convention.
- property mean_coupling#
Whether mean coupling is used.
- property medium#
Surrounding medium associated with the detector set.
- property mode_numbers#
Mode labels associated with each detector.
- property numerical_aperture#
Numerical aperture of each detector.
- property phi_offset#
Azimuthal offset of each detector.
- property polarization_filter#
Polarization filter angle for each detector.
Returns
Nonewhen no polarization filter is defined.
- property rotation#
Rotation of the detector mode basis.
- property sampling#
Sampling point count for each detector.