Metric Class Reference
[Tensorial fields]

Metric for tensor calculation. More...

#include <metric.h>

Inheritance diagram for Metric:

Metric_flat List of all members.

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 Mapget_mp () const
 Returns the mapping.
virtual const Sym_tensorcov () const
 Read-only access to the covariant representation.
virtual const Sym_tensorcon () const
 Read-only access to the contravariant representation.
virtual const Connectionconnect () const
 Returns the connection.
const Sym_tensorricci () const
 Returns the Ricci tensor (given by the Connection p_connect ).
virtual const Scalarricci_scal () const
 Returns the Ricci scalar.
virtual const Vectorradial_vect () const
 Returns the radial vector normal to a spherical slicing and pointing toward spatial infinity.
virtual const Scalardeterminant () 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_tensorp_met_cov
 Pointer on the contravariant representation.
Sym_tensorp_met_con
 Pointer on the covariant representation.
Connectionp_connect
 Connection associated with the metric.
Scalarp_ricci_scal
 Pointer on the Ricci scalar.
Vectorp_radial_vect
 Pointer to the radial vector normal to a spherical slicing and pointing toward spatial infinity.
Scalarp_determinant
 Pointer on the determinant.
const Tensortensor_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.

Detailed Description

Metric for tensor calculation.

()

Definition at line 86 of file metric.h.


Constructor & Destructor Documentation

Metric::Metric const Sym_tensor tens  )  [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 97 of file metric.C.

References Tensor::get_index_type(), p_met_con, p_met_cov, set_der_0x0(), and set_tensor_depend_0x0().

Metric::Metric const Metric met  ) 
 

Copy constructor.

Definition at line 118 of file metric.C.

References p_met_con, p_met_cov, set_der_0x0(), and set_tensor_depend_0x0().

Metric::Metric const Map ,
FILE * 
 

Constructor from a file (see sauve(FILE*) ).

Definition at line 131 of file metric.C.

Metric::Metric const Map mpi  )  [explicit, protected]
 

Simplified constructor used by derived classes.

Definition at line 140 of file metric.C.

References set_der_0x0(), and set_tensor_depend_0x0().

Metric::~Metric  )  [virtual]
 

Destructor.

Definition at line 153 of file metric.C.

References del_deriv(), del_tensor_depend(), p_met_con, and p_met_cov.


Member Function Documentation

const Sym_tensor & Metric::con  )  const [virtual]
 

Read-only access to the contravariant representation.

Reimplemented in Metric_flat.

Definition at line 283 of file metric.C.

References Sym_tensor::inverse(), p_met_con, and p_met_cov.

const Connection & Metric::connect  )  const [virtual]
 

Returns the connection.

Reimplemented in Metric_flat.

Definition at line 294 of file metric.C.

References Map::flat_met_cart(), Map::flat_met_spher(), Tensor::get_triad(), mp, p_connect, p_met_con, and p_met_cov.

const Sym_tensor & Metric::cov  )  const [virtual]
 

Read-only access to the covariant representation.

Reimplemented in Metric_flat.

Definition at line 273 of file metric.C.

References Sym_tensor::inverse(), p_met_con, and p_met_cov.

void Metric::del_deriv  )  const [protected]
 

Deletes all the derived quantities.

Definition at line 169 of file metric.C.

References p_connect, p_determinant, p_radial_vect, p_ricci_scal, and set_der_0x0().

void Metric::del_tensor_depend  )  const [protected]
 

Deletes all the derivative members of the Tensor contained in tensor_depend .

Those quantities had been previously calculated using *this .

Definition at line 190 of file metric.C.

References tensor_depend.

const Scalar & Metric::determinant  )  const [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 Metric_flat.

Definition at line 385 of file metric.C.

References cov(), mp, and p_determinant.

const Map& Metric::get_mp  )  const [inline]
 

Returns the mapping.

Definition at line 198 of file metric.h.

References mp.

void Metric::operator= const Sym_tensor tens  )  [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 Metric_flat.

Definition at line 239 of file metric.C.

References del_deriv(), Tensor::get_index_type(), Tensor::get_mp(), mp, p_met_con, and p_met_cov.

void Metric::operator= const Metric met  ) 
 

Assignment to another Metric.

Definition at line 213 of file metric.C.

References del_deriv(), mp, p_met_con, and p_met_cov.

ostream & Metric::operator>> ostream &   )  const [protected, virtual]
 

Operator >> (virtual function called by the operator <<).

Reimplemented in Metric_flat.

Definition at line 439 of file metric.C.

References p_connect, p_determinant, p_met_con, p_met_cov, and p_ricci_scal.

const Vector & Metric::radial_vect  )  const [virtual]
 

Returns the radial vector normal to a spherical slicing and pointing toward spatial infinity.

Definition at line 355 of file metric.C.

References p_radial_vect, Vector::set(), and sqrt().

const Sym_tensor & Metric::ricci  )  const
 

Returns the Ricci tensor (given by the Connection p_connect ).

Definition at line 331 of file metric.C.

References connect(), and Connection::ricci().

const Scalar & Metric::ricci_scal  )  const [virtual]
 

Returns the Ricci scalar.

Reimplemented in Metric_flat.

Definition at line 343 of file metric.C.

References p_ricci_scal, and ricci().

void Metric::sauve FILE *   )  const [virtual]
 

Save in a file.

Reimplemented in Metric_flat.

Definition at line 407 of file metric.C.

References fwrite_be(), p_met_con, p_met_cov, and Tensor_sym::sauve().

void Metric::set_der_0x0  )  const [protected]
 

Sets to 0x0 all the pointers on derived quantities.

Definition at line 181 of file metric.C.

References p_connect, p_determinant, p_radial_vect, and p_ricci_scal.

void Metric::set_tensor_depend_0x0  )  const [protected]
 

Sets all elements of tensor_depend to 0x0.

Definition at line 201 of file metric.C.

References tensor_depend.


Friends And Related Function Documentation

ostream& operator<< ostream &  ost,
const Metric meti
[friend]
 

Display.

Definition at line 432 of file metric.C.


Member Data Documentation

const Map* const Metric::mp [protected]
 

Reference mapping.

Definition at line 91 of file metric.h.

Connection* Metric::p_connect [mutable, protected]
 

Connection associated with the metric.

Definition at line 108 of file metric.h.

Scalar* Metric::p_determinant [mutable, protected]
 

Pointer on the determinant.

Definition at line 128 of file metric.h.

Sym_tensor* Metric::p_met_con [mutable, protected]
 

Pointer on the covariant representation.

Definition at line 101 of file metric.h.

Sym_tensor* Metric::p_met_cov [mutable, protected]
 

Pointer on the contravariant representation.

Definition at line 96 of file metric.h.

Vector* Metric::p_radial_vect [mutable, protected]
 

Pointer to the radial vector normal to a spherical slicing and pointing toward spatial infinity.

Definition at line 121 of file metric.h.

Scalar* Metric::p_ricci_scal [mutable, protected]
 

Pointer on the Ricci scalar.

Remark: the Ricci tensor is stored in the connection (member p_connect->p_ricci ).

Definition at line 115 of file metric.h.

const Tensor* Metric::tensor_depend[N_TENSOR_DEPEND] [mutable, protected]
 

Pointer on the dependancies, that means the array contains pointers on all the Tensor whom derivative members have been calculated using *this .

Definition at line 135 of file metric.h.


The documentation for this class was generated from the following files:
Generated on Tue Feb 9 01:35:22 2010 for LORENE by  doxygen 1.4.6