geo_element(7rheolef) rheolef-6.1 geo_element(7rheolef)NAME
geo_element - element of a mesh
DESCRIPTION
Defines geometrical elements and sides as a set of vertice and edge indexes. This element is obtained after a Piola transformation from a
reference element (see reference_element(2)). Indexes are related to arrays of edges and vertices. These arrays are included in the
description of the mesh. Thus, this class is related of a given mesh instance (see geo(2)).
EXAMPLE
This is the test of geo_element:
geo_element_auto<> K;
K.set_name('t') ;
cout << "n_vertices: " << K.size() << endl
<< "n_edges : " << K.n_edges() << endl
<< "dimension : " << K.dimension() << endl << endl;
for(geo_element::size_type i = 0; i < K.size(); i++)
K[i] = i*10 ;
for(geo_element::size_type i = 0; i < K.n_edges(); i++)
K.set_edge(i, i*10+5) ;
cout << "vertices: local -> global" << endl;
for (geo_element::size_type vloc = 0; vloc < K.size(); vloc++)
cout << vloc << "-> " << K[vloc] << endl;
cout << endl
<< "edges: local -> global" << endl;
for (geo_element::size_type eloc = 0; eloc < K.n_edges(); eloc++) {
geo_element::size_type vloc1 = subgeo_local_vertex(1, eloc, 0);
geo_element::size_type vloc2 = subgeo_local_vertex(1, eloc, 1);
cout << eloc << "-> " << K.edge(eloc) << endl
<< "local_vertex_from_edge(" << eloc
<< ") -> (" << vloc1 << ", " << vloc2 << ")" << endl;
}
SEE ALSO reference_element(2), geo(2)rheolef-6.1 rheolef-6.1 geo_element(7rheolef)
Check Out this Related Man Page
TAU_GET_FUNC_VALS(3) TAU Instrumentation API TAU_GET_FUNC_VALS(3)NAME
TAU_GET_FUNC_VALS - Gets detailed performance data for given functions
SYNOPSIS
C/C++:
TAU_GET_FUNC_VALS(const char **inFuncs, int numOfFuncs, double ***counterExclusiveValues, double ***counterInclusiveValues,
int **numOfCalls, int **numOfSubRoutines, const char ***counterNames, int *numOfCounters, int tid);
DESCRIPTION
It gets detailed performance data for the list of routines. The user specifies inFuncs and the number of routines; TAU then returns the
other arguments with the performance data. counterExclusiveValues and counterInclusiveValues are two dimensional arrays: the first
dimension is the routine id and the second is counter id. The value is indexed by these two dimensions. numCalls and numSubrs (or child
routines) are one dimensional arrays.
EXAMPLE
C/C++ :
const char **inFuncs;
/* The first dimension is functions, and the
second dimension is counters */
double **counterExclusiveValues;
double **counterInclusiveValues;
int *numOfCalls;
int *numOfSubRoutines;
const char **counterNames;
int numOfCouns;
TAU_GET_FUNC_NAMES(functionList, numOfFunctions);
/* We are only interested in the first two routines
that are executing in this context. So, we allocate
space for two routine names and get the performance
data for these two routines at runtime. */
if (numOfFunctions >=2 ) {
inFuncs = (const char **) malloc(sizeof(const char *) * 2);
inFuncs[0] = functionList[0];
inFuncs[1] = functionList[1];
//Just to show consistency.
TAU_DB_DUMP();
TAU_GET_FUNC_VALS(inFuncs, 2,
counterExclusiveValues,
counterInclusiveValues,
numOfCalls,
numOfSubRoutines,
counterNames,
numOfCouns);
TAU_DUMP_FUNC_VALS_INCR(inFuncs, 2);
cout << "@@@@@@@@@@@@@@@" << endl;
cout << "The number of counters is: " << numOfCouns << endl;
cout << "The first counter is: " << counterNames[0] << endl;
cout << "The Exclusive value of: " << inFuncs[0]
<< " is: " << counterExclusiveValues[0][0] << endl;
cout << "The numOfSubRoutines of: " << inFuncs[0]
<< " is: " << numOfSubRoutines[0]
<< endl;
cout << "The Inclusive value of: " << inFuncs[1]
<< " is: " << counterInclusiveValues[1][0]
<< endl;
cout << "The numOfCalls of: " << inFuncs[1]
<< " is: " << numOfCalls[1]
<< endl;
cout << "@@@@@@@@@@@@@@@" << endl;
}
TAU_DB_DUMP_INCR();
SEE ALSO TAU_GET_COUNTER_NAMES(3), TAU_GET_FUNC_NAMES(3), TAU_DUMP_FUNC_NAMES(3), TAU_DUMP_FUNC_VALS(3)
08/31/2005 TAU_GET_FUNC_VALS(3)