24 #ifndef TIMEITERATOR_H_
25 #define TIMEITERATOR_H_
27 #include <deal.II/dofs/dof_handler.h>
28 #include <deal.II/dofs/dof_accessor.h>
29 #include <deal.II/grid/tria_iterator.h>
33 namespace IteratorState
81 present_index_ = present_index;
89 element_ = it.element_;
90 present_index_ = it.present_index_;
99 if (present_index_ >= 0 && present_index_
100 < static_cast<int>(element_->get_triangulation().n_active_cells()))
104 if (present_index_ == -1)
108 if (present_index_ == -2)
124 return present_index_;
130 element_ = element.element_;
131 present_index_ = element.present_index_;
139 present_index_ = present_index;
167 return element_->center()(0);
177 return element_->face(0)->center()(0);
187 return element_->face(1)->center()(0);
197 return element_->diameter();
210 element_->get_dof_indices(local_dof_indices);
221 if (present_index_ < static_cast<int>(element_->get_triangulation().n_active_cells()))
223 element_ = element_->neighbor(1);
243 if (present_index_ < static_cast<int>(element_->get_triangulation().n_active_cells()))
245 element_ = element_->neighbor(1);
262 if (present_index_ >= 0)
264 element_ = element_->neighbor(0);
282 if (present_index_ >= 0)
284 element_ = element_->neighbor(0);
IteratorState::IteratorStates GetState() const
Definition: timeiterator.h:97
TimeIterator(const active_cell_it &element, int present_index)
Definition: timeiterator.h:78
Iterator reached end of container.
Definition: timeiterator.h:45
TimeIterator & operator=(const TimeIterator &element)
Definition: timeiterator.h:128
bool operator==(const TimeIterator &element)
Definition: timeiterator.h:143
TimeIterator operator--(int)
Definition: timeiterator.h:278
dealii::DoFHandler< 1 >::active_cell_iterator active_cell_it
Definition: timeiterator.h:53
const active_cell_it & getelement_() const
Definition: timeiterator.h:201
TimeIterator & operator++()
Definition: timeiterator.h:217
Iterator is invalid, probably due to an error.
Definition: timeiterator.h:49
double get_center() const
Definition: timeiterator.h:164
TimeIterator operator++(int)
Definition: timeiterator.h:237
Definition: timeiterator.h:47
Definition: timeiterator.h:62
double get_k() const
Definition: timeiterator.h:194
bool operator!=(const TimeIterator &element)
Definition: timeiterator.h:152
TimeIterator()
Definition: timeiterator.h:70
void get_time_dof_indices(std::vector< unsigned int > &local_dof_indices) const
Definition: timeiterator.h:207
void Initialize(const active_cell_it &element, int present_index)
Definition: timeiterator.h:136
IteratorStates
Definition: timeiterator.h:40
double get_right() const
Definition: timeiterator.h:184
TimeIterator(const TimeIterator &it)
Definition: timeiterator.h:87
double get_left() const
Definition: timeiterator.h:174
Iterator points to a valid object.
Definition: timeiterator.h:43
int GetIndex() const
Definition: timeiterator.h:122
TimeIterator & operator--()
Definition: timeiterator.h:258