4.12.1.4. singleScattering.scatterer¶
scattering.scatterer.py
Copyright (C) 2017 - 2018 Davide Ori dori@uni-koeln.de Institute for Geophysics and Meteorology - University of Cologne
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
This module implements the scatterer class which is the parent class for all of the specific scattering models. The parent scatterer class is intended to provide an abstraction layer or a common interface to the various scattering models.
4.12.1.4.1. Module Contents¶
4.12.1.4.1.1. Classes¶
Parent Scatterer class from which every scattering method inherits |
|
Parent Scatterer class from which every scattering method inherits |
|
Parent Scatterer class from which every scattering method inherits |
|
Parent Scatterer class from which every scattering method inherits |
|
Parent Scatterer class from which every scattering method inherits |
4.12.1.4.1.2. Attributes¶
- class Scatterer(diameter=1.0, frequency=None, wavelength=None, refractive_index=None, dielectric_permittivity=None, alpha=0.0, beta=0.0, theta_inc=0.0, theta_sca=0.0, phi_inc=0.0, phi_sca=0.0, aspect_ratio=1, volume=-99)[source]¶
Bases:
objectParent Scatterer class from which every scattering method inherits
- diameter¶
Equivalent size of the target in meters. The user should know how to properly define it.
- frequency, wavelength
The frequency [Hz] or the wavelength [meters] of incident light, see set_electromagnetic_wave function for details.
- refractive_index, dielectric_permittivity
The refractive index or the relative dielectric permittivity of the scattering target, see set_dielectric_properties for further details
- alpha, beta, gamma
Euler angles of the particle orientation… … still do not know if I need all of them
- theta_inc, theta_sca
- phi_inc, phi_sca
- set_electromagnetic_wave(self, wavelength, frequency)[source]¶
Convenience setter of the properties of the incoming electromagnetic wave
This setter function resolve the ambiguity of specifing either wavelength or the frequency which should not be set indipendently in orderto avoid internal inconsistencies
- Parameters
wavelength (scalar real wavelength [meters] of the incoming) – electromagnetic wave
frequency (scalar real frequency [Hz] of the incoming electromagnetic) – wave
- set_dielectric_properties(self, refractive_index, dielectric_permittivity)[source]¶
Convenience setter of the dielectric properties of the scatterer instance
This setter resolve the ambiguity of specifing either dielectric permittivity or the refractive index of the medium which should not be set independently in order to avoid internal inconsistencies
- Parameters
refractive_index (scalar complex refractive index [dimensionless] of) – the scattering target
dielectric_permittivity (scalar complex relative dielectric) – permittivity [dimensionless] of the scattering target
- set_scattering_geometry(self, geometry)[source]¶
Convenience setter of the scattering geometry that takes as input a 4-element array containing all 4 incident and scattering angles
Any update of the geometry should call the scattering_angle function in order to correctly update this value
- Parameters
geometry (A tuple of 6 elements containing (theta_inc, theta_sca,) – phi_inc, phi_sca, alpha, beta) [rad]
- class Liu_DB[source]¶
Bases:
ScattererParent Scatterer class from which every scattering method inherits
- diameter¶
Equivalent size of the target in meters. The user should know how to properly define it.
- frequency, wavelength
The frequency [Hz] or the wavelength [meters] of incident light, see set_electromagnetic_wave function for details.
- refractive_index, dielectric_permittivity
The refractive index or the relative dielectric permittivity of the scattering target, see set_dielectric_properties for further details
- alpha, beta, gamma
Euler angles of the particle orientation… … still do not know if I need all of them
- theta_inc, theta_sca
- phi_inc, phi_sca
- class Hong_DB[source]¶
Bases:
ScattererParent Scatterer class from which every scattering method inherits
- diameter¶
Equivalent size of the target in meters. The user should know how to properly define it.
- frequency, wavelength
The frequency [Hz] or the wavelength [meters] of incident light, see set_electromagnetic_wave function for details.
- refractive_index, dielectric_permittivity
The refractive index or the relative dielectric permittivity of the scattering target, see set_dielectric_properties for further details
- alpha, beta, gamma
Euler angles of the particle orientation… … still do not know if I need all of them
- theta_inc, theta_sca
- phi_inc, phi_sca
- class Leinonen_DB[source]¶
Bases:
ScattererParent Scatterer class from which every scattering method inherits
- diameter¶
Equivalent size of the target in meters. The user should know how to properly define it.
- frequency, wavelength
The frequency [Hz] or the wavelength [meters] of incident light, see set_electromagnetic_wave function for details.
- refractive_index, dielectric_permittivity
The refractive index or the relative dielectric permittivity of the scattering target, see set_dielectric_properties for further details
- alpha, beta, gamma
Euler angles of the particle orientation… … still do not know if I need all of them
- theta_inc, theta_sca
- phi_inc, phi_sca
- class Aydin_DB[source]¶
Bases:
ScattererParent Scatterer class from which every scattering method inherits
- diameter¶
Equivalent size of the target in meters. The user should know how to properly define it.
- frequency, wavelength
The frequency [Hz] or the wavelength [meters] of incident light, see set_electromagnetic_wave function for details.
- refractive_index, dielectric_permittivity
The refractive index or the relative dielectric permittivity of the scattering target, see set_dielectric_properties for further details
- alpha, beta, gamma
Euler angles of the particle orientation… … still do not know if I need all of them
- theta_inc, theta_sca
- phi_inc, phi_sca