28 #ifndef SCIMATH_GAUSSIAN2D_H
29 #define SCIMATH_GAUSSIAN2D_H
247 #define Gaussian2D_PS Gaussian2D
287 Gaussian2D_PS<AutoDiff<T> > &
311 *cloneNonAD()
const {
338 #ifndef CASACORE_NO_AUTO_TEMPLATES
339 #include <casacore/scimath/Functionals/Gaussian2D.tcc>
340 #include <casacore/scimath/Functionals/Gaussian2D2.tcc>
341 #endif //# CASACORE_NO_AUTO_TEMPLATES
T height() const
Get or set the peak height of the Gaussian.
virtual Function< typename FunctionTraits< T >::BaseType > * cloneNonAD() const
A two dimensional Gaussian class.
Parameter handling for 2 dimensional Gaussian class.
PtrHolder< T > & operator=(const PtrHolder< T > &other)
Gaussian2D(const Gaussian2D< T > &other)
Copy constructor (deep copy)
Vector< T > width() const
Set or get the FWHM of the Gaussian.
Gaussian2D< T > & operator=(const Gaussian2D< T > &other)
Copy assignment (deep copy)
Gaussian2DParam< T > & operator=(const Gaussian2DParam< T > &other)
Copy assignment (deep copy)
Gaussian2D()
Constructs the two dimensional Gaussians.
LatticeExprNode pa(const LatticeExprNode &left, const LatticeExprNode &right)
This function finds 180/pi*atan2(left,right)/2.
Numerical functional interface class.
Gaussian2D(const T &height, const T &xCenter, const T &yCenter, const T &majorAxis, const T &axialRatio, const T &pa)
Class that computes partial derivatives by automatic differentiation.
virtual ~Gaussian2D()
Destructor.
virtual Function< typename FunctionTraits< T >::DiffType > * cloneAD() const
virtual T eval(typename Function< T >::FunctionArg x) const
Evaluate the Gaussian at x.
Gaussian2D(const Gaussian2D< W > &other)
Gaussian2D(const T &height, const Vector< T > ¢er, const Vector< T > &width, const T &pa)
Vector< T > center() const
Get or set the center ordinate of the Gaussian.
virtual Function< T > * clone() const
Return a copy of this object from the heap.
Gaussian2D_PS(const AutoDiff< T > &height, const Vector< AutoDiff< T > > ¢er, const Vector< AutoDiff< T > > &width, const AutoDiff< T > &pa)