Plot Single-Scattering PropertiesΒΆ

Go back to the list of notebooks if this is not what you are looking for

This notebook show how to use snowScatt to compute the single scattering properties of some particle properties

[1]:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import datetime
begin = datetime.datetime.now()

import snowScatt

particle_types = ["vonTerzi_plate",
                  "vonTerzi_dendrite",
                  "vonTerzi_column",
                  "vonTerzi_needle",
                  "vonTerzi_mixcoldend",
                  "Leinonen15tabB02",
                  "Leinonen15tabB05",
                  "Leinonen15tabB20",
                  "Ori_collColumns"]
particle_labels = ["CaE plate",
                   "CaE dendrite",
                   "CaE column",
                   "CaE needle",
                   "CaE mix",
                   "LS15 B02",
                   "LS15 B05",
                   "LS15 B20",
                   "Ori14 column"]

diameters   = np.logspace(-4,np.log10(4e-2))

fig, axes = plt.subplots(2, 2, figsize=(8, 8))

for i, particle in enumerate(particle_types):
    results = snowScatt.calcProperties(diameters=diameters,
                                       wavelength=3.19e-3, # W-band radar 94 GHz
                                       properties=particle,
                                       temperature=270, # compute refractive index internally from Iwabuchi 2010
                                      )
    Cext, Cabs, Csca, Cbck, asym, phase, mass_prop, vel, area = results
    axes[0, 0].plot(diameters*1.0e3, Cext*1.0e6, label=particle_labels[i])
    axes[0, 1].plot(diameters*1.0e3, Cabs*1.0e6, label=particle_labels[i])
    axes[1, 0].plot(diameters*1.0e3, Cbck*1.0e6, label=particle_labels[i])
    axes[1, 1].plot(diameters*1.0e3, asym, label=particle_labels[i])

axes[0, 0].set_yscale('log')
axes[0, 1].set_yscale('log')
axes[1, 0].set_yscale('log')

axes[0, 0].set_xlabel('Dmax  [mm]')
axes[0, 1].set_xlabel('Dmax  [mm]')
axes[1, 0].set_xlabel('Dmax  [mm]')
axes[1, 1].set_xlabel('Dmax  [mm]')

axes[0, 0].set_ylabel('Cext  [mm$^2$]')
axes[0, 1].set_ylabel('Cabs  [mm$^2$]')
axes[1, 0].set_ylabel('Cbck  [mm$^2$]')
axes[1, 1].set_ylabel('g')
fig.tight_layout()
../_images/notebooks_single_scattering_1_0.png

Go back to the list of notebooks for some more snow studies