FEValuesBase< dim >::TriaCellIterator Class Reference

Inheritance diagram for FEValuesBase< dim >::TriaCellIterator:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 TriaCellIterator (const typename Triangulation< dim >::cell_iterator &cell)
virtual operator const typename Triangulation< dim >::cell_iterator () const
virtual unsigned int n_dofs_for_dof_handler () const
virtual void get_interpolated_dof_values (const Vector< double > &in, Vector< double > &out) const
virtual void get_interpolated_dof_values (const Vector< float > &in, Vector< float > &out) const
virtual void get_interpolated_dof_values (const Vector< long double > &in, Vector< long double > &out) const
virtual void get_interpolated_dof_values (const BlockVector< double > &in, Vector< double > &out) const
virtual void get_interpolated_dof_values (const BlockVector< float > &in, Vector< float > &out) const
virtual void get_interpolated_dof_values (const BlockVector< long double > &in, Vector< long double > &out) const
virtual void get_interpolated_dof_values (const PETScWrappers::Vector &in, Vector< PetscScalar > &out) const
virtual void get_interpolated_dof_values (const PETScWrappers::BlockVector &in, Vector< PetscScalar > &out) const
virtual void get_interpolated_dof_values (const TrilinosWrappers::Vector &in, Vector< TrilinosScalar > &out) const
virtual void get_interpolated_dof_values (const TrilinosWrappers::BlockVector &in, Vector< TrilinosScalar > &out) const
virtual void get_interpolated_dof_values (const TrilinosWrappers::MPI::Vector &in, Vector< TrilinosScalar > &out) const
virtual void get_interpolated_dof_values (const TrilinosWrappers::MPI::BlockVector &in, Vector< TrilinosScalar > &out) const

Private Attributes

const Triangulation< dim >
::cell_iterator 
cell

Static Private Attributes

static const char *const message_string


Detailed Description

template<int dim>
class FEValuesBase< dim >::TriaCellIterator

Implementation of a derived class of the CellIteratorBase interface. See there for a description of the use of these classes.

This class is basically a specialization of the general template for iterators into Triangulation objects (but since C++ does not allow something like this for nested classes, it runs under a separate name). Since these do not implement the interface that we would like to call, the functions of this class cannot be implemented meaningfully. However, most functions of the FEValues class do not make any use of degrees of freedom at all, so it should be possible to call FEValues::reinit() with a tria iterator only; this class makes this possible, but whenever one of the functions of FEValues tries to call any of the functions of this class, an exception will be raised reminding the user that if she wants to use these features, then the FEValues object has to be reinitialized with a cell iterator that allows to extract degree of freedom information.

Author:
Wolfgang Bangerth, 2003

Constructor & Destructor Documentation

template<int dim>
FEValuesBase< dim >::TriaCellIterator::TriaCellIterator ( const typename Triangulation< dim >::cell_iterator &  cell  ) 

Constructor. Take an iterator and store it in this class.


Member Function Documentation

template<int dim>
virtual FEValuesBase< dim >::TriaCellIterator::operator const typename Triangulation< dim >::cell_iterator (  )  const [virtual]

Conversion operator to an iterator for triangulations. This conversion is implicit for the original iterators, since they are derived classes. However, since here we have kind of a parallel class hierarchy, we have to have a conversion operator. Here, the conversion is trivial, from and to the same time.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual unsigned int FEValuesBase< dim >::TriaCellIterator::n_dofs_for_dof_handler (  )  const [virtual]

Implement the respective function of the base class. Since this is not possible, we just raise an error.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const Vector< double > &  in,
Vector< double > &  out 
) const [virtual]

Implement the respective function of the base class. Since this is not possible, we just raise an error.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const Vector< float > &  in,
Vector< float > &  out 
) const [virtual]

Implement the respective function of the base class. Since this is not possible, we just raise an error.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const Vector< long double > &  in,
Vector< long double > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const BlockVector< double > &  in,
Vector< double > &  out 
) const [virtual]

Implement the respective function of the base class. Since this is not possible, we just raise an error.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const BlockVector< float > &  in,
Vector< float > &  out 
) const [virtual]

Implement the respective function of the base class. Since this is not possible, we just raise an error.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const BlockVector< long double > &  in,
Vector< long double > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const PETScWrappers::Vector in,
Vector< PetscScalar > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const PETScWrappers::BlockVector in,
Vector< PetscScalar > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const TrilinosWrappers::Vector in,
Vector< TrilinosScalar > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const TrilinosWrappers::BlockVector in,
Vector< TrilinosScalar > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const TrilinosWrappers::MPI::Vector in,
Vector< TrilinosScalar > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.

template<int dim>
virtual void FEValuesBase< dim >::TriaCellIterator::get_interpolated_dof_values ( const TrilinosWrappers::MPI::BlockVector in,
Vector< TrilinosScalar > &  out 
) const [virtual]

Call get_interpolated_dof_values of the iterator with the given arguments.

Implements FEValuesBase< dim >::CellIteratorBase.


Member Data Documentation

template<int dim>
const Triangulation<dim>::cell_iterator FEValuesBase< dim >::TriaCellIterator::cell [private]

Copy of the iterator which we use in this object.

template<int dim>
const char* const FEValuesBase< dim >::TriaCellIterator::message_string [static, private]

String to be displayed whenever one of the functions of this class is called. Make it a static member variable, since we show the same message for all member functions.


The documentation for this class was generated from the following file:

deal.II documentation generated on Fri Nov 21 07:13:07 2008 by doxygen 1.5.6