casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | List of all members
casacore::Gaussian3D_PS< AutoDiff< T > > Class Template Reference

Partial specialization of Gaussian3D for AutoDiff More...

#include <Gaussian3D.h>

Inheritance diagram for casacore::Gaussian3D_PS< AutoDiff< T > >:
casacore::Gaussian3DParam< AutoDiff< T > > casacore::Function< AutoDiff< T > > casacore::Functional< FunctionTraits< AutoDiff< T > >::ArgType, U > casacore::Functional< Vector< FunctionTraits< AutoDiff< T > >::ArgType >, U >

Public Member Functions

 Gaussian3D_PS ()
 
 Gaussian3D_PS (const AutoDiff< T > &height, const Vector< AutoDiff< T > > &center, const Vector< AutoDiff< T > > &width, const AutoDiff< T > &theta, const AutoDiff< T > &phi)
 
 Gaussian3D_PS (AutoDiff< T > &height, AutoDiff< T > &xCenter, AutoDiff< T > &yCenter, AutoDiff< T > &zCenter, AutoDiff< T > &xWidth, AutoDiff< T > &yWidth, AutoDiff< T > &zWidth, AutoDiff< T > &theta, AutoDiff< T > &phi)
 
 Gaussian3D_PS (const Gaussian3D_PS< AutoDiff< T > > &other)
 
template<class W >
 Gaussian3D_PS (const Gaussian3D_PS< W > &other)
 
virtual ~Gaussian3D_PS ()
 
Gaussian3D_PS< AutoDiff< T > > & operator= (const Gaussian3D_PS< AutoDiff< T > > &other)
 
virtual AutoDiff< T > eval (typename Function< AutoDiff< T > >::FunctionArg x) const
 
virtual Function< AutoDiff< T > > * clone () const
 Return a copy of this object from the heap. More...
 
virtual Function< typename
FunctionTraits< AutoDiff< T >
>::DiffType > * 
cloneAD () const
 
virtual Function< typename
FunctionTraits< AutoDiff< T >
>::BaseType > * 
cloneNonAD () const
 
- Public Member Functions inherited from casacore::Gaussian3DParam< AutoDiff< T > >
 Gaussian3DParam ()
 Constructs the three dimensional Gaussians. More...
 
 Gaussian3DParam (AutoDiff< T >height, const Vector< AutoDiff< T > > &center, const Vector< AutoDiff< T > > &width, AutoDiff< T >theta, AutoDiff< T >phi)
 
 Gaussian3DParam (AutoDiff< T > &height, AutoDiff< T > &xCenter, AutoDiff< T > &yCenter, AutoDiff< T > &zCenter, AutoDiff< T > &xWidth, AutoDiff< T > &yWidth, AutoDiff< T > &zWidth, AutoDiff< T > &theta, AutoDiff< T > &phi)
 
 Gaussian3DParam (const Gaussian3DParam< AutoDiff< T > > &other)
 Copy construcor. More...
 
 Gaussian3DParam (const Gaussian3DParam< W > &other)
 
Gaussian3DParam< AutoDiff< T > > & operator= (const Gaussian3DParam< AutoDiff< T > > &other)
 Copy assignment. More...
 
virtual ~Gaussian3DParam ()
 Destructor. More...
 
virtual const Stringname () const
 Give name of function. More...
 
virtual uInt ndim () const
 Return dimensionality. More...
 
AutoDiff< T > height () const
 Get or set the peak height of the Gaussian. More...
 
void setHeight (const AutoDiff< T > &height)
 
AutoDiff< T > flux () const
 Get or set the total flux of the Gaussian. More...
 
void setFlux (const AutoDiff< T > &flux)
 
Vector< AutoDiff< T > > center () const
 Get or cet the center coordinates of the Gaussian. More...
 
void setCenter (const Vector< AutoDiff< T > > &center)
 
AutoDiff< T > xCenter () const
 
void setXcenter (const AutoDiff< T > &xcenter)
 
AutoDiff< T > yCenter () const
 
void setYcenter (const AutoDiff< T > &ycenter)
 
AutoDiff< T > zCenter () const
 
void setZcenter (const AutoDiff< T > &zcenter)
 
Vector< AutoDiff< T > > width () const
 Get or set the sigma-width of the Gaussian. More...
 
