4.12.1.1. singleScattering.core

single scattering module core submodule

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 provides a list of scattering technique suitable (and commonly used) for the computation of the single scattering properties of hydrometeors at microwave frequencies; future upgrades might consider inclusion of further frequency bands. This core file loads submodules and provide handy functions to consistently call the various scattering models

Example

$ python >>> import singleScattering >>> singleScattering.scattering(frequency, size, refractive_index, **kwargs) and returns the most important scattering quantities Cext, Csca, Cabs, Cbk

Notes

At the moment it is not possible to call the functions implemented in this module using nd-arrays, but it is on due for the next development steps. This feature will come of particular handy when integration over PSD will come to play

All of the argument quatities must be provided in SI units

4.12.1.1.1. Module Contents

4.12.1.1.1.1. Functions

scattering(diameters, frequencies=None, wavelengths=None, refractive_indices=None, dielectric_permittivities=None, orientation=None, model=None, **kwargs)

Scattering properties according to the passed scatterer parameters

4.12.1.1.1.2. Attributes

models_list

models_list = ['Rayleigh (Ray)', 'Mie', 'Tmatrix (TMM)', 'Self-Similar Rayleigh-Gans (SSRG)', 'LiuDB',...[source]
scattering(diameters, frequencies=None, wavelengths=None, refractive_indices=None, dielectric_permittivities=None, orientation=None, model=None, **kwargs)[source]

Scattering properties according to the passed scatterer parameters

Parameters
  • diameters (float) – sizes of the scattering particle [meters]

  • frequencies (float) – frequencies of the incoming electromagnetic wave [Hz] might be substituted by wavelengths

  • wavelengths (float) – wavelengths of the incoming electromagnetic wave [Hz] might be substituted by frequencies [meters]

  • refractive_indices (complex) – effective refractive index of the scattering material (with respect to ambient refractive index) can be substituted by dielectric_permittivities

  • dielectric_permittivities (complex) – effective relative dielectric permittivity of the scattering material (with respect to ambient dielectric properties) can be substituted by refractive_indices

  • orientation (placeholder for orientation of the scatterer) –

  • model (one of the model_list (might be substituted by the shortname in the parenthesis)) –

  • **kwargs (additional arguments to be passed to the requested model) –

Returns

array of scattering properties (Cext, Csca, Cabs, Cbck) where Cext : Total extinction cross section [meters**2] in the direction

of propagation

CscaTotal extinction cross section [meters**2] in the direction

of propagation

CabsTotal extinction cross section [meters**2] in the direction

of propagation

CbckRadar backscattering cross section [meters**2]

=> 4*pi dCsca(pi)/dOmega

Return type

nd - float

Raises

AttributeError – If an uncorrect list of arguments is passed