LORENE
|
Metric for tensor calculation. More...
#include <metric.h>
Public Member Functions | |
Metric (const Sym_tensor &tens) | |
Standard constructor from a Sym_tensor . | |
Metric (const Metric &met) | |
Copy constructor. | |
Metric (const Map &, FILE *) | |
Constructor from a file (see sauve(FILE*) ) | |
virtual | ~Metric () |
Destructor. | |
void | operator= (const Metric &met) |
Assignment to another Metric. | |
virtual void | operator= (const Sym_tensor &tens) |
Assignment from a Sym_tensor . | |
const Map & | get_mp () const |
Returns the mapping. | |
virtual const Sym_tensor & | cov () const |
Read-only access to the covariant representation. | |
virtual const Sym_tensor & | con () const |
Read-only access to the contravariant representation. | |
virtual const Connection & | connect () const |
Returns the connection. | |
const Sym_tensor & | ricci () const |
Returns the Ricci tensor (given by the Connection p_connect ) | |
virtual const Scalar & | ricci_scal () const |
Returns the Ricci scalar. | |
virtual const Vector & | radial_vect () const |
Returns the radial vector normal to a spherical slicing and pointing toward spatial infinity. | |
virtual const Scalar & | determinant () const |
Returns the determinant. | |
virtual void | sauve (FILE *) const |
Save in a file. | |
Protected Member Functions | |
Metric (const Map &mpi) | |
Simplified constructor used by derived classes. | |
void | del_deriv () const |
Deletes all the derived quantities. | |
void | set_der_0x0 () const |
Sets to 0x0 all the pointers on derived quantities. | |
void | del_tensor_depend () const |
Deletes all the derivative members of the Tensor contained in tensor_depend . | |
void | set_tensor_depend_0x0 () const |
Sets all elements of tensor_depend to 0x0. | |
virtual ostream & | operator>> (ostream &) const |
Operator >> (virtual function called by the operator <<). | |
Protected Attributes | |
const Map *const | mp |
Reference mapping. | |
Sym_tensor * | p_met_cov |
Pointer on the contravariant representation. | |
Sym_tensor * | p_met_con |
Pointer on the covariant representation. | |
Connection * | p_connect |
Connection associated with the metric. | |
Scalar * | p_ricci_scal |
Pointer on the Ricci scalar. | |
Vector * | p_radial_vect |
Pointer to the radial vector normal to a spherical slicing and pointing toward spatial infinity. | |
Scalar * | p_determinant |
Pointer on the determinant. | |
const Tensor * | tensor_depend [N_TENSOR_DEPEND] |
Pointer on the dependancies, that means the array contains pointers on all the Tensor whom derivative members have been calculated using *this . | |
Friends | |
class | Tensor |
ostream & | operator<< (ostream &, const Metric &) |
Display. | |
|
explicit |
Standard constructor from a Sym_tensor
.
The symmetric tensor can be either the covariant or the contravariant representation of the metric.
Definition at line 104 of file metric.C.
References Lorene::Tensor::get_index_type(), p_met_con, p_met_cov, set_der_0x0(), and set_tensor_depend_0x0().
Copy constructor.
Definition at line 125 of file metric.C.
References p_met_con, p_met_cov, set_der_0x0(), and set_tensor_depend_0x0().
Simplified constructor used by derived classes.
Definition at line 147 of file metric.C.
References set_der_0x0(), and set_tensor_depend_0x0().
|
virtual |
Destructor.
Definition at line 160 of file metric.C.
References del_deriv(), del_tensor_depend(), p_met_con, and p_met_cov.
|
virtual |
Read-only access to the contravariant representation.
Reimplemented in Lorene::Metric_flat.
Definition at line 290 of file metric.C.
References Lorene::Sym_tensor::inverse(), p_met_con, and p_met_cov.
|
virtual |
Returns the connection.
Reimplemented in Lorene::Metric_flat.
Definition at line 301 of file metric.C.
References Lorene::Map::flat_met_cart(), Lorene::Map::flat_met_spher(), Lorene::Tensor::get_triad(), mp, p_connect, p_met_con, and p_met_cov.
|
virtual |
Read-only access to the covariant representation.
Reimplemented in Lorene::Metric_flat.
Definition at line 280 of file metric.C.
References Lorene::Sym_tensor::inverse(), p_met_con, and p_met_cov.
|
protected |
Deletes all the derived quantities.
Definition at line 176 of file metric.C.
References p_connect, p_determinant, p_radial_vect, p_ricci_scal, and set_der_0x0().
|
protected |
Deletes all the derivative members of the Tensor
contained in tensor_depend
.
Those quantities had been previously calculated using *this
.
Definition at line 197 of file metric.C.
References Lorene::Tensor::del_derive_met(), Lorene::Tensor::get_place_met(), set_tensor_depend_0x0(), and tensor_depend.
Returns the determinant.
This determinant is stored as a Scalar
although it a scalar density. To be a real scalar it must be divided by e.g. the determinant of a flat metric.
Reimplemented in Lorene::Metric_flat.
Definition at line 392 of file metric.C.
References cov(), mp, and p_determinant.
|
virtual |
Assignment from a Sym_tensor
.
The allocated representation depends on the type of the input tensor indices. All the other members are deleted.
Reimplemented in Lorene::Metric_flat.
Definition at line 246 of file metric.C.
References del_deriv(), Lorene::Tensor::get_index_type(), Lorene::Tensor::get_mp(), mp, p_met_con, and p_met_cov.
Operator >> (virtual function called by the operator <<).
Reimplemented in Lorene::Metric_flat.
Definition at line 446 of file metric.C.
References p_connect, p_determinant, p_met_con, p_met_cov, and p_ricci_scal.
Returns the radial vector normal to a spherical slicing and pointing toward spatial infinity.
Definition at line 362 of file metric.C.
References p_radial_vect, Lorene::Vector::set(), Lorene::sqrt(), and Lorene::Scalar::std_spectral_base().
const Sym_tensor & Lorene::Metric::ricci | ( | ) | const |
Returns the Ricci tensor (given by the Connection
p_connect
)
Definition at line 338 of file metric.C.
References connect(), and Lorene::Connection::ricci().
Returns the Ricci scalar.
Reimplemented in Lorene::Metric_flat.
Definition at line 350 of file metric.C.
References p_ricci_scal, and ricci().
Save in a file.
Reimplemented in Lorene::Metric_flat.
Definition at line 414 of file metric.C.
References Lorene::fwrite_be(), p_met_con, p_met_cov, and Lorene::Tensor_sym::sauve().
|
protected |
Sets to 0x0
all the pointers on derived quantities.
Definition at line 188 of file metric.C.
References p_connect, p_determinant, p_radial_vect, and p_ricci_scal.
|
protected |
Sets all elements of tensor_depend
to 0x0.
Definition at line 208 of file metric.C.
References tensor_depend.
|
mutableprotected |
Connection associated with the metric.
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |