Geophysical Inversion and Modelling Library  v1.5.0
GIMLI::Trans< Vec > Class Template Reference

## Public Member Functions

Trans ()

virtual ~Trans ()

virtual Vec operator() (const Vec &a) const

virtual double operator() (double x) const

Vec fwd (const Vec &f) const

double fwd (double f) const

Vec inv (const Vec &f) const

double inv (double f) const

virtual double trans (double x) const

virtual Vec trans (const Vec &x) const

virtual Vec invTrans (const Vec &f) const

virtual double invTrans (double f) const

virtual Vec deriv (const Vec &x) const

Vec update (const Vec &a, const Vec &b) const

Vec error (const Vec &a, const Vec &daBya) const

Vec error_brute (const Vec &a, const Vec &daBya) const

## Detailed Description

### template<class Vec> class GIMLI::Trans< Vec >

Basis Transform vector (unity), Identity transformation, that means it do nothing. Just for prototyping f(a).

## ◆ Trans()

template<class Vec >
 GIMLI::Trans< Vec >::Trans ( )
inline

Default constructur.

## ◆ ~Trans()

template<class Vec >
 virtual GIMLI::Trans< Vec >::~Trans ( )
inlinevirtual

Default destructor.

## ◆ deriv()

template<class Vec >
 virtual Vec GIMLI::Trans< Vec >::deriv ( const Vec & x ) const
inlinevirtual

## ◆ error()

template<class Vec >
 Vec GIMLI::Trans< Vec >::error ( const Vec & a, const Vec & daBya ) const
inline

Error of f(a) calculated by a and relative error
intrinsic function that could be overloaded

References GIMLI::Trans< Vec >::deriv().

## ◆ error_brute()

template<class Vec >
 Vec GIMLI::Trans< Vec >::error_brute ( const Vec & a, const Vec & daBya ) const
inline

Alternative Version - brute force: df = | f(a + da) - f(a) |
intrinsic functions that have never to be overloaded

References GIMLI::Trans< Vec >::trans().

## ◆ fwd() [1/2]

template<class Vec >
 Vec GIMLI::Trans< Vec >::fwd ( const Vec & f ) const
inline

Return forward transformation. Alias for trans .

References GIMLI::Trans< Vec >::trans().

## ◆ fwd() [2/2]

template<class Vec >
 double GIMLI::Trans< Vec >::fwd ( double f ) const
inline

Return forward transformation. Alias for trans .

References GIMLI::Trans< Vec >::trans().

## ◆ inv() [1/2]

template<class Vec >
 Vec GIMLI::Trans< Vec >::inv ( const Vec & f ) const
inline

Return inverse transformation. Shortcut for invTrans .

References GIMLI::Trans< Vec >::invTrans().

## ◆ inv() [2/2]

template<class Vec >
 double GIMLI::Trans< Vec >::inv ( double f ) const
inline

For compatibility if inv is called with a single value.

References GIMLI::Trans< Vec >::inv().

Referenced by GIMLI::Trans< Vec >::inv().

## ◆ invTrans() [1/2]

template<class Vec >
 virtual Vec GIMLI::Trans< Vec >::invTrans ( const Vec & f ) const
inlinevirtual

## ◆ invTrans() [2/2]

template<class Vec >
 virtual double GIMLI::Trans< Vec >::invTrans ( double f ) const
inlinevirtual

For compatibility if invTrans is called with a single value.

References GIMLI::Trans< Vec >::invTrans().

Referenced by GIMLI::Trans< Vec >::invTrans().

## ◆ operator()() [1/2]

template<class Vec >
 virtual Vec GIMLI::Trans< Vec >::operator() ( const Vec & a ) const
inlinevirtual

Default call operator. trans()

References GIMLI::Trans< Vec >::trans().

## ◆ operator()() [2/2]

template<class Vec >
 virtual double GIMLI::Trans< Vec >::operator() ( double x ) const
inlinevirtual

Default call operator. trans()

References GIMLI::Trans< Vec >::trans(), and GIMLI::x().

## ◆ trans() [1/2]

template<class Vec >
 virtual Vec GIMLI::Trans< Vec >::trans ( const Vec & x ) const
inlinevirtual

## ◆ trans() [2/2]

template<class Vec >
 virtual double GIMLI::Trans< Vec >::trans ( double x ) const
inlinevirtual

For compatibility if trans is called with a single value.

References GIMLI::Trans< Vec >::trans(), and GIMLI::x().

## ◆ update()

template<class Vec >
 Vec GIMLI::Trans< Vec >::update ( const Vec & a, const Vec & b ) const
inline

Update parameter by df: invTrans(f(a) + df).
intrinsic function that have never to be overloaded.

References GIMLI::Trans< Vec >::invTrans(), and GIMLI::Trans< Vec >::trans().