skretrieval.retrieval.rodgers.Rodgers

skretrieval.retrieval.rodgers.Rodgers#

class skretrieval.retrieval.rodgers.Rodgers(max_iter: int = 10, lm_damping: float = 0, iterative_update_lm: bool = False, retreat_lm: bool = False, lm_change_factor: float = 1.5, convergence_factor: float = 1, convergence_check_method='linear', lm_damping_method='fletcher', apply_cholesky_scaling=False)[source]#

Bases: Minimizer

Implements the standard inverse problem method described in “Inverse Methods for Atmospheric Sounding” by Rodgers (2000).

Parameters:
  • max_iter (int, optional) – The maximum number of iterations to perform when calling retrieve. Default: 10

  • lm_damping (float, optional) – The Levenberg-Marquardt damping parameter. A value of 0 would indicate no damping. Default: 0

  • iterative_update_lm (bool, optional) – If True, the LM damping factor is modified each iteration based on how well the problem is converging. Default: False

  • retreat_lm (bool, optional) – If True, if the chi sq is worse for one iteration the state vector is retreated back to the previous iteration’s value. Default: False

  • lm_change_factor (float, optional) – The multiplicative factor applied to the LM damping parameter each iteration if iterative_update_lm is set to True. Default: 1.5

  • convergence_factor (float, optional) – See convergence_check_method. Reasonable values are 1.01 if convergence_check_method is linear, and 1 if convergence_check_method is dcost. Default: 1

  • convergence_check_method (str, optional) – Sets the method of checking for convergence. If ‘linear’ then (expected chi_sq) / (chi_sq) is checked if it is less than convergence_factor. If ‘dcost’, then the derivative of the cost function is checked against convergence_factor.

  • lm_damping_method (str, optional) – One of ‘fletcher’, ‘prior’, or ‘identity’. If ‘fletcher’, the LM damping term will be lm_damping * diag(K^T inv_Sy K). If ‘prior’, the lm damping is lm_damping * inv_Sa. If ‘identity’ the damping is lm_damping * identity. Default is ‘fletcher’

  • apply_cholesky_scaling (bool, optional) – If True, then attempts will be made to rescale the state vector and measurement vectors to a more numerically suitable space

__init__(max_iter: int = 10, lm_damping: float = 0, iterative_update_lm: bool = False, retreat_lm: bool = False, lm_change_factor: float = 1.5, convergence_factor: float = 1, convergence_check_method='linear', lm_damping_method='fletcher', apply_cholesky_scaling=False)[source]#

Implements the standard inverse problem method described in “Inverse Methods for Atmospheric Sounding” by Rodgers (2000).

Parameters:
  • max_iter (int, optional) – The maximum number of iterations to perform when calling retrieve. Default: 10

  • lm_damping (float, optional) – The Levenberg-Marquardt damping parameter. A value of 0 would indicate no damping. Default: 0

  • iterative_update_lm (bool, optional) – If True, the LM damping factor is modified each iteration based on how well the problem is converging. Default: False

  • retreat_lm (bool, optional) – If True, if the chi sq is worse for one iteration the state vector is retreated back to the previous iteration’s value. Default: False

  • lm_change_factor (float, optional) – The multiplicative factor applied to the LM damping parameter each iteration if iterative_update_lm is set to True. Default: 1.5

  • convergence_factor (float, optional) – See convergence_check_method. Reasonable values are 1.01 if convergence_check_method is linear, and 1 if convergence_check_method is dcost. Default: 1

  • convergence_check_method (str, optional) – Sets the method of checking for convergence. If ‘linear’ then (expected chi_sq) / (chi_sq) is checked if it is less than convergence_factor. If ‘dcost’, then the derivative of the cost function is checked against convergence_factor.

  • lm_damping_method (str, optional) – One of ‘fletcher’, ‘prior’, or ‘identity’. If ‘fletcher’, the LM damping term will be lm_damping * diag(K^T inv_Sy K). If ‘prior’, the lm damping is lm_damping * inv_Sa. If ‘identity’ the damping is lm_damping * identity. Default is ‘fletcher’

  • apply_cholesky_scaling (bool, optional) – If True, then attempts will be made to rescale the state vector and measurement vectors to a more numerically suitable space

Methods

__init__([max_iter, lm_damping, ...])

Implements the standard inverse problem method described in "Inverse Methods for Atmospheric Sounding" by Rodgers (2000).

retrieve(measurement_l1, forward_model, ...)

retrieve(measurement_l1, forward_model: ForwardModel, retrieval_target: RetrievalTarget)[source]#
Parameters:
  • measurement_l1 (RadianceBase) – The data we are trying to match, either from a real instrument or simulations.

  • forward_model (ForwardModel) – A model for the data in measurement_l1

  • retrieval_target (RetrievalTarget) – What we are trying to retrieve

Returns:

Various parameters specific to the minimizer

Return type:

dict