KADATH
Kadath::Base_tensor Class Reference

Describes the tensorial basis used by the various tensors. More...

#include <base_tensor.hpp>

Inheritance diagram for Kadath::Base_tensor:

Public Member Functions

 Base_tensor (const Space &sp)
 Constructor, does not affect anything. More...
 
 Base_tensor (const Space &sp, int bb)
 Constructor where the basis is the same everywhere. More...
 
 Base_tensor (const Base_tensor &so)
 Copy constructor. More...
 
 Base_tensor (const Space &sp, FILE *fd)
 Constructor from a file. More...
 
virtual ~Base_tensor ()=default
 Destructor. More...
 
int & set_basis (int nd)
 Read/write the basis in a given domain. More...
 
int get_basis (int nd) const
 Read only the basis in a given domain. More...
 
void operator= (const Base_tensor &)
 Affectation operator. More...
 
void swap (Base_tensor &so)
 Sylvain's stuff. More...
 
const Spaceget_space () const
 
void save (FILE *fd) const
 Saving function. More...
 

Protected Attributes

const Spacespace
 The associated Space. More...
 
Array< int > basis
 The basis in each Domain. More...
 

Friends

ostream & operator<< (ostream &, const Base_tensor &)
 Display. More...
 
bool operator== (const Base_tensor &, const Base_tensor &)
 Tests equality of two basis. More...
 
bool operator!= (const Base_tensor &, const Base_tensor &)
 Tests the difference of two basis. More...
 

Detailed Description

Describes the tensorial basis used by the various tensors.

In each Domain it stores an integer describing the basis. Possible choices :

  • CARTESIAN_BASIS : Cartesian
  • SPHERICAL_BASIS : orthonormal spherical.
  • MTZ_BASIS : orthonormal basis, assuming the constant radius sections have a negative curvature.

Definition at line 49 of file base_tensor.hpp.

Constructor & Destructor Documentation

◆ Base_tensor() [1/4]

Kadath::Base_tensor::Base_tensor ( const Space sp)
inlineexplicit

Constructor, does not affect anything.

Parameters
sp: the Space.

Definition at line 66 of file base_tensor.hpp.

References basis.

◆ Base_tensor() [2/4]

Kadath::Base_tensor::Base_tensor ( const Space sp,
int  bb 
)
inline

Constructor where the basis is the same everywhere.

Parameters
sp: the Space.
bb: input basis.

Definition at line 72 of file base_tensor.hpp.

References basis.

◆ Base_tensor() [3/4]

Kadath::Base_tensor::Base_tensor ( const Base_tensor so)
inline

Copy constructor.

Definition at line 74 of file base_tensor.hpp.

◆ Base_tensor() [4/4]

Kadath::Base_tensor::Base_tensor ( const Space sp,
FILE *  fd 
)
inline

Constructor from a file.

Parameters
sp: the Space.
fd: the file (generated by save.

Definition at line 80 of file base_tensor.hpp.

◆ ~Base_tensor()

virtual Kadath::Base_tensor::~Base_tensor ( )
virtualdefault

Destructor.

Member Function Documentation

◆ get_basis()

int Kadath::Base_tensor::get_basis ( int  nd) const
inline

Read only the basis in a given domain.

Definition at line 93 of file base_tensor.hpp.

References basis.

◆ get_space()

const Space& Kadath::Base_tensor::get_space ( ) const
inline
Returns
: the Space (read only)/

Definition at line 102 of file base_tensor.hpp.

References space.

◆ operator=()

void Kadath::Base_tensor::operator= ( const Base_tensor so)
inline

Affectation operator.

Definition at line 113 of file base_tensor.hpp.

References basis, Kadath::Array< T >::get_size(), get_space(), Kadath::Array< T >::set(), and space.

◆ save()

void Kadath::Base_tensor::save ( FILE *  fd) const
inline

Saving function.

Definition at line 104 of file base_tensor.hpp.

References basis, and Kadath::Array< T >::save().

◆ set_basis()

int& Kadath::Base_tensor::set_basis ( int  nd)
inline

Read/write the basis in a given domain.

Definition at line 91 of file base_tensor.hpp.

References basis, and Kadath::Array< T >::set().

◆ swap()

void Kadath::Base_tensor::swap ( Base_tensor so)
inline

Sylvain's stuff.

Definition at line 97 of file base_tensor.hpp.

References basis, space, and Kadath::Array< T >::swap().

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const Base_tensor b1,
const Base_tensor b2 
)
friend

Tests the difference of two basis.

Definition at line 120 of file base_tensor.hpp.

◆ operator<<

ostream& operator<< ( ostream &  flux,
const Base_tensor so 
)
friend

Display.

Definition at line 26 of file base_tensor.cpp.

◆ operator==

bool operator== ( const Base_tensor b1,
const Base_tensor b2 
)
friend

Tests equality of two basis.

Definition at line 51 of file base_tensor.cpp.

Member Data Documentation

◆ basis

Array<int> Kadath::Base_tensor::basis
protected

The basis in each Domain.

Definition at line 55 of file base_tensor.hpp.

◆ space

const Space& Kadath::Base_tensor::space
protected

The associated Space.

Definition at line 54 of file base_tensor.hpp.


The documentation for this class was generated from the following file: