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 100 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 121 of file metric.C.

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

Metric::Metric ( const Map mpi,
FILE *   
)

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

Definition at line 134 of file metric.C.

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

Simplified constructor used by derived classes.

Definition at line 143 of file metric.C.

References set_der_0x0(), and set_tensor_depend_0x0().

Metric::~Metric (  )  [virtual]

Destructor.

Definition at line 156 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 286 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 297 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 276 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 172 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 193 of file metric.C.

References Tensor::del_derive_met(), Tensor::get_place_met(), set_tensor_depend_0x0(), and 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 388 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 242 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.

Reimplemented in Metric_flat.

Definition at line 216 of file metric.C.

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

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

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

Reimplemented in Metric_flat.

Definition at line 442 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 358 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 334 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 346 of file metric.C.

References p_ricci_scal, and ricci().

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

Save in a file.

Reimplemented in Metric_flat.

Definition at line 410 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 184 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 204 of file metric.C.

References tensor_depend.


Friends And Related Function Documentation

ostream& operator<< ( ostream &  ,
const Metric  
) [friend]

Display.


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 7 Oct 2014 for LORENE by  doxygen 1.6.1