29 int n = global_id % 5 + 1;
30 int vals[] = { i, j, n, i + j, j - 2 * i };
32 std::copy( vals, vals + n, values.begin() );
51 coords[2] = 0.1 * ( i + j );
83 if( tmp )
return tmp + errors;
130 std::vector< int > values;
145 const void* ptr = &values[0];
146 const int size = values.size();
165 size_t n1 = ( i + 1 ) * (
INTERVALS + 1 ) + j;
166 size_t n2 = ( i + 1 ) * (
INTERVALS + 1 ) + j + 1;
167 size_t n3 = i * (
INTERVALS + 1 ) + j + 1;
168 EntityHandle conn[4] = { nodes[n0], nodes[n1], nodes[n2], nodes[n3] };
175 int ids[4] = {
static_cast< int >( n0 ),
static_cast< int >( n1 ),
static_cast< int >( n2 ),
176 static_cast< int >( n3 ) };
189 for(
int i = 0; i < 2; ++i )
204 flag = MESHSET_ORDERED;
215 idx = ( idx * idx ) % count;
252 std::vector< int > ids( ents.
size() );
255 for(
size_t i = 1; i < ids.size(); ++i )
265 std::vector< EntityHandle > quads;
267 CHECK( !quads.empty() );
270 std::map< int, Range > groups;
271 std::vector< int > group_ids( quads.size() );
273 for(
size_t i = 0; i < quads.size(); ++i )
274 groups[group_ids[i]].insert( quads[i] );
278 for( std::map< int, Range >::iterator i = groups.begin(); i != groups.end(); ++i )
292 std::vector< std::pair< EntityHandle, EntityHandle > > ranges;
293 for( std::map< int, Range >::iterator i = groups.begin(); i != groups.end(); ++i )
295 std::vector< EntityHandle > newh( i->second.size() );
297 std::sort( newh.begin(), newh.end() );
298 CHECK( newh[0] > 0 );
299 std::pair< EntityHandle, EntityHandle > p( newh[0], newh[newh.size() - 1] );
300 ranges.push_back( p );
302 std::sort( ranges.begin(), ranges.end() );
303 for(
size_t i = 1; i < ranges.size(); ++i )
305 CHECK( ranges[i - 1].second < ranges[i].
first );
309 std::map< std::vector< int >,
Range > vtxgroups;
316 std::vector< int > ids( adj.
size() );
318 std::sort( ids.begin(), ids.end() );
319 ids.erase( std::unique( ids.begin(), ids.end() ), ids.end() );
320 vtxgroups[ids].insert( *i );
325 std::map< std::vector< int >,
Range >::iterator j;
326 for( j = vtxgroups.begin(); j != vtxgroups.end(); ++j )
328 std::vector< EntityHandle > newh( j->second.size() );
330 std::sort( newh.begin(), newh.end() );
331 CHECK( newh[0] > 0 );
332 std::pair< EntityHandle, EntityHandle > p( newh[0], newh[newh.size() - 1] );
333 ranges.push_back( p );
335 std::sort( ranges.begin(), ranges.end() );
336 for(
size_t i = 1; i < ranges.size(); ++i )
338 CHECK( ranges[i - 1].second < ranges[i].
first );
358 std::vector< int > ids( verts.
size() );
361 std::vector< double > coords( 3 * verts.
size() );
364 std::vector< double > expected( 3 * verts.
size() );
365 for(
size_t i = 0; i < ids.size(); ++i )
381 std::vector< EntityHandle > quads;
384 std::vector< EntityHandle > conn;
388 std::vector< int > exp_ids( 4 * quads.size() ), act_ids( 4 * quads.size() );
414 if( ( ordered && ( flags & MESHSET_ORDERED ) ) || ( !ordered && !( flags & MESHSET_ORDERED ) ) )
422 std::vector< EntityHandle > ents;
442 std::vector< EntityHandle > adj;
444 CHECK( std::find( adj.begin(), adj.end(), set ) != adj.end() );
497 for( it = sets.
begin(); it != sets.
end(); ++it )
499 std::vector< EntityHandle > ents;
507 if( !( flags & MESHSET_ORDERED ) ) std::sort( handles.begin(), handles.end() );
518 std::vector< EntityHandle > quads;
521 std::vector< EntityHandle > conn;
524 std::vector< EntityHandle > tagvals( 4 * quads.size() );
543 std::vector< int > gids( verts.
size() );
546 std::vector< const void* > ptrs( verts.
size() );
547 std::vector< int >
sizes( verts.
size() );
550 for(
size_t i = 0; i < gids.size(); ++i )
552 std::vector< int > exp;
571 std::vector< int > gids( verts.
size() );
574 std::vector< unsigned char > exp( gids.size() ), act( gids.size() );
575 for(
size_t i = 0; i < exp.size(); ++i )