Directional.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2005 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/Util/genutil/Directional.h
10 
11 #ifndef __Directional_H
12 #define __Directional_H
13 
14 #include "Mount.h"
15 
17 class Directional : public Mount
18 {
19 public:
20 
22  Directional ();
23 
25 
36  virtual double get_vertical () const;
37 
39  double get_parallactic_angle () const;
40 
41 protected:
42 
44  virtual Matrix<3,3,double>
45  get_basis (const Vector<3,double>& from_source) const = 0;
46 
48  void build () const;
49 
51  mutable double vertical;
52 };
53 
54 #endif
Directional antennae.
Definition: Directional.h:17
double get_parallactic_angle() const
Synonym for vertical angle.
Definition: Directional.C:28
virtual double get_vertical() const
Get the counter-clockwise angle from north toward zenith in radians.
Definition: Directional.C:22
void build() const
Lazily evaluate.
Definition: Directional.C:33
Base class of antenna/telescope mount types.
Definition: Mount.h:20
A convenient exception handling class.
Definition: Error.h:54
double vertical
The parallactic angle in radians.
Definition: Directional.h:56
virtual Matrix< 3, 3, double > get_basis(const Vector< 3, double > &from_source) const =0
Get the receptor basis in the reference frame of the observatory.
virtual void build() const
Lazily evaluate lst and hour_angle.
Definition: Mount.C:106
Directional()
Default constructor.
Definition: Directional.C:17

Generated using doxygen 1.8.17