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

#include <F5Bchart.h>

Data Fields

const char * domain_name
 
unsigned refs
 
int perm_vector [FIBER_MAX_RANK]
 
int cell_dimensionality
 
F5_ChartPrecisionTypes OneBytePrecision
 
F5_ChartPrecisionTypes HalfPrecision
 
F5_ChartPrecisionTypes SinglePrecision
 
F5_ChartPrecisionTypes DoublePrecision
 
F5_ChartPrecisionTypes ExtendedPrecision
 
F5Ttensor_t ** TensorTypes
 

Detailed Description

Description of a class of coordinate systems, i.e. coordinate system that are allowed to share their positional types.

Field Documentation

◆ domain_name

const char* ChartDomain_IDs::domain_name

name for this class of coordinate systems (e.g. cartesian 3D, polar 2D, ...)

Referenced by F5Binitialize_path().

◆ DoublePrecision

F5_ChartPrecisionTypes ChartDomain_IDs::DoublePrecision

8 Byte, 64 bit

◆ ExtendedPrecision

F5_ChartPrecisionTypes ChartDomain_IDs::ExtendedPrecision

16 Byte, 128 bit

◆ HalfPrecision

F5_ChartPrecisionTypes ChartDomain_IDs::HalfPrecision

2 Byte, 16 bit

◆ OneBytePrecision

F5_ChartPrecisionTypes ChartDomain_IDs::OneBytePrecision

1 Byte, 8 bit

◆ perm_vector

int ChartDomain_IDs::perm_vector[FIBER_MAX_RANK]

Each type of coordinate system is associated with a certain ordering of multidimensional data. This is the place to specify whether FORTRAN or C order is used for multidimensional arrays.

Note
The predefined F5 coordinate systems use FORTRAN order for compatibility with
  • numerical simulation programs, which are mostly written in FORTRAN
  • OpenGL, where the lowest dimension (x) runs fastest
  • the Amira visualization system
  • the canonical indexing of images, where the lowest dimension x runs faster than y This convention is reversed as compared to a native definition of a matrix using C arrays of the form
          float     matrix[X][Y];
          
    Here, the dimension Y would run faster in memory than X. If data are stored in this layout (C order), they have to be put into another coordinate system within the context of F5. Different indexing layouts can be mapped onto each other like a coordinate transformation rule. Such a mapping might be straightforward, but involves some computation (which is similar to true coordinate transformations).

Referenced by F5Fcreate().

◆ refs

unsigned ChartDomain_IDs::refs

reference counter

◆ SinglePrecision

F5_ChartPrecisionTypes ChartDomain_IDs::SinglePrecision

◆ TensorTypes

F5Ttensor_t** ChartDomain_IDs::TensorTypes

Array of pointers to tensor type descriptions. Terminated by NULL pointer;


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