void setWidth (const Vector< AutoDiff< T > > &width)
 
void setXwidth (const AutoDiff< T > &xwidth)
 
AutoDiff< T > xWidth () const
 
void setYwidth (const AutoDiff< T > &ywidth)
 
AutoDiff< T > yWidth () const
 
void setZwidth (const AutoDiff< T > &zwidth)
 
AutoDiff< T > zWidth () const
 
AutoDiff< T > theta () const
 Get or set the rotation angles of the Gaussian. More...
 
void settheta (const AutoDiff< T > &sT)
 
AutoDiff< T > phi () const
 
void setphi (const AutoDiff< T > &sP)
 
- Public Member Functions inherited from casacore::Function< AutoDiff< T > >
 Function ()
 Constructors. More...
 
 Function (const uInt n)
 
 Function (const Vector< AutoDiff< T > > &in)
 
 Function (const FunctionParam< AutoDiff< T > > &other)
 
 Function (const Function< W, X > &other)
 
virtual ~Function ()
 Destructor. More...
 
uInt nparameters () const
 Returns the number of parameters. More...
 
virtual U eval (FunctionArg x) const =0
 Evaluate the function object. More...
 
AutoDiff< T > & operator[] (const uInt n)
 Manipulate the nth parameter (0-based) with no index check. More...
 
const AutoDiff< T > & operator[] (const uInt n) const
 
virtual U operator() () const
 Evaluate this function object at xor at x, y. More...
 
virtual U operator() (const ArgType &x) const
 
virtual U operator() (const Vector< ArgType > &x) const
 
virtual U operator() (FunctionArg x) const
 
virtual U operator() (const ArgType &x, const ArgType &y) const
 
virtual U operator() (const ArgType &x, const ArgType &y, const ArgType &z) const
 
