casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
casacore::MVRadialVelocity Class Reference

Internal value for MRadialVelocity. More...

#include <MVRadialVelocity.h>

Inheritance diagram for casacore::MVRadialVelocity:

Public Member Functions

 MVRadialVelocity ()
 Default constructor: generate a zero value. More...
 MVRadialVelocity (const MVRadialVelocity &other)
 Copy constructor. More...
MVRadialVelocityoperator= (const MVRadialVelocity &other)
 Copy assignment. More...
 MVRadialVelocity (Double d)
 Constructor from Double (assume m/s) More...
 MVRadialVelocity (const Quantity &other)
 Constructor from Quantum. More...
 MVRadialVelocity (const Quantum< Vector< Double > > &other)
 MVRadialVelocity (const Vector< Double > &other)
 Constructor from Vector. More...
 MVRadialVelocity (const Vector< Quantity > &other)
 ~MVRadialVelocity ()
 Destructor. More...
 operator Double () const
 Conversion operator. More...
MVRadialVelocityoperator+= (const MVRadialVelocity &other)
 Addition. More...
MVRadialVelocityoperator-= (const MVRadialVelocity &other)
Bool operator== (const MVRadialVelocity &other) const
 Comparisons. More...
Bool operator!= (const MVRadialVelocity &other) const
Bool near (const MVRadialVelocity &other, Double tol=1e-13) const
Bool nearAbs (const MVRadialVelocity &other, Double tol=1e-13) const
virtual uInt type () const
 Tell me your type. More...
virtual void print (ostream &os) const
 Print data. More...
virtual MeasValueclone () const
 Clone. More...
Double getValue () const
 Adjust value: taken from base class, a NOP. More...
Quantity get () const
 Get quantity in m/s. More...
Quantity get (const Unit &unit) const
 Get the wave characteristics in (recognised) specified units. More...
virtual Vector< DoublegetVector () const
 Get the value in internal units. More...
virtual void putVector (const Vector< Double > &in)
 Set the value from internal units (set 0 for empty vector) More...
virtual Vector< Quantum< Double > > getRecordValue () const
 Get the internal value as a Vector<Quantity>. More...
virtual Bool putValue (const Vector< Quantum< Double > > &in)
 Set the internal value if correct values and dimensions. More...
Vector< DoubleshiftFrequency (const Vector< Double > &freq) const
 Shift the input frequencies to the output frequencies. More...
Quantum< Vector< Double > > shiftFrequency (const Quantum< Vector< Double > > &freq) const
- Public Member Functions inherited from casacore::MeasValue
void dummy_constr () const
 Each derived class should have at least the following constructors: More...
virtual ~MeasValue ()
 Destructor. More...
void dummy_operator () const
 The following operators should be present at least. More...
virtual Vector< Quantum< Double > > getXRecordValue () const
virtual Vector< Quantum< Double > > getTMRecordValue () const
virtual void adjust ()
 Some of the Measure values used need the occasional adjustments to proper values. More...
virtual void adjust (Double &val)
 Adjust value and return a normalisation value. More...
virtual void readjust (Double val)
 Re-adjust, i.e. More...

Static Public Member Functions

static void assure (const MeasValue &in)

Private Member Functions

Double makeF (const Unit &dt) const
 Get correct data type conversion factor from input Quantum. More...

Private Attributes

Double val
 Value. More...

Detailed Description

Internal value for MRadialVelocity.

Intended use:

Public interface

Review Status

Reviewed By:
Date Reviewed:
Test programs:



From Measure, Value and Radial Velocity


An MVRadialVelocity is a simple Double, to be used in the MRadialVelocity measure. Requirements can be found in the MeasValue base class.
The only reasonable constructor is (but all MeasValue constructors are present) MVRadialVelocity(Double); and an operator Double takes care of all other possibilities. Its external use is for MeasConvert, to distinguish between input in internal Measure units, and values which have to have units applied.
The MVRadialVelocity(Quantum) constructors recognise the type of wave characteristics presented from its units. Recognised are:

The velocity is returned in m/s with getValue(); or as a Quantity in m/s with get(); or in the specified units with get(unit).

A shiftFrequency() method can shift frequencies.


See MRadialVelocity


