GR Engine
A physics engine in curved space-time
 All Classes Files Functions Variables
schw.h
Go to the documentation of this file.
1 #ifndef __SCHW_H__
2 #define __SCHW_H__
3 
8 #include "geometry.h"
9 #include "kerr_coords.h"
10 
14 class SchwManifold : public Manifold
15 {
16  double M;
17 public:
18  SchwManifold(double);
19  ~SchwManifold();
20 
21  double getMass();
22  void setMass(double _M);
23 
25 };
26 
30 class SchwEFMetric : public Metric
31 {
32  SchwManifold* m;
33 protected:
34  double _g(int, int, Point);
35  double _invg(int, int, Point);
36  double _christoffel(int, int, int, Point);
37 
38 public:
39  enum { coordU = 0, coordR = 1, coordTheta = 2, coordPhi = 3 };
40 
41  SchwEFMetric(int cS, SchwManifold* _m);
42  ~SchwEFMetric();
43 };
44 
48 class SchwNearPoleMetric : public Metric
49 {
50  SchwManifold* m;
51 protected:
52  double _g(int, int, Point);
53  double _invg(int, int, Point);
54  double _christoffel(int, int, int, Point);
55 
56 public:
57  enum { coordU = 0, coordR = 1, coordX = 2, coordY = 3 };
58 
59  SchwNearPoleMetric(int cS, SchwManifold* _m);
61 };
62 
63 #endif
64