Chombo + EB  3.0
Classes | Macros | Enumerations | Functions | Variables
EBInterface.H File Reference
#include <hdf5.h>
#include <math.h>
#include "NamespaceHeader.H"
#include "NamespaceFooter.H"
Include dependency graph for EBInterface.H:

Go to the source code of this file.

Classes

struct  intvect2d
 
struct  intvect3d
 
struct  box2d
 
struct  box3d
 
union  box
 
struct  regvof
 
struct  irregface
 
struct  irregvof
 
struct  Attribute
 
struct  HDF5attributes
 

Macros

#define _EBINTERFACE_H_
 
#define ChTYPES   8
 
#define ADD_ATTRIBUTE(attrib, Ttype, ChType, Sname, value)
 
#define ADD_CHAR_ATTRIBUTE(attrib, Sname, value)
 
#define CFINITE(X)   !isnan(X) && (X) < HUGE_VAL && (X) > -HUGE_VAL
 

Enumerations

enum  ChPrecision { Float, Double }
 
enum  ChattributeType {
  INTEGER, FLOAT, DOUBLE, CHAR,
  INTVECT2D, INTVECT3D, BOX2D, BOX3D
}
 

Functions

void initializeHDF5datatypes ()
 
int writeEBChomboFile (const char *filename, box3d domain, int length, box3d *boxes, long *regoffset, long *irregoffset, long numreg, long numirreg, regvof *regularVofs, irregvof *irregularVofs)
 
int isEmpty (const box2d *)
 
int numPnts2 (const box2d *)
 
int numPnts3 (const box3d *)
 
void grow2 (box2d *, intvect2d *)
 
void grow3 (box3d *, intvect3d *)
 
void refine2 (box2d *, int refinement)
 
void refine3 (box3d *, int refinement)
 
int cut (const box3d *box, int dir, int index)
 
box2dcrossSection (const box3d *box, int dir, box2d *box2)
 
int Handleopen (HDF5Handle *handle, const char *filename, hid_t accessMode)
 
int HandlesetGroup (HDF5Handle *handle, const char *group)
 
int Handleclose (HDF5Handle handle)
 
int HandleCreateGroup (HDF5Handle *handle, const char *group)
 
void freeHDF5attributes (HDF5attributes *attributes)
 
void printAttributes (HDF5attributes *attributes)
 
int readHDF5attributes (HDF5attributes *attr, HDF5Handle handle)
 
int readBoxes (box **boxes, int *length, HDF5Handle handle)
 
int writeHDF5attributes (HDF5attributes *attr, HDF5Handle handle)
 
int writeBoxes (box *boxes, int length, HDF5Handle handle)
 

Variables

static hid_t intvect2d_id
 
static hid_t intvect3d_id
 
static hid_t box2d_id
 
static hid_t box3d_id
 
struct {
   hid_t   file_ID
 
   hid_t   group_ID
 
   int   dim
 
   ChPrecision   precision
 
HDF5Handle
 
static const char * TYPE_NAMES [ChTYPES]
 
AttributeADD_tmp
 
AttributeADD_at
 

Macro Definition Documentation

◆ _EBINTERFACE_H_

#define _EBINTERFACE_H_

◆ ChTYPES

#define ChTYPES   8

◆ ADD_ATTRIBUTE

#define ADD_ATTRIBUTE (   attrib,
  Ttype,
  ChType,
  Sname,
  value 
)
Value:
ADD_tmp = attrib.accessByType[ChType] ; \
ADD_at = (Attribute*) malloc(sizeof(Attribute)); \
attrib.accessByType[ChType] = ADD_at; \
ADD_at->name = malloc(strlen(Sname)+1); \
sprintf(ADD_at->name, Sname); \
ADD_at->data = malloc(sizeof(Ttype)); \
ADD_at->attributeType = ChType; \
*((Ttype *)ADD_at->data) = value; \
ADD_at->next = ADD_tmp; \
attrib.numByType[ChType]++; \
Attribute * ADD_tmp
Definition: EBInterface.H:175
void * data
Definition: EBInterface.H:177
char * name
Definition: EBInterface.H:178
Attribute * ADD_at

◆ ADD_CHAR_ATTRIBUTE

#define ADD_CHAR_ATTRIBUTE (   attrib,
  Sname,
  value 
)
Value:
ADD_tmp = attrib.accessByType[CHAR] ; \
ADD_at = (Attribute*) malloc(sizeof(Attribute)); \
attrib.accessByType[CHAR] = ADD_at; \
ADD_at->name = malloc(strlen(Sname)); \
sprintf(ADD_at->name, Sname); \
ADD_at->data = malloc(strlen(value)); \
ADD_at->attributeType = CHAR; \
sprintf((char*)ADD_at->data, value); \
ADD_at->next = ADD_tmp; \
attrib.numByType[CHAR]++; \
Attribute * ADD_tmp
Definition: EBInterface.H:175
void * data
Definition: EBInterface.H:177
char * name
Definition: EBInterface.H:178
Attribute * ADD_at
Definition: EBInterface.H:167

◆ CFINITE

#define CFINITE (   X)    !isnan(X) && (X) < HUGE_VAL && (X) > -HUGE_VAL

create our own platform independent form that spans a lot of IEEE goofiness.

Enumeration Type Documentation

◆ ChPrecision

