| ARTS
    2.3.1285(git:92a29ea9-dirty)
    | 
Wrapper class for forward model. More...
#include <agenda_wrapper.h>
| Public Member Functions | |
| AgendaWrapper (Workspace *ws_, unsigned int m_, unsigned int n_, Matrix &jacobian_, Vector &yi_, const Agenda *inversion_iterate_agenda_) | |
| Create inversion_iterate_agendaExecute wrapper.  More... | |
| AgendaWrapper (const AgendaWrapper &)=delete | |
| AgendaWrapper (AgendaWrapper &&)=delete | |
| AgendaWrapper & | operator= (const AgendaWrapper &)=delete | 
| AgendaWrapper & | operator= (AgendaWrapper &&)=delete | 
| OEMMatrixReference | Jacobian (const OEMVector &xi, OEMVector &yi_) | 
| Evaluate forward model and compute Jacobian.  More... | |
| OEMVector | evaluate (const OEMVector &xi) | 
| Evaluate forward model.  More... | |
| Public Attributes | |
| const unsigned int | m | 
| const unsigned int | n | 
| OEMMatrixReference | jacobian | 
| OEMVector | yi | 
| Private Attributes | |
| Workspace * | ws | 
| const Agenda * | inversion_iterate_agenda | 
| bool | reuse_jacobian | 
| unsigned int | iteration_counter | 
Wrapper class for forward model.
Wrapper class for the inversion_iterate_agendaExecute function to implement the forward model interface used by the non-linear oem function in oem.cc. The object is constructed with the pointers to the variables used as arguments for the function and then simply forwards the calls made to ForwardModel::evaluate() and ForwardModel::evaluate_jacobian() to inversion_iterate_agendaExecute.
Definition at line 24 of file agenda_wrapper.h.
| 
 | inline | 
Create inversion_iterate_agendaExecute wrapper.
Initializes the wrapper object for the inversion_iterate_agendaExecute method. The object forwards the evaluate() and evaluate_jacobian() calls made by the iterative OEM methods to inversion_iterate_agendaExecute using the arguments provided to the constructor.
| ws_ | Pointer to the workspace argument of the agenda execution function. function. | 
| inversion_iterate_agenda_ | Pointer to the x argument of the agenda execution function. | 
Definition at line 45 of file agenda_wrapper.h.
References operator=().
| 
 | delete | 
| 
 | delete | 
| 
 | inline | 
Evaluate forward model.
Forwards the call to evaluate that is made by Gauss-Newton and Levenberg-Marquardt OEM methods to the function pointers provided.
| [out] | y | The measurement vector y = K(x) for the current state vector x. | 
| [in] | x | The current state vector x. | 
Definition at line 105 of file agenda_wrapper.h.
References inversion_iterate_agenda, inversion_iterate_agendaExecute(), iteration_counter, reuse_jacobian, ws, and yi.
| 
 | inline | 
Evaluate forward model and compute Jacobian.
Forwards the call to evaluate_jacobian() and evaluate() that is made by Gauss-Newton and Levenberg-Marquardt OEM methods using the variables pointed to by the pointers provided to the constructor as arguments.
| [out] | y | The measurement vector y = K(x) for the current state vector x as computed by the forward model. | 
| [out] | J | The Jacobian Ki=d/dx(K(x)) of the forward model. | 
| [in] | x | The current state vector x. | 
Definition at line 79 of file agenda_wrapper.h.
References inversion_iterate_agenda, inversion_iterate_agendaExecute(), iteration_counter, jacobian, reuse_jacobian, ws, and yi.
| 
 | delete | 
Referenced by AgendaWrapper().
| 
 | delete | 
| 
 | private | 
Definition at line 122 of file agenda_wrapper.h.
Referenced by evaluate(), and Jacobian().
| 
 | private | 
Definition at line 124 of file agenda_wrapper.h.
Referenced by evaluate(), and Jacobian().
| OEMMatrixReference AgendaWrapper::jacobian | 
Definition at line 29 of file agenda_wrapper.h.
Referenced by Jacobian().
| const unsigned int AgendaWrapper::m | 
Definition at line 28 of file agenda_wrapper.h.
| const unsigned int AgendaWrapper::n | 
Definition at line 28 of file agenda_wrapper.h.
| 
 | private | 
Definition at line 123 of file agenda_wrapper.h.
Referenced by evaluate(), and Jacobian().
| 
 | private | 
Definition at line 121 of file agenda_wrapper.h.
Referenced by evaluate(), and Jacobian().
| OEMVector AgendaWrapper::yi | 
Definition at line 30 of file agenda_wrapper.h.
Referenced by evaluate(), and Jacobian().