Doxygen API reference documentation for ideal.II
|
A collection of slab iterators to simplify time marching. More...
#include <time_iterator.hh>
Public Member Functions | |
TimeIteratorCollection () | |
Default constructor. More... | |
void | add_iterator (slab::TriaIterator< dim > *it, spacetime::Triangulation< dim > *collection) |
Add a slab::TriaIterator<dim> iterator. More... | |
void | add_iterator (slab::parallel::distributed::TriaIterator< dim > *it, spacetime::parallel::distributed::Triangulation< dim > *collection) |
Add a parallel::distributed::slab::TriaIterator<dim> iterator. More... | |
void | add_iterator (slab::DoFHandlerIterator< dim > *it, spacetime::DoFHandler< dim > *collection) |
Add a slab::DoFHandlerIterator<dim> iterator. More... | |
void | add_iterator (slab::VectorIterator< double > *it, spacetime::Vector< double > *collection) |
Add a slab::VectorIterator<dim> iterator. More... | |
void | add_iterator (slab::TrilinosVectorIterator *it, spacetime::TrilinosVector *collection) |
Add a slab::TrilinosVectorIterator<dim> iterator. More... | |
void | increment () |
void | decrement () |
bool | at_end () |
bool | before_begin () |
A collection of slab iterators to simplify time marching.
The second type of spacetime objects like spacetime::Triangulation, spacetime::DoFHandler and spacetime::Vector are simply doubly linked lists of objects corresponding to a specific slab.
For forward or backward time marching these lists need to be traversed simultaneously. This class combines all iterator increments or decrements into a single function call.
idealii::TimeIteratorCollection< dim >::TimeIteratorCollection | ( | ) |
Default constructor.
void idealii::TimeIteratorCollection< dim >::add_iterator | ( | slab::DoFHandlerIterator< dim > * | it, |
spacetime::DoFHandler< dim > * | collection | ||
) |
Add a slab::DoFHandlerIterator<dim> iterator.
it | A pointer to the slab::DoFHandlerIterator<dim> |
collection | A pointer to the spacetime::DoFHandler<dim> whose member list includes it |
void idealii::TimeIteratorCollection< dim >::add_iterator | ( | slab::parallel::distributed::TriaIterator< dim > * | it, |
spacetime::parallel::distributed::Triangulation< dim > * | collection | ||
) |
Add a parallel::distributed::slab::TriaIterator<dim> iterator.
it | A pointer to the parallel::distributed::slab::TriaIterator<dim> |
collection | A pointer to the parallel::distributed::spacetime::Triangulation<dim> whose member list includes it |
void idealii::TimeIteratorCollection< dim >::add_iterator | ( | slab::TriaIterator< dim > * | it, |
spacetime::Triangulation< dim > * | collection | ||
) |
Add a slab::TriaIterator<dim> iterator.
it | A pointer to the slab::TriaIterator<dim> |
collection | A pointer to the spacetime::Triangulation<dim> whose member list includes it |
void idealii::TimeIteratorCollection< dim >::add_iterator | ( | slab::TrilinosVectorIterator * | it, |
spacetime::TrilinosVector * | collection | ||
) |
Add a slab::TrilinosVectorIterator<dim> iterator.
it | A pointer to the slab::TrilinosVectorIterator<dim> |
collection | A pointer to the spacetime::TrilinosVector<dim> whose member list includes it |
void idealii::TimeIteratorCollection< dim >::add_iterator | ( | slab::VectorIterator< double > * | it, |
spacetime::Vector< double > * | collection | ||
) |
Add a slab::VectorIterator<dim> iterator.
it | A pointer to the slab::VectorIterator<dim> |
collection | A pointer to the spacetime::Vector<dim> whose member list includes it |
bool idealii::TimeIteratorCollection< dim >::at_end | ( | ) |
For use as a stopping criterion in forward time marching.
bool idealii::TimeIteratorCollection< dim >::before_begin | ( | ) |
For use as a stopping criterion in backward time marching.
void idealii::TimeIteratorCollection< dim >::decrement | ( | ) |
Decrements all added iterators via their prefix decrement operators.
void idealii::TimeIteratorCollection< dim >::increment | ( | ) |
Increments all added iterators via their prefix increment operators.