Enumerator
Float 
Double 

◆ ChattributeType

Enumerator
INTEGER 
FLOAT 
DOUBLE 
CHAR 
INTVECT2D 
INTVECT3D 
BOX2D 
BOX3D 

Function Documentation

◆ initializeHDF5datatypes()

void initializeHDF5datatypes ( )

◆ writeEBChomboFile()

int writeEBChomboFile ( const char *  filename,
box3d  domain,
int  length,
box3d boxes,
long *  regoffset,
long *  irregoffset,
long  numreg,
long  numirreg,
regvof regularVofs,
irregvof irregularVofs 
)

◆ isEmpty()

int isEmpty ( const box2d )

Referenced by Box::copy().

◆ numPnts2()

int numPnts2 ( const box2d )

◆ numPnts3()

int numPnts3 ( const box3d )

◆ grow2()

void grow2 ( box2d ,
intvect2d  
)

◆ grow3()

void grow3 ( box3d ,
intvect3d  
)

◆ refine2()

void refine2 ( box2d ,
int  refinement 
)

◆ refine3()

void refine3 ( box3d ,
int  refinement 
)

◆ cut()

int cut ( const box3d box,
int  dir,
int  index 
)

◆ crossSection()

box2d* crossSection ( const box3d box,
int  dir,
box2d box2 
)

◆ Handleopen()

int Handleopen ( HDF5Handle handle,
const char *  filename,
hid_t  accessMode 
)

◆ HandlesetGroup()

int HandlesetGroup ( HDF5Handle handle,
const char *  group 
)

◆ Handleclose()

int Handleclose ( HDF5Handle  handle)

◆ HandleCreateGroup()

int HandleCreateGroup ( HDF5Handle handle,
const char *  group 
)

◆ freeHDF5attributes()

void freeHDF5attributes ( HDF5attributes attributes)

◆ printAttributes()

void printAttributes ( HDF5attributes attributes)

◆ readHDF5attributes()

int readHDF5attributes ( HDF5attributes attr,
HDF5Handle  handle 
)

◆ readBoxes()

int readBoxes ( box **  boxes,
int *  length,
HDF5Handle  handle 
)

◆ writeHDF5attributes()

int writeHDF5attributes ( HDF5attributes attr,
HDF5Handle  handle 
)

◆ writeBoxes()

int writeBoxes ( box boxes,
int  length,
HDF5Handle  handle 
)

Variable Documentation

◆ intvect2d_id

hid_t intvect2d_id
static

◆ intvect3d_id

hid_t intvect3d_id
static

◆ box2d_id

hid_t box2d_id
static

◆ box3d_id

hid_t box3d_id
static

◆ file_ID

hid_t file_ID

◆ group_ID

hid_t group_ID

◆ dim

int dim

Referenced by CutCellMoments< GLOBALDIM >::addBdMoments(), ComputeCutCellMoments< dim >::addMomentMaps(), DivNormalRefinement< dim >::approximateDivNormal(), CutCellMoments< GLOBALDIM >::changeMomentCoordinates(), LSProblem< dim >::computeBounds(), ComputeCutCellMoments< dim >::ComputeCutCellMoments(), ComputeCutCellMoments< dim >::computeMoments(), ComputeCutCellMoments< dim >::computeResiduals(), ComputeCutCellMoments< dim >::computeRhs(), CoordinateSystem< 1 >::convert(), CoordinateSystem< 1 >::CoordinateSystem(), CutCellMoments< GLOBALDIM >::CutCellMoments(), IFData< dim >::defineLocalCoords(), LSProblem< dim >::differentiate(), NoRefinement< dim >::doRefine(), FixedRefinement< dim >::doRefine(), NormalDerivative< dim >::evaluate(), NormalDerivative< dim >::expand(), ComputeCutCellMoments< dim >::factorial(), CutCellMoments< GLOBALDIM >::fullCellQuadrature(), generateMultiIndices(), CutCellMoments< GLOBALDIM >::getCentroid(), IFData< dim >::IFData(), CutCellMoments< GLOBALDIM >::initialize(), LSProblem< dim >::invertNormalEq(), IFData< dim >::isConnected(), LSProblem< dim >::LSProblem(), IFData< dim >::makeCornerSigns(), IFData< dim >::makeEdgeKey(), LSProblem< dim >::momentBounds(), LSProblem< dim >::monoMaxMin(), LSProblem< dim >::numMonomials(), LSProblem< dim >::outputMatrix(), IFSlicer< dim >::print(), LSProblem< dim >::print(), IFData< dim >::print(), CutCellMoments< GLOBALDIM >::print(), ComputeCutCellMoments< dim >::refine(), IFData< dim >::rootFinder(), LSProblem< dim >::setMatrix(), IFData< dim >::setNormalDerivatives(), ArSp::sizeOfDim(), ArSp::sizeOfDim< CHRange >(), CutCellMoments< GLOBALDIM >::sliceResidual(), IFSlicer< dim >::value(), and LSProblem< dim >::~LSProblem().

◆ precision

ChPrecision precision

◆ HDF5Handle

struct { ... } HDF5Handle

◆ TYPE_NAMES

const char* TYPE_NAMES[ChTYPES]
static

◆ ADD_tmp

Attribute* ADD_tmp

◆ ADD_at

Attribute* ADD_at