skOpticalProperties  2.1

The skOpticalProperties library is a suite of C++ classes used to calculate the optical properties of various atmospheric constituents. The code was developed at the University of Saskatchewan as part of our suite of atmospheric radiative transfer models. The library focusses on calculating absorption, scattering and extinction cross-sections as well as the scattering phase matrices of various atmospheric constituents.

The library is continuously updating but has classes for various chemical species e.g. HITRAN, O3, NO2, Rayleigh scattering for dry air, various ice and aerosols . We also have classes that allow users to use their own tables of data and can convolve cross-section data to others instrument resolutions.

Absorption, Extinction, Scattering and Phase Matrix
All media in optical radiative transfer exhibit absorption, extinction and scattering to greater or lesser degrees. This attribute is expressed in the base class skOpticalProperties using virtual interface functions and implemented in derived classes. The skOpticalProperties interface allows the cross-sections of atoms/molecules/particles to be dependent upon the state of the atmosphere (temperature and pressures) as well their location. The properties can also depend upon secondary climatologies, e.g. aerosol cross-sections depend upon climatolgies of mode radius and mode width.
Include and Library files
#include <skopticalproperties21.h>
Automatic linking of libraries is built into the header file for Visual Studio. Other compilers and linkers should look at the header file to determine which files whould be linked.
nxUnknown Lifetime Management
The lifetime of all skOpticalProperties objects are managed using the nxUnknown interface. This interface is an extension of the IUnknown interface found in COM.
Versions
2012-09-11, The Log Normal particle distribution cache resolution was increased by a factor of 10 to support aerosol retrieval in new versions of mart retrieval.
The Base Class
Rayeligh Scattering OpticalProperties
Aerosol Scattering
Hitran
Miscellaneous
NO2 absorption
O3 absorption
Cross-section convolving classes
Particle Distributions
Spectral Line Shape Classes