Geophysical Inversion and Modelling Library  v1.5.2-5-g042d7f36
GIMLI::TransLogLU< Vec > Class Template Reference
+ Inheritance diagram for GIMLI::TransLogLU< Vec >:
+ Collaboration diagram for GIMLI::TransLogLU< Vec >:

Public Member Functions

 TransLogLU (double lowerbound=0.0, double upperbound=0.0)
 
Vec rangify (const Vec &a) const
 
virtual Vec trans (const Vec &a) const
 
virtual Vec invTrans (const Vec &a) const
 
virtual Vec deriv (const Vec &a) const
 
void setUpperBound (double ub)
 
double upperBound () const
 
DLLEXPORT RVector rangify (const RVector &a) const
 
RVector trans (const RVector &a) const
 
RVector invTrans (const RVector &a) const
 
RVector deriv (const RVector &a) const
 
DLLEXPORT RVector rangify (const RVector &a) const
 
DLLEXPORT RVector trans (const RVector &a) const
 
DLLEXPORT RVector invTrans (const RVector &a) const
 
DLLEXPORT RVector deriv (const RVector &a) const
 
- Public Member Functions inherited from GIMLI::TransLog< Vec >
 TransLog (double lowerbound=0.0)
 
void setLowerBound (double lb)
 
double lowerBound () const
 
- Public Member Functions inherited from GIMLI::Trans< Vec >
 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 double invTrans (double f) 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
 

Protected Attributes

double upperbound_
 
- Protected Attributes inherited from GIMLI::TransLog< Vec >
double lowerbound_
 

Detailed Description

template<class Vec>
class GIMLI::TransLogLU< Vec >

Range constraint transform functions:

Logarithmic barrier with upper and lower bound f(a) = log(a - a_u) - log(a_u - a).

Member Function Documentation

◆ deriv() [1/3]

RVector GIMLI::TransLogLU< RVector >::deriv ( const RVector x) const
virtual

Return derivative $ \frac{\partial f}{\partial x}(x) $

Reimplemented from GIMLI::TransLog< Vec >.

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

◆ deriv() [2/3]

DLLEXPORT RVector GIMLI::TransLogLU< RVector >::deriv ( const RVector x) const
virtual

Return derivative $ \frac{\partial f}{\partial x}(x) $

Reimplemented from GIMLI::TransLog< Vec >.

◆ deriv() [3/3]

template<class Vec >
virtual Vec GIMLI::TransLogLU< Vec >::deriv ( const Vec x) const
virtual

Return derivative $ \frac{\partial f}{\partial x}(x) $

Reimplemented from GIMLI::TransLog< Vec >.

Reimplemented in GIMLI::TransLogLUMult< Vec >.

Referenced by GIMLI::TransLogLUMult< Vec >::deriv().

◆ invTrans() [1/3]

RVector GIMLI::TransLogLU< RVector >::invTrans ( const RVector f) const
virtual

Return inverse transformation $ x(f) $

Reimplemented from GIMLI::TransLog< Vec >.

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

◆ invTrans() [2/3]

DLLEXPORT RVector GIMLI::TransLogLU< RVector >::invTrans ( const RVector f) const
virtual

Return inverse transformation $ x(f) $

Reimplemented from GIMLI::TransLog< Vec >.

◆ invTrans() [3/3]

template<class Vec >
virtual Vec GIMLI::TransLogLU< Vec >::invTrans ( const Vec f) const
virtual

Return inverse transformation $ x(f) $

Reimplemented from GIMLI::TransLog< Vec >.

Reimplemented in GIMLI::TransLogLUMult< Vec >.

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

◆ rangify() [1/2]

DLLEXPORT RVector GIMLI::TransLogLU< RVector >::rangify ( const RVector a) const

Implement specialized type traits in trans.cpp.

◆ rangify() [2/2]

template<class Vec >
Vec GIMLI::TransLogLU< Vec >::rangify ( const Vec a) const

WHAT IS THIS?

◆ trans() [1/3]

RVector GIMLI::TransLogLU< RVector >::trans ( const RVector x) const
virtual

Apply and return the transformation. Return $ f(x) $

Reimplemented from GIMLI::TransLog< Vec >.

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

◆ trans() [2/3]

DLLEXPORT RVector GIMLI::TransLogLU< RVector >::trans ( const RVector x) const
virtual

Apply and return the transformation. Return $ f(x) $

Reimplemented from GIMLI::TransLog< Vec >.

◆ trans() [3/3]

template<class Vec >
virtual Vec GIMLI::TransLogLU< Vec >::trans ( const Vec x) const
virtual

Apply and return the transformation. Return $ f(x) $

Reimplemented from GIMLI::TransLog< Vec >.

Reimplemented in GIMLI::TransLogLUMult< Vec >.

Referenced by GIMLI::TransLogLUMult< Vec >::trans().