Aerosol

class retrieval.species_aerosol.AerosolLimbProfile(atmosphere)

Handles the retrieval specifics for the aerosol species including configuration of retrieval method, measurement vector and jacobian calculations and updating of atmoshperic state with new aerosol profile.

The aerosol measurement vector is a long wavelength radiance normalized by high altitude, a second wavelength, and a modelled measurement vector assuming zero aerosol loading.

The high altitude normalization helps to remove dependence on characterization of upwelling radiation and absolute calibration

The wavelength calibration decreases sensitivity to the background atmosphere and particle size. However it may decrease senstivity to aerosols as well depending on scattering geometries.

The normalization by a ‘clean atmosphere’ measurement vector is not neccessary for Jacobian based methods, but helps to determine the best reference height for normalization.

Parameters:

atmosphere : Atmosphere

Holds the atmospheric state, including climatologie, optical properties and species identifiers (GUIDs)

Methods

check_convergence
configure_instrument_and_method
get_required_wavelengths
get_x
lm_weighting_matrix
mart_weighting_matrix
measurement_vector
measurement_vector_jacobian
measurement_vector_jacobian_num
measurement_vector_jacobian_wf
measurement_vector_unnorm
output_data
output_data_bounded
set_x
update_profile
configure_instrument_and_method(ret_inst, meas_inst, method)

Configures the retrieval method and retrieval instrument with appropriate values. Uses information from the measurement instrument to do this, such as the measured wavelengths.

Parameters:

ret_inst : Instrument

The instrument used to generate simulated level one data for the retrieval

ret_inst : Instrument

The instrument used to generate the ‘real’ measurements. Used to generate the measurement vectors, y

method : LeastSquares

least squares minimization technique. Must support weighting matrix.

get_required_wavelengths()
Returns:

wavelength (1d array):

array of wavelengths suggested by the retrieval

measurement_vector(inst, do_error=False)

Generates the measurement vector

Parameters:

inst : Instrument

Instrument that provides level 1 used to generate the measurement vector.

do_error : (optional)

Whether or not to compute the error on the measurement vector. If false, the error is returned as zeros.

Returns:

y : 1d array

The measurement vectors stacked into a one dimensional array.

measurement_vector_jacobian(inst)

Computes the measurement vector jacobian using either analytic or numerical perturbation methods.

Returns:

J : 2d array

The Jacobian of the measurement vector. Elemenent J[i,j] give the sensitivity of the measurement vector y[i], to the perturbations of the atmospheric state x[j], or dy[j]/dx[i].

measurement_vector_jacobian_num(inst)

Computes the unnormalized measurement vector jacobian using simple numerical forward difference method.

measurement_vector_jacobian_wf(inst)

Computes the measurement vector jacobian using analytical methods from the HR sasktran model.

measurement_vector_unnorm(inst, do_error=False)

Generates the measurment vector unnormalized by high altitude and rayleigh

Returns:

y : 2d array

An array of height x num meas vectors

dy : 2d array

An array the same size as y, containing the measurement vector error

output_data()
Returns:the profile in units of extinction per km
update_profile(delta, mode='additive')

Update the aerosol profile in the atmosphere at based on the recommendations given by delta.

Parameters:

delta : 1d array

The suggested numerical change of the profile. Must be the same length as the tangent altitudes.