Scatterers#
- class Sphere(*, source, medium_property, diameter, property)[source]#
Bases:
BaseScatterer
A data class that represents a spherical scatterer configuration used in PyMieSim simulations.
This class provides specific implementations for setting up and binding spherical scatterers with their properties to a simulation environment. It extends the BaseScatterer class by adding spherical-specific attributes and methods for handling simulation setups.
- Parameters:
source (PyMieSim.experiment.source.base.BaseSource) – Light source configuration for the simulation.
diameter (Quantity) – Diameter(s) of the spherical scatterers in meters.
property (List[BaseMaterial] | List[Quantity]) – Refractive index or indices of the spherical scatterers themselves.
medium_property (List, optional) – BaseMaterial(s) defining the medium, used if medium_index is not provided.
- 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']#
- binding = None#
- binding_kwargs = None#
- diameter: Quantity#
- mapping = None#
- medium_property: List[BaseMaterial] | List[Quantity]#
- property: List[BaseMaterial] | List[Quantity]#
- source: BaseSource#
- class Cylinder(*, source, medium_property, diameter, property)[source]#
Bases:
BaseScatterer
Represents a cylindrical scatterer configuration for PyMieSim simulations.
- Parameters:
source (PyMieSim.experiment.source.base.BaseSource) – Light source configuration for the simulation.
diameter (Quantity) – Diameter(s) of the cylinder in meters.
property (List[BaseMaterial] | List[Quantity]) – Refractive index or indices of the spherical scatterers themselves.
medium_property (List[BaseMaterial] | List[Quantity]) – BaseMaterial(s) defining the medium, used if medium_index is not provided.
- available_measure_list = ['Qsca', 'Qext', 'Qabs', 'Csca', 'Cext', 'Cabs', 'a11', 'a21', 'a12', 'a22', 'a13', 'a23', 'b11', 'b21', 'b12', 'b22', 'b13', 'b23', 'coupling']#
- binding = None#
- binding_kwargs = None#
- diameter: Quantity#
- mapping = None#
- medium_property: List[BaseMaterial] | List[Quantity]#
- property: List[BaseMaterial] | List[Quantity]#
- source: BaseSource#
- class CoreShell(*, source, medium_property, core_diameter, shell_thickness, core_property, shell_property)[source]#
Bases:
BaseScatterer
A data class representing a core-shell scatterer configuration used in PyMieSim simulations.
This class facilitates the setup and manipulation of core-shell scatterers by providing structured attributes and methods that ensure the scatterers are configured correctly for simulations. It extends the BaseScatterer class, adding specific attributes and methods relevant to core-shell geometries.
- Parameters:
source (PyMieSim.experiment.source.base.BaseSource) – Light source configuration for the simulation.
core_diameter (Quantity) – Diameters of the core components.
shell_thickness (Quantity) – Thicknesses of the shell components.
core_property (List[BaseMaterial] | List[Quantity]) – Refractive index or indices of the core.
shell_property (List[BaseMaterial] | List[Quantity]) – Refractive index or indices of the shell.
medium_property (List[BaseMaterial] | List[Quantity]) – BaseMaterial(s) defining the medium, used if medium_index is not provided.
- 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']#
- binding = None#
- binding_kwargs = None#
- core_diameter: Quantity#
- core_property: List[BaseMaterial] | List[Quantity]#
- mapping = None#
- medium_property: List[BaseMaterial] | List[Quantity]#
- shell_property: List[BaseMaterial] | List[Quantity]#
- shell_thickness: Quantity#
- source: BaseSource#