AbstractIterativeInverter#

class ctis.inverters.AbstractIterativeInverter(*, num_iteration=100, intermediate=False)[source]#

Bases: AbstractInverter

An abstract inversion algorithm which reconstructs an observed scene using iterative methods.

These methods will apply some operation repeatedly until a specified convergence criteria is met.

Attributes

axis_iteration

The logical axis associated with changing iteration index.

instrument

A model of a CTIS instrument which transforms the radiance of an observed scene to photons measured by the sensors.

intermediate

Whether to save intermediate solutions.

num_iteration

The maximum number of iterations to perform.

Methods

__init__(*[, num_iteration, intermediate])

correlation_residual(images_observed, ...)

Evaluate the correlation between the predicted images and the residual.

mean_chi_squared(images_observed, ...)

Evaluate \(\langle \chi^2 \rangle\) for each observed/predicted image pair.

Inheritance Diagram

Inheritance diagram of ctis.inverters.AbstractIterativeInverter
Parameters:
  • num_iteration (int)

  • intermediate (bool)

correlation_residual(images_observed, images_predicted)[source]#

Evaluate the correlation between the predicted images and the residual.

Parameters:
  • images_observed (ScalarArray) – The actual measured images.

  • images_predicted (ScalarArray) – The images predicted by the inversion.

Return type:

ScalarArray

mean_chi_squared(images_observed, images_predicted)[source]#

Evaluate \(\langle \chi^2 \rangle\) for each observed/predicted image pair.

Parameters:
  • images_observed (ScalarArray) – The actual measured images.

  • images_predicted (ScalarArray) – The images predicted by the inversion.

Return type:

ScalarArray

axis_iteration: ClassVar[str] = 'iteration'#

The logical axis associated with changing iteration index.

abstract property instrument: AbstractInstrument#

A model of a CTIS instrument which transforms the radiance of an observed scene to photons measured by the sensors.

intermediate: bool = False#

Whether to save intermediate solutions.

This is set to False during normal operation, but can be useful for debugging or demonstration purposes.

num_iteration: int = 100#

The maximum number of iterations to perform.

If convergence is not reached before this number is exceeded, a warning is raised and an unsuccessful result is returned.