Scatterers#

class SphereSet#

Bases: BaseScattererSet

attributes = ['diameter', 'material', 'medium']#
available_measure_list = ['Qsca', 'Qext', 'Qabs', 'Qratio', 'Qforward', 'Qback', 'Qpr', 'Csca', 'Cext', 'Cabs', 'Cratio', 'Cforward', 'Cback', 'Cpr', 'a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'g', 'coupling']#
static build_sequential(total_size: SupportsInt | SupportsIndex, diameter: object, material: object, medium: object) PyMieSim.experiment.scatterer_set.SphereSet#

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

Parameters:
  • total_size (int or None) – Target size for broadcasting. If None, uses the size of the diameter vector after conversion.

  • diameter (Quantity or array-like Quantity) – Diameter(s) of the spheres. Scalars or length 1 arrays broadcast to total_size.

  • material (List[BaseMaterial] | List[RefractiveIndex]) – Refractive index or indices of the spherical scatterers themselves.

  • medium (List, optional) – BaseMaterial(s) defining the medium, used if medium_index is not provided.

Returns:

Instance with is_sequential = True.

Return type:

SphereSet

property diameter#
get_mapping(self: PyMieSim.experiment.scatterer_set.SphereSet) dict#

Generates a mapping of scatterer attributes to their corresponding values for the SphereSet instance. The mapping includes keys such as ‘scatterer:diameter’, ‘scatterer:material’, and ‘scatterer:medium’.

property is_sequential#
property material#
property medium#
class InfiniteCylinderSet#

Bases: BaseScattererSet

attributes = ['diameter', 'material', 'medium']#
available_measure_list = ['Qsca', 'Qext', 'Qabs', 'Csca', 'Cext', 'Cabs', 'a11', 'a21', 'a12', 'a22', 'a13', 'a23', 'b11', 'b21', 'b12', 'b22', 'b13', 'b23', 'coupling']#
static build_sequential(total_size: SupportsInt | SupportsIndex, diameter: object, material: object, medium: object) PyMieSim.experiment.scatterer_set.InfiniteCylinderSet#

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

Parameters:
  • total_size (int or None) – Target size for broadcasting. If None, uses the size of the diameter vector after conversion.

  • diameter (Quantity or array-like Quantity) – Diameter(s) of the cylinders. Scalars or length 1 arrays broadcast to total_size.

  • material (List[BaseMaterial] | List[RefractiveIndex]) – Refractive index or indices of the cylindrical scatterers themselves.

  • medium (List, optional) – BaseMaterial(s) defining the medium, used if medium_index is not provided.

Returns:

Instance with is_sequential = True.

Return type:

InfiniteCylinderSet

property diameter#
get_mapping(self: PyMieSim.experiment.scatterer_set.InfiniteCylinderSet) dict#

Generates a mapping of scatterer attributes to their corresponding values for the InfiniteCylinderSet instance. The mapping includes keys such as ‘scatterer:diameter’, ‘scatterer:refractive_index’, and ‘scatterer:medium_refractive_index’.

property is_sequential#
property material#
property medium#
class CoreShellSet#

Bases: BaseScattererSet

attributes = ['core_diameter', 'shell_thickness', 'core_material', 'shell_material', 'medium']#
available_measure_list = ['Qsca', 'Qext', 'Qabs', 'Qratio', 'Qforward', 'Qback', 'Qpr', 'Csca', 'Cext', 'Cabs', 'Cratio', 'Cforward', 'Cback', 'Cpr', 'a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'g', 'coupling']#
static build_sequential(total_size: SupportsInt | SupportsIndex, core_diameter: object, shell_thickness: object, core_material: object, shell_material: object, medium: object) PyMieSim.experiment.scatterer_set.CoreShellSet#

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

Parameters:
  • total_size (int or None) – Target size for broadcasting. If None, uses the size of the core_diameter vector after conversion.

  • core_diameter (Quantity or array-like Quantity) – Diameter(s) of the core. Scalars or length 1 arrays broadcast to total_size.

  • shell_thickness (Quantity or array-like Quantity) – Thickness(es) of the shell. Scalars or length 1 arrays broadcast to total_size.

  • core_material (List[BaseMaterial] | List[RefractiveIndex]) – Refractive index or indices of the core.

  • shell_material (List[BaseMaterial] | List[RefractiveIndex]) – Refractive index or indices of the shell.

  • medium (List, optional) – BaseMaterial(s) defining the medium, used if medium_index is not provided.

Returns:

Instance with is_sequential = True.

Return type:

CoreShellSet

property core_diameter#
property core_material#
get_mapping(self: PyMieSim.experiment.scatterer_set.CoreShellSet) dict#

Generates a mapping of scatterer attributes to their corresponding values for the CoreShellSet instance. The mapping includes keys such as ‘scatterer:core_diameter’, ‘scatterer:shell_thickness’, ‘scatterer:core_material’, ‘scatterer:shell_material’, and ‘scatterer:medium_refractive_index’.

property is_sequential#
property medium#
property shell_material#
property shell_thickness#