Boolmask (const uInt n)
 Manipulate the mask associated with the nth parameter (e.g. More...
 
const Boolmask (const uInt n) const
 
const FunctionParam< AutoDiff
< T > > & 
parameters () const
 Return the parameter interface. More...
 
FunctionParam< AutoDiff< T > > & parameters ()
 
const Vector< ArgType > & argp () const
 Get arg_p and parset_p. More...
 
Bool parsetp () const
 
void lockParam ()
 Compiler cannot always find the correct 'const' version of parameter access. More...
 
void unlockParam ()
 
virtual void setMode (const RecordInterface &mode)
 get/set the function mode. More...
 
virtual void getMode (RecordInterface &mode) const
 
virtual Bool hasMode () const
 return True if the implementing function supports a mode. More...
 
ostream & print (ostream &os) const
 Print the function (i.e. More...
 
- Public Member Functions inherited from casacore::Functional< FunctionTraits< AutoDiff< T > >::ArgType, U >
virtual ~Functional ()
 Destructor. More...
 
virtual U operator() (const FunctionTraits< AutoDiff< T > >::ArgType &x) const =0
 Map a Domain x into a Range y value. More...
 
- Public Member Functions inherited from casacore::Functional< Vector< FunctionTraits< AutoDiff< T > >::ArgType >, U >
virtual ~Functional ()
 Destructor. More...
 
virtual U operator() (const Vector< FunctionTraits< AutoDiff< T > >::ArgType > &x) const =0
 Map a Domain x into a Range y value. More...
 

Private Member Functions

sq (T v) const
 

Additional Inherited Members

- Public Types inherited from casacore::Gaussian3DParam< AutoDiff< T > >
enum  
 Parameter handling for the functional for 3D Gaussian Class. More...
 
- Public Types inherited from casacore::Function< AutoDiff< T > >
typedef FunctionTraits
< AutoDiff< T > >::ArgType 
ArgType
 
typedef const ArgTypeFunctionArg
 
- Protected Member Functions inherited from casacore::Gaussian3DParam< AutoDiff< T > >
void settrigvals () const
 
- Protected Attributes inherited from casacore::Gaussian3DParam< AutoDiff< T > >
AutoDiff< T > fwhm2int
 
AutoDiff< T > stoT_p
 
AutoDiff< T > stoP_p
 
AutoDiff< T > cosT_p
 
AutoDiff< T > sinT_p
 
AutoDiff< T > cosP_p
 
AutoDiff< T > sinP_p
 
AutoDiff< T > cosTcosP_p
 
AutoDiff< T > cosTsinP_p
 
AutoDiff< T > sinTcosP_p
 
AutoDiff< T > sinTsinP_p
 
- Protected Attributes inherited from casacore::Function< AutoDiff< T > >
FunctionParam< AutoDiff< T > > param_p
 The parameters and masks. More...
 
Vector< ArgTypearg_p
 Aid for non-contiguous argument storage. More...
 
Bool parset_p
 Indicate parameter written. More...
 
Bool locked_p
 Indicate that parameters are expected to be locked from changing. More...
 

Detailed Description

template<class T>
class casacore::Gaussian3D_PS< AutoDiff< T > >

Partial specialization of Gaussian3D for AutoDiff

Synopsis


Warning: The name Gaussian3D_PS is only for cxx2html documentation problems; Use Gaussian3D in your code;

Definition at line 231 of file Gaussian3D.h.

Constructor & Destructor Documentation

template<class T >
casacore::Gaussian3D_PS< AutoDiff< T > >::Gaussian3D_PS ( )
template<class T >
casacore::Gaussian3D_PS< AutoDiff< T > >::Gaussian3D_PS ( const AutoDiff< T > &  height,
const Vector< AutoDiff< T > > &  center,
const Vector< AutoDiff< T > > &  width,
const AutoDiff< T > &  theta,
const AutoDiff< T > &  phi 
)
template<class T >
casacore::Gaussian3D_PS< AutoDiff< T > >::Gaussian3D_PS ( AutoDiff< T > &  height,
AutoDiff< T > &  xCenter,
AutoDiff< T > &  yCenter,
AutoDiff< T > &  zCenter,
AutoDiff< T > &  xWidth,
AutoDiff< T > &  yWidth,
AutoDiff< T > &  zWidth,
AutoDiff< T > &  theta,
AutoDiff< T > &  phi 
)
template<class T >
casacore::Gaussian3D_PS< AutoDiff< T > >::Gaussian3D_PS ( const Gaussian3D_PS< AutoDiff< T > > &  other)
template<class T >
template<class W >
casacore::Gaussian3D_PS< AutoDiff< T > >::Gaussian3D_PS ( const Gaussian3D_PS< W > &  other)
inline

Definition at line 247 of file Gaussian3D.h.

template<class T >
virtual casacore::Gaussian3D_PS< AutoDiff< T > >::~Gaussian3D_PS ( )
virtual

Member Function Documentation

template<class T >
virtual Function<AutoDiff<T> >* casacore::Gaussian3D_PS< AutoDiff< T > >::clone ( ) const
virtual

Return a copy of this object from the heap.

The caller is responsible for deleting this pointer. The cloneAD will return a clone with an AutoDef<T>; the cloneNonAD a clone with <T>. An AipsError will be thrown if the cloneAD() or cloneNonAD() is not implemented for a specific function.

Implements casacore::Function< AutoDiff< T > >.

template<class T >
virtual Function<typename FunctionTraits<AutoDiff<T> >::DiffType>* casacore::Gaussian3D_PS< AutoDiff< T > >::cloneAD ( ) const
inlinevirtual

Reimplemented from casacore::Function< AutoDiff< T > >.

Definition at line 256 of file Gaussian3D.h.

template<class T >
virtual Function<typename FunctionTraits<AutoDiff<T> >::BaseType>* casacore::Gaussian3D_PS< AutoDiff< T > >::cloneNonAD ( ) const
inlinevirtual

Reimplemented from casacore::Function< AutoDiff< T > >.

Definition at line 260 of file Gaussian3D.h.

template<class T >
virtual AutoDiff<T> casacore::Gaussian3D_PS< AutoDiff< T > >::eval ( typename Function< AutoDiff< T > >::FunctionArg  x) const
virtual
template<class T >
Gaussian3D_PS<AutoDiff<T> >& casacore::Gaussian3D_PS< AutoDiff< T > >::operator= ( const Gaussian3D_PS< AutoDiff< T > > &  other)
template<class T >
T casacore::Gaussian3D_PS< AutoDiff< T > >::sq ( v) const
private

The documentation for this class was generated from the following file: