FiberBundleHDF5  $Id: FiberHDF5.dfg,v 1.8 2006/12/12 12:32:50 werner Exp $
Data Fields
F5Ttensor_t Struct Reference

#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
 

Detailed Description

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.

Field Documentation

◆ components

int F5Ttensor_t::components

Actual components which require storage

◆ covariance

int* F5Ttensor_t::covariance

Upper/Lower indexing information per index, size(covariance)=rank

◆ dimension

int F5Ttensor_t::dimension

Dimensionality of the underlying manifold

◆ indexing

int* F5Ttensor_t::indexing

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.

◆ metric

char* F5Ttensor_t::metric

Name of a metric tensor field

◆ name

char* F5Ttensor_t::name

Descriptive name.

◆ parity

int* F5Ttensor_t::parity

Sign change information during indexing per component, size(parity)=dimension^rank

◆ rank

int F5Ttensor_t::rank

Rank of the tensor

◆ reverse_indexing

int* F5Ttensor_t::reverse_indexing

Reverse indexing information, size(reverse_indexing) = components

◆ transformation_rule

char* F5Ttensor_t::transformation_rule

Textual description of non-tensorial transformation rules

◆ type_id

hid_t F5Ttensor_t::type_id

HDF5 Type ID


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