casacore
Loading...
Searching...
No Matches
casacore::DiracDFunction< T > Class Template Reference

More...

#include <DiracDFunction.h>

Public Member Functions

 DiracDFunction ()
 Constructs the DiracDFunction, Defaults: height=1, center=0.
 DiracDFunction (const T &height)
 DiracDFunction (const T &height, const T &center)
 DiracDFunction (const DiracDFunction< T > &other)
 Copy constructor (deep copy).
template<class W>
 DiracDFunction (const DiracDFunction< W > &other)
DiracDFunction< T > & operator= (const DiracDFunction< T > &other)
 Copy assignment (deep copy).
virtual ~DiracDFunction ()
 Destructor.
virtual T eval (typename Function< T >::FunctionArg x) const
 Evaluate the DiracD at x.
virtual Function< T > * clone () const
 Return a copy of this object from the heap.
virtual Function< typename FunctionTraits< T >::DiffType > * cloneAD () const
virtual Function< typename FunctionTraits< T >::BaseType > * cloneNonAD () const
Public Member Functions inherited from casacore::DiracDParam< T >
 DiracDParam ()
 Constructs the DiracD, Defaults: height=1, center=0.
 DiracDParam (const T &height)
 DiracDParam (const T &height, const T &center)
 DiracDParam (const DiracDParam< T > &other)
 Copy constructor (deep copy).
template<class W>
 DiracDParam (const DiracDParam< W > &other)
DiracDParam< T > & operator= (const DiracDParam< T > &other)
 Copy assignment (deep copy).
virtual ~DiracDParam ()
 Destructor.
virtual uInt ndim () const
 Returns the number of dimensions of function.
virtual const Stringname () const
 Give name of function.
Public Member Functions inherited from casacore::Function< T, U >
 Function ()
 Constructors.
 Function (const uInt n)
 Function (const Vector< T > &in)
 Function (const FunctionParam< T > &other)
template<class W, class X>
 Function (const Function< W, X > &other)
virtual ~Function ()
 Destructor.
uInt nparameters () const
 Returns the number of parameters.
virtual U eval (FunctionArg x) const =0
 Evaluate the function object.
T & operator[] (const uInt n)
 Manipulate the nth parameter (0-based) with no index check.
const T & operator[] (const uInt n) const
virtual U operator() () const
 Evaluate this function object at xor at x, y.
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.
const Boolmask (const uInt n) const
const FunctionParam< T > & parameters () const
 Return the parameter interface.
FunctionParam< T > & parameters ()
const Vector< ArgType > & argp () const
 Get arg_p and parset_p.
Bool parsetp () const
void lockParam ()
 Compiler cannot always find the correct 'const' version of parameter access.
void unlockParam ()
virtual void setMode (const RecordInterface &mode)
 get/set the function mode.
virtual void getMode (RecordInterface &mode) const
virtual Bool hasMode () const
 return True if the implementing function supports a mode.
