3#ifndef DUNE_COMBINEDGRAPEDISPLAY_HH
4#define DUNE_COMBINEDGRAPEDISPLAY_HH
29 template<
class DisplayType>
36 typedef typename DisplayType :: MyGridType GridType;
37 enum { dim = GridType :: dimension };
38 enum { dimworld = GridType :: dimensionworld };
41 typedef typename GrapeInterface<dim,dimworld>::DUNE_ELEM DUNE_ELEM;
42 typedef typename GrapeInterface<dim,dimworld>::DUNE_FDATA DUNE_FDATA;
43 typedef typename GrapeInterface<dim,dimworld>::DUNE_DAT DUNE_DAT;
44 typedef typename GrapeInterface<dim,dimworld>::F_DATA F_DATA;
45 typedef typename GrapeInterface<dim,dimworld>::STACKENTRY STACKENTRY;
48 typedef typename std::list< DisplayType * > DisplayListType;
49 DisplayListType dispList_;
51 typedef typename DisplayListType :: iterator DisplayListIteratorType;
52 DisplayListIteratorType grditer_;
53 DisplayListIteratorType enditer_;
55 typedef typename std::list< void * > GridPartListType;
56 GridPartListType gridPartList_;
57 typedef typename GridPartListType :: iterator GridPartListIteratorType;
58 GridPartListIteratorType partEnd_;
59 GridPartListIteratorType partIter_;
95 inline void * getHmesh();
97 inline void addMyMeshToGlobalTimeScene(
double time,
int proc);
101 inline void * setupHmesh();
103 typedef typename DisplayType :: StackEntryType StackEntryType;
104 StackEntryType stackEntry_;
107 std::vector < DUNE_FDATA * > vecFdata_;
113 inline int callFirstMacro(DUNE_ELEM * he) ;
115 inline int first_leaf (DUNE_ELEM * he) ;
116 inline int next_leaf (DUNE_ELEM * he) ;
119 inline int first_macro (DUNE_ELEM * he) ;
120 inline int next_macro (DUNE_ELEM * he) ;
123 inline int first_child (DUNE_ELEM * he) ;
124 inline int next_child (DUNE_ELEM * he) ;
126 inline static void * copy_iterator (
const void * i) ;
129 inline void local_to_world (DUNE_ELEM * he,
const double * c,
double * w);
132 inline int world_to_local (DUNE_ELEM * he,
const double * w,
double * c);
135 inline int checkInside (DUNE_ELEM * he,
const double * w);
138 inline static void ctow (DUNE_ELEM * he,
const double * c,
double * w);
141 inline static int wtoc (DUNE_ELEM * he,
const double * w,
double * c);
144 inline static int check_inside (DUNE_ELEM * he,
const double * w);
147 inline static int first_mac (DUNE_ELEM * he);
148 inline static int next_mac (DUNE_ELEM * he);
151 inline static int fst_leaf (DUNE_ELEM * he);
152 inline static int nxt_leaf (DUNE_ELEM * he);
155 inline static int fst_child (DUNE_ELEM * he);
156 inline static int nxt_child (DUNE_ELEM * he);
159 inline void evalCoord (DUNE_ELEM *he, DUNE_FDATA *df,
160 const double *coord,
double * val);
162 inline void evalDof (DUNE_ELEM *he, DUNE_FDATA *df,
int localNum,
double * val);
166 inline static void evalCoordWrap (DUNE_ELEM *he, DUNE_FDATA *df,
167 const double *coord,
double * val);
170 inline static void evalDofWrap (DUNE_ELEM *he, DUNE_FDATA *df,
int localNum,
double * val);
173 inline static void func_real (DUNE_ELEM *he , DUNE_FDATA * fe,
int ind,
174 const double *coord,
double *val);
176 inline void setIterationMethods(DUNE_DAT *, DUNE_FDATA *);
177 static inline void setIterationModus(DUNE_DAT *, DUNE_FDATA *);
179 static void * getStackEn(DUNE_DAT *);
180 static void freeStackEn(DUNE_DAT *,
void *);
187#include "grape/combinedgrapedisplay.cc"
Combines GrapeDataDisplays to one so that visualisation for parallel grid is more easy to handle.
Definition: combinedgrapedisplay.hh:31
void addDisplay(DisplayType &disp)
add display to list of displays
Definition: combinedgrapedisplay.cc:369
~CombinedGrapeDisplay()
Destructor for GrapeGridDisplay.
Definition: combinedgrapedisplay.cc:23
CombinedGrapeDisplay()
Constructor, make a GrapeGridDisplay for given grid.
Definition: combinedgrapedisplay.cc:14
void * hmesh_
pointer to hmesh
Definition: combinedgrapedisplay.hh:77
void display()
Definition: combinedgrapedisplay.cc:358
Provides a DataDisplay class using the GridDisplay and dune-fem module for class DiscreteFubctions su...
Dune namespace.
Definition: alignment.hh:10