LORENE
|
Metric for tensor calculation. More...
#include <metric.h>
Public Member Functions | |
Metric (const Sym_tensor &tens) | |
Standard constructor from a Sym_tensor . More... | |
Metric (const Metric &met) | |
Copy constructor. More... | |
Metric (const Map &, FILE *) | |
Constructor from a file (see sauve(FILE*) ) More... | |
virtual | ~Metric () |
Destructor. More... | |
void | operator= (const Metric &met) |
Assignment to another Metric. More... | |
virtual void | operator= (const Sym_tensor &tens) |
Assignment from a Sym_tensor . More... | |
const Map & | get_mp () const |
Returns the mapping. More... | |
virtual const Sym_tensor & | cov () const |
Read-only access to the covariant representation. More... | |
virtual const Sym_tensor & | con () const |
Read-only access to the contravariant representation. More... | |
virtual const Connection & | connect () const |
Returns the connection. More... | |
const Sym_tensor & | ricci () const |
Returns the Ricci tensor (given by the Connection p_connect ) More... | |
virtual const Scalar & | ricci_scal () const |
Returns the Ricci scalar. More... | |
virtual const Vector & | radial_vect () const |
Returns the radial vector normal to a spherical slicing and pointing toward spatial infinity. More... | |
virtual const Scalar & | determinant () const |
Returns the determinant. More... | |
virtual void | sauve (FILE *) const |
Save in a file. More... | |
Protected Member Functions | |
Metric (const Map &mpi) | |
Simplified constructor used by derived classes. More... | |
void | del_deriv () const |
Deletes all the derived quantities. More... | |
void | set_der_0x0 () const |
Sets to 0x0 all the pointers on derived quantities. More... | |
void | del_tensor_depend () const |
Deletes all the derivative members of the Tensor contained in tensor_depend . More... | |
void | set_tensor_depend_0x0 () const |
Sets all elements of tensor_depend to 0x0. More... | |
virtual ostream & | operator>> (ostream &) const |
Operator >> (virtual function called by the operator <<). More... | |
Protected Attributes | |
const Map *const | mp |
Reference mapping. More... | |
Sym_tensor * | p_met_cov |
Pointer on the contravariant representation. More... | |
Sym_tensor * | p_met_con |
Pointer on the covariant representation. More... | |
Connection * | p_connect |
Connection associated with the metric. More... | |
Scalar * | p_ricci_scal |
Pointer on the Ricci scalar. More... | |
Vector * | p_radial_vect |
Pointer to the radial vector normal to a spherical slicing and pointing toward spatial infinity. More... | |
Scalar * | p_determinant |
Pointer on the determinant. More... | |
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 . More... | |
Friends | |
class | Tensor |
ostream & | operator<< (ostream &, const Metric &) |
Display. More... | |
|
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 107 of file metric.C.
References Lorene::Tensor::get_index_type(), p_met_con, p_met_cov, set_der_0x0(), and set_tensor_depend_0x0().
Lorene::Metric::Metric | ( | const Metric & | met | ) |
Copy constructor.
Definition at line 128 of file metric.C.
References p_met_con, p_met_cov, set_der_0x0(), and set_tensor_depend_0x0().
Lorene::Metric::Metric | ( | const Map & | mpi, |
FILE * | |||
) |
|
explicitprotected |
Simplified constructor used by derived classes.
Definition at line 150 of file metric.C.
References set_der_0x0(), and set_tensor_depend_0x0().
|
virtual |
Destructor.
Definition at line 163 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 293 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 304 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 283 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 179 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 200 of file metric.C.
References Lorene::Tensor::del_derive_met(), Lorene::Tensor::get_place_met(), set_tensor_depend_0x0(), and tensor_depend.
|
virtual |
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 395 of file metric.C.
References cov(), mp, and p_determinant.
|
inline |
void Lorene::Metric::operator= | ( | const Metric & | met | ) |
|
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 249 of file metric.C.
References del_deriv(), Lorene::Tensor::get_index_type(), Lorene::Tensor::get_mp(), mp, p_met_con, and p_met_cov.
|
protectedvirtual |
Operator >> (virtual function called by the operator <<).
Reimplemented in Lorene::Metric_flat.
Definition at line 449 of file metric.C.
References p_connect, p_determinant, p_met_con, p_met_cov, and p_ricci_scal.
|
virtual |
Returns the radial vector normal to a spherical slicing and pointing toward spatial infinity.
Definition at line 365 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 341 of file metric.C.
References connect(), and Lorene::Connection::ricci().
|
virtual |
Returns the Ricci scalar.
Reimplemented in Lorene::Metric_flat.
Definition at line 353 of file metric.C.
References p_ricci_scal, and ricci().
|
virtual |
Save in a file.
Reimplemented in Lorene::Metric_flat.
Definition at line 417 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 191 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 211 of file metric.C.
References tensor_depend.
|
friend |
|
protected |
|
mutableprotected |
Connection associated with the metric.
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |