Barycentre.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2010 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/Util/genutil/Barycentre.h
10
11#ifndef __Baricentre_H
12#define __Baricentre_H
13
14#include "MJD.h"
15#include "sky_coord.h"
16#include "Vector.h"
17
18class Barycentre
19{
20 public:
21
22 Barycentre ();
23
24 void set_epoch (const MJD&);
25 void set_coordinates (const sky_coord&);
26 void set_observatory_xyz (double x, double y, double z);
27
35 double get_Doppler () const;
36 MJD get_barycentric_epoch () const;
37
39 Vector<3,double> get_geocentric_velocity(const MJD&) const;
40
41 bool verbose;
42
43 private:
44
45 MJD epoch;
46 sky_coord coordinates;
47 Vector<3, double> observatory;
48
49 void build () const;
50 mutable bool built;
51 mutable double Doppler;
52 mutable MJD barycentric_epoch;
53};
54
55#endif

Generated using doxygen 1.14.0