ostream & print (ostream &os) const
 Print the function (i.e.
Public Member Functions inherited from casacore::Functional< FunctionTraits< T >::ArgType, T >
virtual ~Functional ()
 Destructor.
virtual T operator() (const FunctionTraits< T >::ArgType &x) const=0
 Map a Domain x into a Range y value.
Public Member Functions inherited from casacore::Functional< Vector< FunctionTraits< T >::ArgType >, T >
virtual ~Functional ()
 Destructor.
virtual T operator() (const Vector< FunctionTraits< T >::ArgType > &x) const=0
 Map a Domain x into a Range y value.

Additional Inherited Members

Public Types inherited from casacore::DiracDParam< T >
enum  {
  HEIGHT ,
  CENTER
}
 Parameter numbers. More...
Public Types inherited from casacore::Function< T, U >
typedef FunctionTraits< T >::ArgType ArgType
typedef const ArgTypeFunctionArg
Protected Attributes inherited from casacore::Function< T, U >
FunctionParam< T > param_p
 The parameters and masks.
Vector< ArgTypearg_p
 Aid for non-contiguous argument storage.
Bool parset_p
 Indicate parameter written.
Bool locked_p
 Indicate that parameters are expected to be locked from changing.

Detailed Description

template<class T>
class casacore::DiracDFunction< T >

A one dimensional Dirac delta function

Intended use:

Public interface

Review Status

Test programs:
tFunctionHolder

Prerequisite

Etymology

A 1-dimensional Dirac delta.

Synopsis

A DiracD is described by a height, a center and a width (halfwidth). The value is:

height (|x-center| == 0.0)
0 (|x-center| != 0.0)

The parameters are enumerated by HEIGHT, CENTER and WIDTH. They have default values of (1, 0).

Example

DiracDFunction<Double> sf(5.0, 25.0);
sf(25); // = 5.0
DiracDFunction()
Constructs the DiracDFunction, Defaults: height=1, center=0.

Template Type Argument Requirements (T)

  • T should have standard numerical operators

Thrown Exceptions

  • AipsError if incorrect parameter number specified.

Definition at line 83 of file DiracDFunction.h.

Constructor & Destructor Documentation

◆ DiracDFunction() [1/5]

template<class T>
casacore::DiracDFunction< T >::DiracDFunction ( )
inline

Constructs the DiracDFunction, Defaults: height=1, center=0.


Warning: Could not use default arguments that worked both with gcc and IRIX

Definition at line 92 of file DiracDFunction.h.

References casacore::DiracDParam< T >::DiracDParam().

Referenced by clone(), cloneAD(), cloneNonAD(), DiracDFunction(), DiracDFunction(), and operator=().

◆ DiracDFunction() [2/5]

template<class T>
casacore::DiracDFunction< T >::DiracDFunction ( const T & height)
inlineexplicit

Definition at line 93 of file DiracDFunction.h.

References casacore::DiracDParam< T >::DiracDParam().

◆ DiracDFunction() [3/5]

template<class T>
casacore::DiracDFunction< T >::DiracDFunction ( const T & height,
const T & center )
inline

Definition at line 95 of file DiracDFunction.h.

References casacore::DiracDParam< T >::DiracDParam().

◆ DiracDFunction() [4/5]

template<class T>
casacore::DiracDFunction< T >::DiracDFunction ( const DiracDFunction< T > & other)
inline

Copy constructor (deep copy).

Definition at line 101 of file DiracDFunction.h.

References DiracDFunction(), and casacore::DiracDParam< T >::DiracDParam().

◆ DiracDFunction() [5/5]

template<class T>
template<class W>
casacore::DiracDFunction< T >::DiracDFunction ( const DiracDFunction< W > & other)
inline

◆ ~DiracDFunction()

template<class T>
virtual casacore::DiracDFunction< T >::~DiracDFunction ( )
inlinevirtual

Destructor.

Definition at line 111 of file DiracDFunction.h.

Member Function Documentation

◆ clone()

template<class T>
virtual Function< T > * casacore::DiracDFunction< T >::clone ( ) const
inlinevirtual

Return a copy of this object from the heap.

The caller is responsible for deleting this pointer.

Implements casacore::Function< T, U >.

Definition at line 124 of file DiracDFunction.h.

References DiracDFunction().

◆ cloneAD()

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

Reimplemented from casacore::Function< T, U >.

Definition at line 125 of file DiracDFunction.h.

References DiracDFunction().

◆ cloneNonAD()

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

Reimplemented from casacore::Function< T, U >.

Definition at line 127 of file DiracDFunction.h.

References DiracDFunction().

◆ eval()

template<class T>
virtual T casacore::DiracDFunction< T >::eval ( typename Function< T >::FunctionArg x) const
virtual

Evaluate the DiracD at x.

If a vector is used as the argument only its first element is used.

◆ operator=()

template<class T>
DiracDFunction< T > & casacore::DiracDFunction< T >::operator= ( const DiracDFunction< T > & other)
inline

Copy assignment (deep copy).

Definition at line 107 of file DiracDFunction.h.

References DiracDFunction(), and casacore::DiracDParam< T >::operator=().


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