Class representing a metric on a manifold. More...
#include <geometry.h>
Public Member Functions | |
| Metric (int cS) | |
| Constructor. More... | |
| virtual | ~Metric () |
| Destructor. | |
| double | g (int i, int j, Point p) |
| Component of the metric. More... | |
| double | invg (int i, int j, Point p) |
| Component of the inverse metric. More... | |
| double | christoffel (int i, int j, int k, Point p) |
| Component of the Christoffel symbol. More... | |
| double | g (vector4 u, vector4 v, Point p) |
| Dot product. More... | |
| vector4 | christoffel (vector4 u, vector4 v, Point p) |
| Christoffel symbol acting on two vectors. More... | |
Protected Member Functions | |
| double | dg (int i, int j, int k, Point p) |
| Partial derivative of the metric. More... | |
| virtual double | _g (int i, int j, Point p)=0 |
| Component of the metric. More... | |
| virtual double | _invg (int i, int j, Point p)=0 |
| Component of the inverse metric. More... | |
| virtual double | _christoffel (int i, int j, int k, Point p)=0 |
| Component of the Christoffel symbol. More... | |
Protected Attributes | |
| int | coordSystem |
Class representing a metric on a manifold.
This class represents the metric tensor on a manifold, expressed in some coordinate system.
| Metric::Metric | ( | int | cS | ) |
Constructor.
| cS | Coordinate system. |
|
protectedpure virtual |
Component of the Christoffel symbol.
Function calculating a component of the Christoffel symbol.
| i | First index of the component |
| j | Second index of the component |
| k | Third index of the component |
| p | The point at which the component is evaluated |
Implemented in KerrNearPoleMetric, SchwNearPoleMetric, KerrEFMetric, and SchwEFMetric.
|
protectedpure virtual |
Component of the metric.
Function calculating a component of the metric.
| i | First index of the component |
| j | Second index of the component |
| p | The point at which the component is evaluated |
Implemented in KerrNearPoleMetric, SchwNearPoleMetric, KerrEFMetric, and SchwEFMetric.
|
protectedpure virtual |
Component of the inverse metric.
Function calculating a component of the inverse metric.
| i | First index of the component |
| j | Second index of the component |
| p | The point at which the component is evaluated |
Implemented in KerrNearPoleMetric, SchwNearPoleMetric, KerrEFMetric, and SchwEFMetric.
| double Metric::christoffel | ( | int | i, |
| int | j, | ||
| int | k, | ||
| Point | p | ||
| ) |
Component of the Christoffel symbol.
Function returning a component of the Christoffel symbol Uses internal caching.
| i | First index of the component |
| j | Second index of the component |
| k | Third index of the component |
| p | The point at which the component is evaluated |
Christoffel symbol acting on two vectors.
Function returning result of contraction of the Christoffel symbol with two vectors.
| u | First vector |
| v | Second vector |
| p | The point at which the dot product is evaluated |
|
protected |
Partial derivative of the metric.
Returns partial derivative of a component of the metric with respect to some coordinate.
| i | First index of the component |
| j | Second index of the component |
| k | The index of the coordinate, with respect to which the derivative is calculated |
| p | The point at which the derivative is evaluated |
| double Metric::g | ( | int | i, |
| int | j, | ||
| Point | p | ||
| ) |
Component of the metric.
Function returning a component of the metric Uses internal caching.
| i | First index of the component |
| j | Second index of the component |
| p | The point at which the component is evaluated |
Dot product.
Function returning the dot product of two vectors.
| u | First vector |
| v | Second vector |
| p | The point at which the dot product is evaluated |
| double Metric::invg | ( | int | i, |
| int | j, | ||
| Point | p | ||
| ) |
Component of the inverse metric.
Function returning a component of the inverse metric Uses internal caching.
| i | First index of the component |
| j | Second index of the component |
| p | The point at which the component is evaluated |
1.8.3.1