Sources#

class PlaneWaveSet#

Bases: BaseSourceSet

property amplitude#

Returns the amplitudes of the plane wave source set as a NumPy array with appropriate units.

property attributes#
static build_sequential(total_size: object = None, wavelength: object, polarization: PolarizationSet, amplitude: object) PyMieSim.experiment.source_set.PlaneWaveSet#

Construct a sequential PlaneWaveSourceSet by broadcasting scalar or single element inputs.

Parameters:
  • total_size (int or None) – Target size for broadcasting. If None, uses the maximum size among wavelength and amplitude.

  • wavelength (Quantity or array-like Quantity) – Wavelength(s). Scalars or length 1 arrays broadcast to total_size.

  • polarization (PolarizationSet) – Must have number_of_states equal to 1 or total_size.

  • amplitude (Quantity or array-like Quantity) – Amplitude(s). Scalars or length 1 arrays broadcast to total_size.

Returns:

Instance with is_sequential = True.

Return type:

PlaneWaveSourceSet

get_mapping(self: PyMieSim.experiment.source_set.PlaneWaveSet) dict#

Generates a mapping of source attributes to their corresponding values for the PlaneWaveSourceSet instance. The mapping includes keys such as ‘source:wavelength’, ‘source:polarization’, and ‘source:amplitude’.

property wavelength#

Returns the wavelengths of the plane wave source set as a NumPy array with appropriate units.

class GaussianSet#

Bases: BaseSourceSet

property attributes#
static build_sequential(total_size: object = None, wavelength: object, polarization: PolarizationSet, numerical_aperture: object, optical_power: object) PyMieSim.experiment.source_set.GaussianSet#

Construct a sequential GaussianSourceSet by broadcasting scalar or single element inputs.

Parameters:
  • total_size (int or None) – Target size for broadcasting. If None, uses the maximum size among wavelength, numerical_aperture, optical_power.

  • wavelength (Quantity or array-like Quantity) – Wavelength(s). Scalars or length 1 arrays broadcast to total_size.

  • polarization (PolarizationSet) – Must have number_of_states equal to 1 or total_size.

  • numerical_aperture (Quantity or array-like Quantity) – Numerical aperture(s). Scalars or length 1 arrays broadcast to total_size.

  • optical_power (Quantity or array-like Quantity) – Optical power(s). Scalars or length 1 arrays broadcast to total_size.

Returns:

Instance with is_sequential = True.

Return type:

GaussianSourceSet

get_mapping(self: PyMieSim.experiment.source_set.GaussianSet) dict#

Generates a mapping of source attributes to their corresponding values for the GaussianSourceSet instance. The mapping includes keys such as ‘source:wavelength’, ‘source:polarization’, ‘source:numerical_aperture’, and ‘source:optical_power’.

property numerical_aperture#

Returns the numerical apertures of the Gaussian source set as a NumPy array with appropriate units.

property optical_power#

Returns the optical powers of the Gaussian source set as a NumPy array with appropriate units.

property wavelength#

Returns the wavelengths of the Gaussian source set as a NumPy array with appropriate units.