4.12.1.6. singleScattering.ssrg

singleScattering.ssrg.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/>.

Self-Similar-Rayleigh-Gans approximation for non-spherical scatterer object and member functions

4.12.1.6.1. Module Contents

4.12.1.6.1.1. Classes

SsrgScatt

This is class implement the Self-Similar Rayleigh-Gans model of scattering

4.12.1.6.1.2. Functions

leinonen_coeff(D, elwp=0.0)

phase_function(prefactor, x, kappa, beta, gamma, zeta1, theta)

Compute the phase function for the current state of the scatterer

shape_factor(x, kappa, beta, gamma, zeta1, theta)

Compute the shape factor for the current state of the scatterer

first(x, kappa)

Compute the first term in the braces in Eq. 4 of Hogan (2017)

summation(x, beta, gamma, zeta1)

Provide the summation component of the phi shape function for ssrga.

compute_effective_size(size=None, ar=None, angle=None)

Returns the effective size of a spheroid along the propagation direction

leinonen_coeff(D, elwp=0.0)

brandes(D)

smalles(D)

backscattering(frequency, diameters, n, table=None, ELWP=None, mass=None)

4.12.1.6.1.3. Attributes

ssrg_lib

HW14

L15_0

Oea14

module_path

leinonen_table

ssrg_lib_idx

c

diameters

ssrg_lib[source]
HW14[source]
L15_0[source]
Oea14[source]
module_path[source]
leinonen_table[source]
leinonen_coeff(D, elwp=0.0)[source]
ssrg_lib_idx[source]
class SsrgScatt(diameter=0.001, frequency=None, wavelength=None, refractive_index=None, dielectric_permittivity=None, theta_inc=0.0, phi_inc=0.0, theta_sca=0.0, phi_sca=0.0, aspect_ratio=1.0, ssrg_parameters='HW14', volume=None)[source]

Bases: singleScattering.scatterer.Scatterer

This is class implement the Self-Similar Rayleigh-Gans model of scattering for a non-spherical particle Inherits from Scatterer.

Parameters
  • aspect_ratio (scalar-double) – The ratio between the vertical and horizontal dimension of the particle Consider the scatterer to be surrounded by an equvalent ellipsoid, then the aspect ratio is the aspect ratio of the ellipsoid

  • ssrg_parameters (dict or str) – The 4 parameters of the Self-Similar Rayleigh-Gans approximation. If a dictionary is passed it must contain the keys kappa, beta, gamma and zeta1. If a string is passed the code will look at the builtin library of ssrg parameters; consult the ssrg_lib_idx variable for a list of options (WARNING: it might override aspect_ratio)

  • volume (scalar-double) – The volume occupied by the scattering material. It is mass-equivalent (assuming the surraunding material to be air). Since SSRG has been developed for non-spherical complex particles the user should know how to calculate it for his/her own particle structures

  • Todo

  • dependent (Allow for K dielectric factor to be model) –

_set_ssrg_par(self, par)[source]

Convenience function to set the srrg parameters attributes according to the requested model

Parameters

par (dict or str) – explicit which set of parameters to use (dict) or the parameter model (str) to pick from the library or filename

scattering_xsect(self)[source]

Calculates the scattering cross section by integrating over the all the whole 4pi solid scattering angle Note that the scattering phase function is already azimuthally averaged, so we need to integrate only over theta [0, pi]

phase_function(prefactor, x, kappa, beta, gamma, zeta1, theta)[source]

Compute the phase function for the current state of the scatterer

shape_factor(x, kappa, beta, gamma, zeta1, theta)[source]

Compute the shape factor for the current state of the scatterer

first(x, kappa)[source]

Compute the first term in the braces in Eq. 4 of Hogan (2017) scattering by the mean ice distribution in the particles’ population.

summation(x, beta, gamma, zeta1)[source]

Provide the summation component of the phi shape function for ssrga. the second term in the braces in Eq. 4 of Hogan (2017) related to scattering by the modulation of ice distribution with respect to the mean.

compute_effective_size(size=None, ar=None, angle=None)[source]

Returns the effective size of a spheroid along the propagation direction TODO: Depending on how the propagation direction is defined also orientation of the scatterer matters

Parameters
  • size (scalar-double) – The horizontal size of the spheroid

  • ar (scalar-double) – The aspect ratio of the spheroid (vertical/horizontal)

  • angle (scalar-double) – The propagation direction along which the effective size has to be computed

Returns

size_eff – The effective size of the spheroid along the zenith direction defined by angle

Return type

scalar-double

leinonen_coeff(D, elwp)[source]
c = 299792458.0[source]
diameters[source]
brandes(D)[source]
smalles(D)[source]
backscattering(frequency, diameters, n, table=None, ELWP=None, mass=None)[source]