|
dune-grid 2.11
|
Loading...
Searching...
No Matches
yaspgrid.hh
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright © DUNE Project contributors, see file LICENSE.md in module root
125 static void comm (const G& g, DataHandle& data, InterfaceType iftype, CommunicationDirection dir, int level)
138 static void comm (const G& g, DataHandle& data, InterfaceType iftype, CommunicationDirection dir, int level)
165 : public GridDefaultImplementation<dim,dim,typename Coordinates::ctype,YaspGridFamily<dim, Coordinates> >
174 using Base = GridDefaultImplementation<dim,dim,typename Coordinates::ctype,YaspGridFamily<dim, Coordinates> >;
219 std::array<std::deque<Intersection>, Dune::power(2,dim)> send_interiorborder_interiorborder_data;
221 std::array<std::deque<Intersection>, Dune::power(2,dim)> recv_interiorborder_interiorborder_data;
327 void makelevel (const Coordinates& coords, std::bitset<dim> periodic, iTupel o_interior, int overlap)
339 typename std::array<YGridComponent<Coordinates>, power(2,dim)>::iterator overlapfront_it = g.overlapfront_data.begin();
340 typename std::array<YGridComponent<Coordinates>, power(2,dim)>::iterator overlap_it = g.overlap_data.begin();
341 typename std::array<YGridComponent<Coordinates>, power(2,dim)>::iterator interiorborder_it = g.interiorborder_data.begin();
342 typename std::array<YGridComponent<Coordinates>, power(2,dim)>::iterator interior_it = g.interior_data.begin();
368 // determine origin of the grid with overlap and store whether an overlap area exists in direction i.
495 intersections(*overlapfront_it,*overlapfront_it,*send_overlapfront_overlapfront_it, *recv_overlapfront_overlapfront_it);
496 intersections(*overlap_it,*overlapfront_it,*send_overlap_overlapfront_it, *recv_overlapfront_overlap_it);
497 intersections(*interiorborder_it,*interiorborder_it,*send_interiorborder_interiorborder_it,*recv_interiorborder_interiorborder_it);
498 intersections(*interiorborder_it,*overlapfront_it,*send_interiorborder_overlapfront_it,*recv_overlapfront_interiorborder_it);
520 g.send_overlapfront_overlapfront[codim].finalize(send_overlapfront_overlapfront_it,g.overlapfront[codim]);
521 g.recv_overlapfront_overlapfront[codim].finalize(recv_overlapfront_overlapfront_it,g.overlapfront[codim]);
522 g.send_overlap_overlapfront[codim].finalize(send_overlap_overlapfront_it,g.overlapfront[codim]);
523 g.recv_overlapfront_overlap[codim].finalize(recv_overlapfront_overlap_it,g.overlapfront[codim]);
524 g.send_interiorborder_interiorborder[codim].finalize(send_interiorborder_interiorborder_it,g.overlapfront[codim]);
525 g.recv_interiorborder_interiorborder[codim].finalize(recv_interiorborder_interiorborder_it,g.overlapfront[codim]);
526 g.send_interiorborder_overlapfront[codim].finalize(send_interiorborder_overlapfront_it,g.overlapfront[codim]);
561 void intersections(const YGridComponent<Coordinates>& sendgrid, const YGridComponent<Coordinates>& recvgrid,
580 for (typename Torus<Communication,dim>::ProcListIterator i=_torus.sendbegin(); i!=_torus.sendend(); ++i)
624 for (typename Torus<Communication,dim>::ProcListIterator i=_torus.sendbegin(); i!=_torus.sendend(); ++i)
631 for (typename Torus<Communication,dim>::ProcListIterator i=_torus.recvbegin(); i!=_torus.recvend(); ++i)
638 for (typename Torus<Communication,dim>::ProcListIterator i=_torus.sendbegin(); i!=_torus.sendend(); ++i)
645 for (typename Torus<Communication,dim>::ProcListIterator i=_torus.recvbegin(); i!=_torus.recvend(); ++i)
652 for (typename Torus<Communication,dim>::ProcListIterator i=_torus.recvbegin(); i!=_torus.recvend(); ++i)
679 indexsets.push_back( std::make_shared< YaspIndexSet<const YaspGrid<dim, Coordinates>, false > >(*this,0) );
769 //determine sizes of vector to correctly construct torus structure and store for later size requests
776 int mysteryFactor = (std::is_same<Coordinates,EquidistantCoordinates<ctype,dim> >::value) ? 1 : 2;
784 // communicate the result to all those processes to have all processors error out if one process failed.
788 DUNE_THROW(Dune::GridError,"YaspGrid does not support degrees of freedom shared by more than immediately neighboring subdomains."
808 upperRightWithOverlap[i] = coordinates.coordinate(i,0) + coordinates.meshsize(i,0) * s_overlap[i];
826 EquidistantOffsetCoordinates<ctype,dim> coordinatesWithOverlap(lowerleft,upperRightWithOverlap,s_overlap);
930 // communicate the result to all those processes to have all processors error out if one process failed.
934 DUNE_THROW(Dune::GridError,"YaspGrid does not support degrees of freedom shared by more than immediately neighboring subdomains."
973 typename std::enable_if_t< std::is_same_v<C, EquidistantOffsetCoordinates<ctype,dim> >, int> = 0>
1002 // communicate the result to all those processes to have all processors error out if one process failed.
1006 DUNE_THROW(Dune::GridError,"YaspGrid does not support degrees of freedom shared by more than immediately neighboring subdomains."
1053 DUNE_THROW(Dune::GridError,"Setup of a tensorproduct grid requires monotonous sequences of coordinates.");
1057 //determine sizes of vector to correctly construct torus structure and store for later size requests
1077 // communicate the result to all those processes to have all processors error out if one process failed.
1081 DUNE_THROW(Dune::GridError,"YaspGrid does not support degrees of freedom shared by more than immediately neighboring subdomains."
1168 "YaspGrid coordinate container template parameter and given constructor values do not match!");
1171 DUNE_THROW(Dune::GridError,"Setup of a tensorproduct grid requires monotonous sequences of coordinates.");
1262 indexsets.push_back( std::make_shared<YaspIndexSet<const YaspGrid<dim,Coordinates>, false > >(*this,maxLevel()) );
1329 typename Traits::template Codim<cd>::template Partition<pitype>::LevelIterator lbegin (int level) const
1336 typename Traits::template Codim<cd>::template Partition<pitype>::LevelIterator lend (int level) const
1343 typename Traits::template Codim<cd>::template Partition<All_Partition>::LevelIterator lbegin (int level) const
1350 typename Traits::template Codim<cd>::template Partition<All_Partition>::LevelIterator lend (int level) const
1357 typename Traits::template Codim<cd>::template Partition<pitype>::LeafIterator leafbegin () const
1371 typename Traits::template Codim<cd>::template Partition<All_Partition>::LeafIterator leafbegin () const
1378 typename Traits::template Codim<cd>::template Partition<All_Partition>::LeafIterator leafend () const
1395 return Entity(EntityImp(g,YIterator(g->overlapfront[codim],seed.impl().coord(),seed.impl().offset())));
1471 void communicate (CommDataHandleIF<DataHandleImp,DataType> & data, InterfaceType iftype, CommunicationDirection dir, int level) const
1481 void communicate (CommDataHandleIF<DataHandleImp,DataType> & data, InterfaceType iftype, CommunicationDirection dir) const
1491 void communicateCodim (DataHandle& data, InterfaceType iftype, CommunicationDirection dir, int level) const
1534 std::vector<int> send_size(sendlist->size(),-1); // map rank to total number of objects (of type DataType) to be sent
1535 std::vector<int> recv_size(recvlist->size(),-1); // map rank to total number of objects (of type DataType) to be recvd
1536 std::vector<size_t*> send_sizes(sendlist->size(),static_cast<size_t*>(0)); // map rank to array giving number of objects per entity to be sent
1537 std::vector<size_t*> recv_sizes(recvlist->size(),static_cast<size_t*>(0)); // map rank to array giving number of objects per entity to be recvd
1577 itend(YaspLevelIterator<codim,All_Partition,GridImp>(g, typename YGrid::Iterator(is->yg,true)));
1638 std::vector<DataType*> sends(sendlist->size(), static_cast<DataType*>(0)); // store pointers to send buffers
1655 itend(YaspLevelIterator<codim,All_Partition,GridImp>(g, typename YGrid::Iterator(is->yg,true)));
1665 std::vector<DataType*> recvs(recvlist->size(),static_cast<DataType*>(0)); // store pointers to send buffers
1709 itend(YaspLevelIterator<codim,All_Partition,GridImp>(g, typename YGrid::Iterator(is->yg,true)));
1720 itend(YaspLevelIterator<codim,All_Partition,GridImp>(g, typename YGrid::Iterator(is->yg,true)));
1856 std::vector< std::shared_ptr< YaspIndexSet<const YaspGrid<dim,Coordinates>, false > > > indexsets;
1878 const Yasp::Partitioning<dim>* = YaspGrid<dim, EquidistantCoordinates<ctype, dim>>::defaultPartitioner())
1888 const Yasp::Partitioning<dim>* = YaspGrid<dim, EquidistantOffsetCoordinates<ctype, dim>>::defaultPartitioner())
1896 const Yasp::Partitioning<dim>* = YaspGrid<int{dim}, TensorProductCoordinates<ctype, int{dim}>>::defaultPartitioner())
1918 s << "[" << rank << "]: " << "overlapfront[" << codim << "]: " << g->overlapfront[codim] << std::endl;
1920 s << "[" << rank << "]: " << "interiorborder[" << codim << "]: " << g->interiorborder[codim] << std::endl;
Specialization of the PersistentContainer for YaspGrid.
the YaspEntity class and its specializations
This provides a YGrid, the elemental component of the yaspgrid implementation.
This provides container classes for the coordinates to be used in YaspGrid Upon implementation of the...
The YaspGeometry class and its specializations.
level-wise, non-persistent, consecutive indices for YaspGrid
This file provides the infrastructure for toroidal communication in YaspGrid.
The YaspLevelIterator class.
The YaspIntersectionIterator class.
The YaspEntitySeed class.
The YaspIntersection class.
Specialization of the StructuredGridFactory class for YaspGrid.
Describes the parallel communication interface class for MessageBuffers and DataHandles.
int size() const
bool empty() const
void insert(const T &v)
std::ostream & operator<<(std::ostream &s, const bigunsignedint< k > &x)
size_type dim() const
std::ptrdiff_t index() const
#define DUNE_THROW(E,...)
const GlobalIndex & global() const
constexpr Base power(Base m, Exponent p)
constexpr auto back(const HybridMultiIndex< T... > &tp) -> decltype(tp.back())
constexpr HybridMultiIndex< T..., std::size_t > push_back(const HybridMultiIndex< T... > &tp, std::size_t i)
constexpr auto front(const HybridMultiIndex< T... > &tp) -> decltype(tp.front())
CommunicationDirection
Define a type for communication direction parameter.
Definition gridenums.hh:170
InterfaceType
Parameter to be used for the communication functions.
Definition gridenums.hh:86
@ InteriorBorder_Partition
interior and border entities
Definition gridenums.hh:138
@ Overlap_Partition
interior, border, and overlap entities
Definition gridenums.hh:139
@ BackwardCommunication
reverse communication direction
Definition gridenums.hh:172
@ InteriorBorder_All_Interface
send interior and border, receive all entities
Definition gridenums.hh:88
@ All_All_Interface
send all and receive all entities
Definition gridenums.hh:91
@ Overlap_All_Interface
send overlap, receive all entities
Definition gridenums.hh:90
@ Overlap_OverlapFront_Interface
send overlap, receive overlap and front entities
Definition gridenums.hh:89
@ InteriorBorder_InteriorBorder_Interface
send/receive interior and border entities
Definition gridenums.hh:87
constexpr Overlap overlap
PartitionSet for the overlap partition.
Definition partitionset.hh:277
Include standard header files.
YaspGrid(FieldVector< ctype, dim >, std::array< int, std::size_t{dim}>, std::bitset< std::size_t{dim}>=std::bitset< std::size_t{dim}>{0ULL}, int=1, YaspCommunication=YaspCommunication(), const Yasp::Partitioning< dim > *=YaspGrid< dim, EquidistantCoordinates< ctype, dim > >::defaultPartitioner()) -> YaspGrid< dim, EquidistantCoordinates< ctype, dim > >
std::array< int, d > sizeArray(const std::array< std::vector< ct >, d > &v)
Definition ygrid.hh:29
constexpr size_type size() const
constexpr unsigned int dim() const
constexpr bool isCube() const
constexpr iterator end() noexcept
constexpr size_type size() const noexcept
constexpr iterator begin() noexcept
constexpr void pop_back() noexcept
storage_type::const_iterator const_iterator
constexpr reference back() noexcept
constexpr void resize(size_type s) noexcept
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition common/intersection.hh:164
static const unsigned int topologyId
Definition common/capabilities.hh:31
static const bool v
Definition common/capabilities.hh:107
static const bool v
Definition common/capabilities.hh:125
CommDataHandleIF describes the features of a data handle for communication in parallel runs using the...
Definition datahandleif.hh:78
Definition defaultgridview.hh:26
Definition defaultgridview.hh:211
Definition common/grid.hh:848
typename GridFamily::Traits::Communication Communication
A type that is a model of Dune::Communication. It provides a portable way for communication on the se...
Definition common/grid.hh:515
A Traits struct that collects all associated types of one implementation.
Definition common/grid.hh:411
A traits struct that collects all associated types of one grid model.
Definition common/grid.hh:1013
YaspGridFamily< dim, Coordinates > GridFamily
the GridFamily of this grid
Definition yaspgrid.hh:715
YaspIndexSet< YaspGrid< dim, Coordinates >, false > LevelIndexSetType
Definition yaspgrid.hh:720
int ghostSize(int level, int codim) const
return size (= distance in graph) of ghost region
Definition yaspgrid.hh:1413
const Torus< Communication, dim > & torus() const
return reference to torus
Definition yaspgrid.hh:246
const Traits::LeafIndexSet & leafIndexSet() const
Definition yaspgrid.hh:1749
Traits::template Codim< cd >::template Partition< All_Partition >::LevelIterator lbegin(int level) const
version without second template parameter for convenience
Definition yaspgrid.hh:1343
int size(int level, GeometryType type) const
number of entities per level and geometry type in this process
Definition yaspgrid.hh:1444
Traits::template Codim< Seed::codimension >::Entity entity(const Seed &seed) const
Definition yaspgrid.hh:1386
Traits::template Codim< cd >::template Partition< All_Partition >::LeafIterator leafbegin() const
return LeafIterator which points to the first entity in maxLevel
Definition yaspgrid.hh:1371
const Traits::GlobalIdSet & globalIdSet() const
Definition yaspgrid.hh:1733
void globalRefine(int refCount)
refine the grid refCount times.
Definition yaspgrid.hh:1216
int getMark(const typename Traits::template Codim< 0 >::Entity &e) const
returns adaptation mark for given entity
Definition yaspgrid.hh:1300
YaspGrid(std::array< std::vector< ctype >, std::size_t{dim}> coords, std::bitset< std::size_t{dim}> periodic=std::bitset< std::size_t{dim}>(0ULL), int overlap=1, Communication comm=Communication(), const Yasp::Partitioning< dim > *partitioner=defaultPartitioner())
Standard constructor for a tensorproduct YaspGrid.
Definition yaspgrid.hh:1043
YaspIndexSet< YaspGrid< dim, Coordinates >, true > LeafIndexSetType
Definition yaspgrid.hh:721
int ghostSize(int codim) const
return size (= distance in graph) of ghost region
Definition yaspgrid.hh:1419
int globalSize(int i) const
return number of cells on finest level in given direction on all processors
Definition yaspgrid.hh:252
YaspGrid(Dune::FieldVector< ctype, dim > lowerleft, Dune::FieldVector< ctype, dim > upperright, std::array< int, std::size_t{dim}> s, std::bitset< std::size_t{dim}> periodic=std::bitset< std::size_t{dim}>(0ULL), int overlap=1, Communication comm=Communication(), const Yasp::Partitioning< dim > *partitioner=defaultPartitioner())
Definition yaspgrid.hh:974
Traits::template Codim< cd >::template Partition< pitype >::LeafIterator leafend() const
return LeafIterator which points behind the last entity in maxLevel
Definition yaspgrid.hh:1364
const Dune::FieldVector< ctype, dim > & domainSize() const
returns the size of the physical domain
Definition yaspgrid.hh:1462
YGridLevelIterator end() const
return iterator pointing to one past the finest level
Definition yaspgrid.hh:307
int size(GeometryType type) const
number of leaf entities per geometry type in this process
Definition yaspgrid.hh:1450
YaspGrid(Dune::FieldVector< ctype, dim > L, std::array< int, std::size_t{dim}> s, std::bitset< std::size_t{dim}> periodic=std::bitset< std::size_t{dim}>{0ULL}, int overlap=1, Communication comm=Communication(), const Yasp::Partitioning< dim > *partitioner=defaultPartitioner())
Definition yaspgrid.hh:904
Traits::template Codim< cd >::template Partition< All_Partition >::LeafIterator leafend() const
return LeafIterator which points behind the last entity in maxLevel
Definition yaspgrid.hh:1378
void communicate(CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir, int level) const
Definition yaspgrid.hh:1471
void intersections(const YGridComponent< Coordinates > &sendgrid, const YGridComponent< Coordinates > &recvgrid, std::deque< Intersection > &sendlist, std::deque< Intersection > &recvlist)
Construct list of intersections with neighboring processors.
Definition yaspgrid.hh:561
Traits::template Codim< cd >::template Partition< pitype >::LeafIterator leafbegin() const
return LeafIterator which points to the first entity in maxLevel
Definition yaspgrid.hh:1357
bool preAdapt()
returns true, if the grid will be coarsened
Definition yaspgrid.hh:1313
iTupel levelSize(int l) const
return size vector of the grid (in cells) on level l
Definition yaspgrid.hh:270
bool mark(int refCount, const typename Traits::template Codim< 0 >::Entity &e)
Marks an entity to be refined/coarsened in a subsequent adapt.
Definition yaspgrid.hh:1286
int overlapSize(int level, int codim) const
return size (= distance in graph) of overlap region
Definition yaspgrid.hh:1399
void communicate(CommDataHandleIF< DataHandleImp, DataType > &data, InterfaceType iftype, CommunicationDirection dir) const
Definition yaspgrid.hh:1481
int size(int codim) const
number of leaf entities per codim in this process
Definition yaspgrid.hh:1438
bool isPeriodic(int i) const
return whether the grid is periodic in direction i
Definition yaspgrid.hh:279
const Traits::LevelIndexSet & levelIndexSet(int level) const
Definition yaspgrid.hh:1743
void refineOptions(bool keepPhysicalOverlap)
set options for refinement
Definition yaspgrid.hh:1270
int size(int level, int codim) const
number of entities per level and codim in this process
Definition yaspgrid.hh:1425
YaspGlobalIdSet< YaspGrid< dim, Coordinates > > GlobalIdSetType
Definition yaspgrid.hh:722
YaspGrid(const Coordinates &coordinates, std::bitset< dim > periodic=std::bitset< dim >(0ULL), int overlap=1, Communication comm=Communication(), const Yasp::Partitioning< dim > *partitioner=defaultPartitioner())
Definition yaspgrid.hh:731
Traits::template Codim< cd >::template Partition< All_Partition >::LevelIterator lend(int level) const
version without second template parameter for convenience
Definition yaspgrid.hh:1350
ReservedVector< YGridLevel, 32 >::const_iterator YGridLevelIterator
Iterator over the grid levels.
Definition yaspgrid.hh:290
size_t numBoundarySegments() const
returns the number of boundary segments within the macro grid
Definition yaspgrid.hh:1456
void communicateCodim(DataHandle &data, InterfaceType iftype, CommunicationDirection dir, int level) const
Definition yaspgrid.hh:1491
void makelevel(const Coordinates &coords, std::bitset< dim > periodic, iTupel o_interior, int overlap)
Make a new YGridLevel structure.
Definition yaspgrid.hh:327
bigunsignedint< dim *yaspgrid_dim_bits+yaspgrid_level_bits+dim > PersistentIndexType
Definition yaspgrid.hh:712
Traits::template Codim< cd >::template Partition< pitype >::LevelIterator lend(int level) const
Iterator to one past the last entity of given codim on level for partition type.
Definition yaspgrid.hh:1336
Traits::template Codim< cd >::template Partition< pitype >::LevelIterator lbegin(int level) const
one past the end on this level
Definition yaspgrid.hh:1329
static const Yasp::Partitioning< dim > * defaultPartitioner()
Definition yaspgrid.hh:313
iTupel globalSize() const
return number of cells on finest level on all processors
Definition yaspgrid.hh:258
const Communication & comm() const
return a communication object
Definition yaspgrid.hh:1756
int overlapSize(int odim) const
return size (= distance in graph) of overlap region
Definition yaspgrid.hh:1406
YGridLevelIterator begin(int i) const
return iterator pointing to given level
Definition yaspgrid.hh:299
int levelSize(int l, int i) const
return size of the grid (in cells) on level l in direction i
Definition yaspgrid.hh:264
YGridLevelIterator begin() const
return iterator pointing to coarsest level
Definition yaspgrid.hh:293
The general version that handles all codimensions but 0 and dim.
Definition yaspgridgeometry.hh:31
Definition yaspgridentity.hh:242
Describes the minimal information necessary to create a fully functional YaspEntity.
Definition yaspgridentityseed.hh:18
Iterates over entities of one grid level.
Definition yaspgridleveliterator.hh:19
YaspIntersectionIterator enables iteration over intersections with neighboring codim 0 entities.
Definition yaspgridintersectioniterator.hh:22
YaspIntersection provides data about intersection with neighboring codim 0 entities.
Definition yaspgridintersection.hh:22
YaspHierarchicIterator enables iteration over son entities of codim 0.
Definition yaspgridhierarchiciterator.hh:20
Implementation of Level- and LeafIndexSets for YaspGrid.
Definition yaspgridindexsets.hh:25
Definition yaspgridpersistentcontainer.hh:35
Definition yaspgrid.hh:92
GridTraits< dim, dim, Dune::YaspGrid< dim, Coordinates >, YaspGeometry, YaspEntity, YaspLevelIterator, YaspIntersection, YaspIntersection, YaspIntersectionIterator, YaspIntersectionIterator, YaspHierarchicIterator, YaspLevelIterator, YaspIndexSet< const YaspGrid< dim, Coordinates >, false >, YaspIndexSet< const YaspGrid< dim, Coordinates >, true >, YaspGlobalIdSet< const YaspGrid< dim, Coordinates > >, bigunsignedint< dim *yaspgrid_dim_bits+yaspgrid_level_bits+dim >, YaspGlobalIdSet< const YaspGrid< dim, Coordinates > >, bigunsignedint< dim *yaspgrid_dim_bits+yaspgrid_level_bits+dim >, CCType, DefaultLevelGridViewTraits, DefaultLeafGridViewTraits, YaspEntitySeed, YaspGeometry, unsigned int, std::array< GeometryType, 1 > > Traits
Definition yaspgrid.hh:118
Container for equidistant coordinates in a YaspGrid.
Definition coordinates.hh:29
Container for equidistant coordinates in a YaspGrid with non-trivial origin.
Definition coordinates.hh:131
Coordinate container for a tensor product YaspGrid.
Definition coordinates.hh:245
a base class for the yaspgrid partitioning strategy
Definition partitioning.hh:38
Definition partitioning.hh:47
Definition torus.hh:46
double partition(int rank, iTupel origin_in, iTupel size_in, iTupel &origin_out, iTupel &size_out) const
partition the given grid onto the torus and return the piece of the process with given rank; returns ...
Definition torus.hh:239
void recv(int rank, void *buffer, int size) const
store a receive request; buffers are received in order; handles also local requests with memcpy
Definition torus.hh:374
void send(int rank, void *buffer, int size) const
store a send request; buffers are sent in order; handles also local requests with memcpy
Definition torus.hh:361
int neighbors() const
return the number of neighbors, which is
Definition torus.hh:203
ProcListIterator recvend() const
last process in receive list
Definition torus.hh:355
ProcListIterator sendbegin() const
first process in send list
Definition torus.hh:337
void exchange() const
exchange messages stored in request buffers; clear request buffers afterwards
Definition torus.hh:387
ProcListIterator recvbegin() const
first process in receive list
Definition torus.hh:349
Definition torus.hh:276
Definition ygrid.hh:75
YGridComponent< Coordinates > move(iTupel v) const
return grid moved by the vector v
Definition ygrid.hh:263
YGridComponent< Coordinates > intersection(const YGridComponent< Coordinates > &r) const
Return YGridComponent of supergrid of self which is the intersection of self and another YGridCompone...
Definition ygrid.hh:271
implements a collection of YGridComponents which form a codimension Entities of given codimension c n...
Definition ygrid.hh:551
Iterator over a collection o YGrids A YGrid::Iterator is the heart of an entity in YaspGrid.
Definition ygrid.hh:594
implements a collection of multiple std::deque<Intersection> Intersections with neighboring processor...
Definition ygrid.hh:823
int size() const
return the size of the container, this is the sum of the sizes of all deques
Definition ygrid.hh:953
Iterator end() const
return iterator pointing to the end of the container
Definition ygrid.hh:929
Iterator begin() const
return iterator pointing to the begin of the container
Definition ygrid.hh:923
type describing an intersection with a neighboring processor
Definition ygrid.hh:829
Definition ygrid.hh:846
A set of traits classes to store static information about grid implementation.
Different resources needed by all grid implementations.
Provides base classes for index and id sets.
T begin(T... args)
T copy(T... args)
T count(T... args)
T data(T... args)
T end(T... args)
T endl(T... args)
T fill(T... args)
T max(T... args)
T next(T... args)
T push_back(T... args)
T push_front(T... args)
T swap(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8