#include <F5types.h>
Data Fields | |
char * | name |
hid_t | type_id |
int | rank |
int | dimension |
int | components |
int * | indexing |
int * | parity |
int * | covariance |
int * | reverse_indexing |
char * | metric |
char * | transformation_rule |
Given a tensor of rank three with indices i,j,k, then its corresponding linear index is given by Li = i+rank*j+rank*rank*k Not all of the tensor components might reside actually in memory, but due to symmetries only some of them do. The indexing array is used to map the linear index to the actual memory index:
Rijk = data[ indexing[ Li ] ]
The parity array specifies the sign change when accessing components in addition to the indexing. It may be zero for components which are never non-zero. Usually it will just be +1 or -1 . The final tensor value is given by
Rijk = data[ indexing[ Li ] ] * parity[ Li ]
The size of the indexing and parity arrays is given by the components member.
The covariance array gives the upper or lower indexing scheme. For a rank 3 tensor, it has three entries that may be positive or negative.
The reverse_indexing array provides the inverse mapping of the indexing array.
The metric member specifies relative to which metric tensor field this indicable field is actually a tensor field.
Actual components which require storage
Upper/Lower indexing information per index, size(covariance)=rank
Dimensionality of the underlying manifold
Index mapping array per component from linear component index to memory component, size(indexing)=dimension^rank. If all entries are zero, then this information has not yet been defined. If the pointer is zero, then no symmetries are defined, i.e. all components are relevant.
char* F5Ttensor_t::metric |
Name of a metric tensor field
char* F5Ttensor_t::name |
Descriptive name.
int* F5Ttensor_t::parity |
Sign change information during indexing per component, size(parity)=dimension^rank
Rank of the tensor
Reverse indexing information, size(reverse_indexing) = components
Textual description of non-tensorial transformation rules
hid_t F5Ttensor_t::type_id |
HDF5 Type ID