To aid coordinate transformations possibilities

Definition at line 94 of file MVRadialVelocity.h.

Constructor & Destructor Documentation

casacore::MVRadialVelocity::MVRadialVelocity ( )

Default constructor: generate a zero value.

casacore::MVRadialVelocity::MVRadialVelocity ( const MVRadialVelocity other)

Copy constructor.

casacore::MVRadialVelocity::MVRadialVelocity ( Double  d)

Constructor from Double (assume m/s)

casacore::MVRadialVelocity::MVRadialVelocity ( const Quantity other)

Constructor from Quantum.

casacore::MVRadialVelocity::MVRadialVelocity ( const Quantum< Vector< Double > > &  other)
casacore::MVRadialVelocity::MVRadialVelocity ( const Vector< Double > &  other)

Constructor from Vector.

A zero value will be taken for an empty vector, the first element for a quantum vector.

Thrown Exceptions

casacore::MVRadialVelocity::MVRadialVelocity ( const Vector< Quantity > &  other)
casacore::MVRadialVelocity::~MVRadialVelocity ( )


Member Function Documentation

static void casacore::MVRadialVelocity::assure ( const MeasValue in)
virtual MeasValue* casacore::MVRadialVelocity::clone ( ) const


Implements casacore::MeasValue.

Quantity casacore::MVRadialVelocity::get ( ) const

Get quantity in m/s.

Quantity casacore::MVRadialVelocity::get ( const Unit unit) const

Get the wave characteristics in (recognised) specified units.

virtual Vector<Quantum<Double> > casacore::MVRadialVelocity::getRecordValue ( ) const

Get the internal value as a Vector<Quantity>.

Usable in records. The getXRecordValue() gets additional information for records. Note that the Vectors could be empty.

Implements casacore::MeasValue.

Double casacore::MVRadialVelocity::getValue ( ) const

Adjust value: taken from base class, a NOP.

Get value in m/s

virtual Vector<Double> casacore::MVRadialVelocity::getVector ( ) const

Get the value in internal units.

Implements casacore::MeasValue.

Double casacore::MVRadialVelocity::makeF ( const Unit dt) const

Get correct data type conversion factor from input Quantum.

Bool casacore::MVRadialVelocity::near ( const MVRadialVelocity other,
Double  tol = 1e-13 
) const
Bool casacore::MVRadialVelocity::nearAbs ( const MVRadialVelocity other,
Double  tol = 1e-13 
) const
casacore::MVRadialVelocity::operator Double ( ) const

Conversion operator.

Bool casacore::MVRadialVelocity::operator!= ( const MVRadialVelocity other) const
MVRadialVelocity& casacore::MVRadialVelocity::operator+= ( const MVRadialVelocity other)


MVRadialVelocity& casacore::MVRadialVelocity::operator-= ( const MVRadialVelocity other)
MVRadialVelocity& casacore::MVRadialVelocity::operator= ( const MVRadialVelocity other)

Copy assignment.

Bool casacore::MVRadialVelocity::operator== ( const MVRadialVelocity other) const


virtual void casacore::MVRadialVelocity::print ( ostream &  os) const

Print data.

Implements casacore::MeasValue.

virtual Bool casacore::MVRadialVelocity::putValue ( const Vector< Quantum< Double > > &  in)

Set the internal value if correct values and dimensions.

Implements casacore::MeasValue.

virtual void casacore::MVRadialVelocity::putVector ( const Vector< Double > &  in)

Set the value from internal units (set 0 for empty vector)

Implements casacore::MeasValue.

Vector<Double> casacore::MVRadialVelocity::shiftFrequency ( const Vector< Double > &  freq) const

Shift the input frequencies to the output frequencies.

In the case of simple Double inputs, it is assumed that the values are linearly dependent on frequency. I.e. frequencies given as wavelength or time cannot be used.

Quantum<Vector<Double> > casacore::MVRadialVelocity::shiftFrequency ( const Quantum< Vector< Double > > &  freq) const
virtual uInt casacore::MVRadialVelocity::type ( ) const

Tell me your type.

Implements casacore::MeasValue.

Member Data Documentation

Double casacore::MVRadialVelocity::val


Definition at line 185 of file MVRadialVelocity.h.

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