Go to the documentation of this file.
28 #ifndef CASA_MVEARTHMAGNETIC_H
29 #define CASA_MVEARTHMAGNETIC_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/casa/Quanta/MVPosition.h>
208 const Unit &unit)
const;
214 const Unit &unit)
const;
220 virtual void print(ostream &os)
const;
Double operator*(const MVEarthMagnetic &other) const
Multiplication defined as in-product.
MVEarthMagnetic(const Vector< Quantity > &other)
MVEarthMagnetic(const Quantity &l, Double angle0, Double angle1)
Creates the EarthMagnetic from specified (azimuth,elevation) angles and length.
virtual Double radius()
Get modulus of EarthMagnetic.
virtual void print(ostream &os) const
Print data.
MVEarthMagnetic(const MVPosition &other)
Copy constructor.
MVEarthMagnetic & operator-=(const MVEarthMagnetic &right)
Double separation(const MVEarthMagnetic &other) const
Get the angular separation between two directions.
Double earthMagneticAngle(const MVEarthMagnetic &other) const
Get the EarthMagnetic angle between the directions.
Base class for values in a Measure.
virtual void putVector(const Vector< Double > &in)
Set the value from internal units (set 0 for empty vector)
Quantity separation(const MVEarthMagnetic &other, const Unit &unit) const
Quantity getLength() const
Generate the length.
const Vector< Double > & getValue() const
Generate a 3-vector of x,y,z in tesla.
MVEarthMagnetic & operator=(const MVEarthMagnetic &other)
Copy assignment.
virtual Vector< Double > getVector() const
Get the value in internal units.
Bool operator!=(const MVEarthMagnetic &other) const
static void assure(const MeasValue &in)
virtual void adjust(Double &res)
Adjustment with returned factor.
Quantum< Vector< Double > > getAngle() const
Generate angle 2-vector (in rad)
A 3D Earth magnetic field vector.
~MVEarthMagnetic()
Destructor.
MVEarthMagnetic(const Quantity &l, const Quantity &angle0, const Quantity &angle1)
Creates the EarthMagnetic from specified angles and length.
MVEarthMagnetic crossProduct(const MVEarthMagnetic &other) const
Produce the cross product.
MVEarthMagnetic(const Quantity &l)
virtual Bool putValue(const Vector< Quantum< Double > > &in)
Set the internal value if correct values and dimensions.
MVEarthMagnetic(Double in0)
Creates a vector with specified length towards pole.
MVEarthMagnetic()
Default constructor generates a (0,0,0) EarthMagnetic.
this file contains all the compiler specific defines
MVEarthMagnetic(const Vector< Double > &other)
Create from specified length and/or angles and/or EarthMagnetic.
MVEarthMagnetic operator+(const MVEarthMagnetic &right) const
virtual void adjust()
Normalise direction aspects by adjusting the length to 1.
MVEarthMagnetic operator-() const
Addition and subtraction.
const Double e
e and functions thereof:
MVEarthMagnetic(const Quantum< Vector< Double > > &angle)
If not enough angles: pole assumed (if none), or elevation =0 (if 1)
MVEarthMagnetic(Double in0, Double in1, Double in2)
Creates a specified vector.
bool Bool
Define the standard types used by Casacore.
Quantum< Vector< Double > > getAngle(const Unit &unit) const
and with specified units
Quantity getLength(const Unit &unit) const
and generate it with the specified units
Vector< Double > get() const
Generate a 3-vector of coordinates (length(T), angles(rad))
Bool operator==(const MVEarthMagnetic &other) const
Equality comparisons.
Bool near(const MVEarthMagnetic &other, Double tol=1e-13) const
virtual uInt type() const
Tell me your type.
MVEarthMagnetic & operator+=(const MVEarthMagnetic &right)
MVBaseline operator*(const RotMatrix &left, const MVBaseline &right)
Rotate a Baseline vector with rotation matrix and other multiplications.
virtual MeasValue * clone() const
Clone.
Quantity earthMagneticAngle(const MVEarthMagnetic &other, const Unit &unit) const
MVEarthMagnetic operator-(const MVEarthMagnetic &right) const
virtual Vector< Quantum< Double > > getRecordValue() const
Get the internal value as a Vector<Quantity>.
MVEarthMagnetic(const Quantity &l, const Quantum< Vector< Double > > &angle)
Bool nearAbs(const MVEarthMagnetic &other, Double tol=1e-13) const
Bool near(const MVEarthMagnetic &other, Quantity tol) const
virtual void readjust(Double res)
Re-adjust using factor given.