code-gallery
code-gallery copied to clipboard
Quasi_static_Finite_strain_Quasi_incompressible_ViscoElasticity still uses old way to filter for cells with DataOut
This program still uses the old way to select which cells to produce output on:
template<int dim>
class FilteredDataOut : public DataOut<dim>
{
public:
FilteredDataOut (const unsigned int subdomain_id)
:
subdomain_id (subdomain_id)
{}
virtual ~FilteredDataOut() {}
virtual typename DataOut<dim>::cell_iterator
first_cell ()
{
auto cell = this->dofs->begin_active();
while ((cell != this->dofs->end()) &&
(cell->subdomain_id() != subdomain_id))
++cell;
return cell;
}
virtual typename DataOut<dim>::cell_iterator
next_cell (const typename DataOut<dim>::cell_iterator &old_cell)
{
if (old_cell != this->dofs->end())
{
const IteratorFilters::SubdomainEqualTo predicate(subdomain_id);
return
++(FilteredIterator
<typename DataOut<dim>::cell_iterator>
(predicate,old_cell));
}
else
return old_cell;
}
private:
const unsigned int subdomain_id;
};
This needs to be updated.