Todo List

Class BlockInfo
Extend the functions local() and renumber() to the concept to hpDoFHandler.

Class BlockSparsityPatternBase< SparsityPatternBase >
Handle opitmization of diagonal elements of the underlying SparsityPattern correctly.

Member DataOut< dim, DH >::build_patches (const Mapping< DH::dimension, DH::space_dimension > &mapping, const unsigned int n_subdivisions=0, const CurvedCellRegion curved_region=curved_boundary)
The mapping argument should be replaced by a hp::MappingCollection in case of a hp::DoFHandler.

Class DataOutFaces< dim, DH >
Reimplement this whole class using actual FEFaceValues and MeshWorker.

Member DataOutFaces< dim, DH >::build_patches (const Mapping< DH::dimension > &mapping, const unsigned int n_subdivisions=0)
The mapping argument should be replaced by a hp::MappingCollection in case of a hp::DoFHandler.

Class FE_ABF< dim >
Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3D. Therefore, care should be taken on complicated meshes.

Class FE_BDM< dim >

This is for 2D only.

Transformation works only for uniform, Cartesian meshes

Class FE_FaceQ< dim, spacedim >
Polynomials::LagrangeEquidistant should be and will be replaced by Polynomials::LagrangeGaussLobatto as soon as such a polynomial set exists.

Class FE_Nedelec< dim >
Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3D. Therefore, care should be taken on complicated meshes.

Class FE_Poly< POLY, dim, spacedim >
Since nearly all functions for spacedim != dim are specialized, this class needs cleaning up.

Class FE_RaviartThomas< dim >
Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3D. Therefore, care should be taken on complicated meshes.

Class FE_RaviartThomasNodal< dim >

The current implementation is for Cartesian meshes only. You must use MappingCartesian.

Even if this element is implemented for two and three space dimensions, the definition of the node values relies on consistently oriented faces in 3D. Therefore, care should be taken on complicated meshes.

Member FESubfaceValues< dim, spacedim >::ExcFaceHasNoSubfaces ()
Document this

Member FESubfaceValues< dim, spacedim >::ExcReinitCalledWithBoundaryFace ()
Document this

Member FETools::compute_block_renumbering (const FiniteElement< dim, spacedim > &fe, std::vector< unsigned int > &renumbering, std::vector< unsigned int > &block_data, bool return_start_indices=true)
Which way does this vector map the numbers?

Member FEValuesBase< dim, spacedim >::ExcCannotInitializeField ()
Document this

Member FEValuesBase< dim, spacedim >::ExcFEDontMatch ()
Document this

Member FEValuesBase< dim, spacedim >::ExcFENotPrimitive ()
Document this

Member FEValuesBase< dim, spacedim >::ExcInvalidUpdateFlag ()
Document this

Member FEValuesBase< dim, spacedim >::ExcShapeFunctionNotPrimitive (int arg1)
Document this

Class Functions::FEFieldFunction< dim, DH, VECTOR >
Add hp functionality

Class Mapping< dim, spacedim >

Add a function transform_quadrature_points for this.

Add a function transform_quadrature_weights for this.

Add documentation on the codimension-one case

Member Mapping< dim, spacedim >::transform (const VectorSlice< const std::vector< Tensor< 2, dim > > > input, VectorSlice< std::vector< Tensor< 2, spacedim > > > output, const InternalDataBase &internal, const MappingType type) const =0
The formulas for mapping_covariant_gradient and mapping_contravariant_gradient have been reverse engineered from MappingQ1. They should be verified for consistency with mathematics. The description of the Piola transform is from Hoppe's lecture notes and the implementation should be verified.

Class MatrixBlock< MATRIX >
Example for the product preconditioner of the pressure Schur complement.

Member MatrixBlock< MATRIX >::add (const std::vector< unsigned int > &indices, const FullMatrix< number > &full_matrix, const bool elide_zero_values=true)
elide_zero_values is currently ignored.

Member MatrixBlock< MATRIX >::add (const unsigned int row_index, const std::vector< unsigned int > &col_indices, const std::vector< number > &values, const bool elide_zero_values=true)
elide_zero_values is currently ignored.

Member MatrixBlock< MATRIX >::add (const std::vector< unsigned int > &row_indices, const std::vector< unsigned int > &col_indices, const FullMatrix< number > &full_matrix, const bool elide_zero_values=true)
elide_zero_values is currently ignored.

Member MatrixCreator::create_boundary_mass_matrix (const Mapping< dim, spacedim > &mapping, const DoFHandler< dim, spacedim > &dof, const Quadrature< dim-1 > &q, SparseMatrix< double > &matrix, const typename FunctionMap< spacedim >::type &boundary_functions, Vector< double > &rhs_vector, std::vector< unsigned int > &dof_to_boundary_mapping, const Function< spacedim > *const weight=0, std::vector< unsigned int > component_mapping=stdvector< unsigned int >())
This function does not work for finite elements with cell-dependent shape functions.

Class MeshWorker::Assembler::MatrixSimple< MATRIX >
On locally refined meshes, a ConstraintMatrix should be used to automatically eliminate hanging nodes.

Class MeshWorker::Assembler::MGMatrixSimple< MATRIX >
The matrix structures needed for assembling level matrices with local refinement and continuous elements are missing.

Class MeshWorker::Assembler::ResidualLocalBlocksToGlobalBlocks< VECTOR >
Comprehensive model currently not implemented.

Class MeshWorker::DoFInfoBox< dim, DOFINFO >
Currently, we are storing an object for the cells and two for each face. We could gather all face data pertaining to the cell itself in one object, saving a bit of memory and a few operations, but sacrificing some cleanliness.

Member MeshWorker::LocalResults< number >::quadrature_data
Shouldn't this be in IntegrationInfo? Guido

Member MGDoFAccessor< structdim, dim, spacedim >::mg_dof_index (const int level, const unsigned int i) const
This function is broken for faces.

Class MGDoFHandler< dim, spacedim >
This class has not yet been implemented for the use in the codimension one case (spacedim != dim ).

Class MGTransferBase< VECTOR >
update the following documentation, since it does not reflect the latest changes in structure.

Class PathSearch
Add support for environment variables like in kpathsea.

Class PolynomialsAdini
This polynomial space is implemented in 2D only.

Class PolynomialsBDM< dim >
Second derivatives in 3D are missing.

Member Threads::this_thread_id ()
As of now, none of our systems seems to support gettid, so that part of the code is untested yet.

Member VectorTools::interpolate (const Mapping< DH::dimension, DH::space_dimension > &mapping, const DH &dof, const Function< DH::space_dimension > &function, VECTOR &vec)
The mapping argument should be replaced by a hp::MappingCollection in case of a hp::DoFHandler.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

deal.II documentation generated on Fri Feb 3 2012 06:04:04 by doxygen 1.7.2