Exceptions and assertions


Namespaces

namespace  deal_II_exceptions
namespace  deal_II_exceptions::internals
namespace  StandardExceptions

Classes

class  ExceptionBase

Exceptions

::ExceptionBaseTriangulation::ExcInvalidLevel (int arg1) throw (errortext << "The given level " << arg1 << " is not in the valid range!" )
::ExceptionBaseTriangulation::ExcTriangulationNotEmpty ()
::ExceptionBaseTriangulation::ExcGridReadError ()
::ExceptionBaseTriangulation::ExcFacesHaveNoLevel ()
::ExceptionBaseTriangulation::ExcEmptyLevel (int arg1) throw (errortext << "You tried to do something on level " << arg1 << ", but this level is empty." )

Defines

#define Assert(cond, exc)
#define AssertThrow(cond, exc)
#define DeclException0(Exception0)   static ::ExceptionBase& Exception0 ()
#define DeclException1(Exception1, type1, outsequence)   static ::ExceptionBase& Exception1 (type1 arg1) throw (errortext outsequence)
#define DeclException2(Exception2, type1, type2, outsequence)   static ::ExceptionBase& Exception2 (type1 arg1, type2 arg2) throw (errortext outsequence)
#define DeclException3(Exception3, type1, type2, type3, outsequence)   static ::ExceptionBase& Exception3 (type1 arg1, type2 arg2, type3 arg3) throw (errortext outsequence)
#define DeclException4(Exception4, type1, type2, type3, type4, outsequence)   static ::ExceptionBase& Exception4 (type1 arg1, type2 arg2, type3 arg3, type4 arg4) throw (errortext outsequence)
#define DeclException5(Exception5, type1, type2, type3, type4, type5, outsequence)   static ::ExceptionBase& Exception5 (type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) throw (errortext outsequence)
#define AssertDimension(dim1, dim2)
#define AssertVectorVectorDimension(vec, dim1, dim2)
#define AssertIndexRange(index, range)

Functions

::ExceptionBaseConvergenceTable::ExcWrongValueType ()
::ExceptionBaseConvergenceTable::ExcRateColumnAlreadyExists (std::string arg1) throw (errortext << "Rate column <" << arg1 << "> does already exist." )
::ExceptionBaseDataOutBase::Patch::ExcInvalidCombinationOfDimensions (int arg1, int arg2) throw (errortext << "It is not possible to have a structural dimension of " << arg1 << " to be larger than the space dimension of the surrounding" << " space " << arg2 )
::ExceptionBaseDataOutBase::ExcInvalidDatasetSize (int arg1, int arg2) throw (errortext << "The number of points in this data set is " << arg1 << ", but we expected " << arg2 << " in each space direction." )
::ExceptionBaseDataOutBase::ExcNoPatches ()
::ExceptionBaseDataOutBase::ExcTecplotAPIError ()
::ExceptionBaseDataOutBase::ExcErrorOpeningTecplotFile (char *arg1) throw (errortext << "There was an error opening Tecplot file " << arg1 << " for output" )
::ExceptionBaseStandardExceptions::ExcDivideByZero ()
::ExceptionBaseStandardExceptions::ExcOutOfMemory ()
::ExceptionBaseStandardExceptions::ExcMemoryLeak (int arg1) throw (errortext << "Destroying memory handler while " << arg1 << " objects are still allocated" )
::ExceptionBaseStandardExceptions::ExcIO ()
::ExceptionBaseStandardExceptions::ExcFileNotOpen (char *arg1) throw (errortext << "Could not open file " << arg1 )
::ExceptionBaseStandardExceptions::ExcNotImplemented ()
::ExceptionBaseStandardExceptions::ExcInternalError ()
::ExceptionBaseStandardExceptions::ExcPureFunctionCalled ()
::ExceptionBaseStandardExceptions::ExcInvalidConstructorCall ()
::ExceptionBaseStandardExceptions::ExcNotInitialized ()
::ExceptionBaseStandardExceptions::ExcInvalidState ()
::ExceptionBaseStandardExceptions::ExcImpossibleInDim (int arg1) throw (errortext << "Impossible in " << arg1 << "d." )
::ExceptionBaseStandardExceptions::ExcZero ()
::ExceptionBaseStandardExceptions::ExcEmptyObject ()
::ExceptionBaseStandardExceptions::ExcDimensionMismatch (int arg1, int arg2) throw (errortext << "Dimension " << arg1 << " not equal to " << arg2 )
::ExceptionBaseStandardExceptions::ExcDimensionMismatch2 (int arg1, int arg2, int arg3) throw (errortext << "Dimension " << arg1 << " neither equal to " << arg2 << " nor to " << arg3 )
::ExceptionBaseStandardExceptions::ExcIndexRange (int arg1, int arg2, int arg3) throw (errortext << "Index " << arg1 << " is not in [" << arg2 << "," << arg3 << "[" )
::ExceptionBaseStandardExceptions::ExcLowerRange (int arg1, int arg2) throw (errortext << "Number " << arg1 << " must be larger or equal " << arg2 )
::ExceptionBaseStandardExceptions::ExcNotMultiple (int arg1, int arg2) throw (errortext << "Division " << arg1 << " by " << arg2 << " has remainder different from zero" )
::ExceptionBaseStandardExceptions::ExcInvalidIterator ()
::ExceptionBaseStandardExceptions::ExcIteratorPastEnd ()
::ExceptionBaseStandardExceptions::ExcMessage (char *arg1) throw (errortext << arg1 )
::ExceptionBaseStandardExceptions::ExcCompatibility (char *arg1) throw (errortext << "You are using a backward compatibility feature\n" << "that you have disabled during configuration of\n" << "the library by the --disable-compat=" << arg1 << " switch. You should either use an\n" << "alternative function, or configure again without\n" << "this switch and recompile the library." )
::ExceptionBaseStandardExceptions::ExcScalarAssignmentOnlyForZeroValue ()
::ExceptionBaseStandardExceptions::ExcNeedsBLAS ()
::ExceptionBaseStandardExceptions::ExcNeedsLAPACK ()
::ExceptionBaseStandardExceptions::ExcNeedsUMFPACK ()
::ExceptionBaseStandardExceptions::ExcNeedsMETIS ()
::ExceptionBaseStandardExceptions::ExcNeedsPETSC ()
::ExceptionBaseStandardExceptions::ExcNeedsNetCDF ()
::ExceptionBaseStandardExceptions::ExcDisabled (char *arg1) throw (errortext << "This feature was disabled by the " "configuration option --disable-" << arg1 << ". Reconfigure to use it!" )
::ExceptionBaseFunctionDerivative::ExcInvalidFormula ()
::ExceptionBaseFunctionParser::ExcParseError (int arg1, char *arg2) throw (errortext << "Parsing Error at Column " << arg1 << ". The parser said: " << arg2 )
::ExceptionBaseFunctionParser::ExcInvalidExpressionSize (int arg1, int arg2) throw (errortext << "The number of components (" << arg1 << ") is not equal to the number of expressions (" << arg2 << ")." )
::ExceptionBasePatterns::List::ExcInvalidRange (int arg1, int arg2) throw (errortext << "The values " << arg1 << " and " << arg2 << " do not form a valid range." )
::ExceptionBasePatterns::MultipleSelection::ExcCommasNotAllowed (int arg1) throw (errortext << "A comma was found at position " << arg1 << " of your input string, but commas are not allowed here." )
::ExceptionBaseParameterHandler::ExcEntryAlreadyExists (std::string arg1) throw (errortext << "The following entry already exists: " << arg1 )
::ExceptionBaseParameterHandler::ExcDefaultDoesNotMatchPattern (std::string arg1, std::string arg2) throw (errortext << "The default string <" << arg1 << "> does not match the given pattern <" << arg2 << ">" )
::ExceptionBaseParameterHandler::ExcAlreadyAtTopLevel ()
::ExceptionBaseParameterHandler::ExcEntryUndeclared (std::string arg1) throw (errortext << "You can't ask for entry <" << arg1 << "> you have not yet declared" )
::ExceptionBaseParameterHandler::ExcConversionError (std::string arg1) throw (errortext << "Error when trying to convert the following string: " << arg1 )
::ExceptionBasePathSearch::ExcNoClass (std::string arg1) throw (errortext << "The class " << arg1 << " must be registered before referring it in PathSearch" )
::ExceptionBasePathSearch::ExcFileNotFound (std::string arg1, std::string arg2) throw (errortext << "The file \"" << arg1 << "\" was not found in the path for files of class " << arg2 )
::ExceptionBaseQuadratureSelector::ExcInvalidQGaussOrder (int arg1) throw (errortext << "You tried to generate QGauss with an invalid order of " << arg1 << " (must be >= 2)" )
::ExceptionBaseQuadratureSelector::ExcInvalidOrder (std::string arg1, unsigned int arg2) throw (errortext << "You tried to generate a " << arg1 << " object; no order is needed (" << arg2 << " was given as parameter)" )
::ExceptionBaseQuadratureSelector::ExcInvalidQuadrature (std::string arg1) throw (errortext << arg1 << " is not a valid quadrature name for a quadrature rule" )
::ExceptionBaseSubscriptor::ExcInUse (int arg1, char *arg2, std::string &arg3) throw (errortext << "Object of class " << arg2 << " is still used by " << arg1 << " other objects." << arg3 )
::ExceptionBaseSubscriptor::ExcNoSubscriber (char *arg1, char *arg2) throw (errortext << "No subscriber with identifier \"" << arg2 << "\" did subscribe to this object of class " << arg1 )
::ExceptionBaseSubscriptor::ExcNotUsed ()
::ExceptionBaseTableHandler::ExcColumnNotExistent (std::string arg1) throw (errortext << "Column <" << arg1 << "> does not exist." )
::ExceptionBaseTableHandler::ExcSuperColumnNotExistent (std::string arg1) throw (errortext << "Supercolumn <" << arg1 << "> does not exist." )
::ExceptionBaseTableHandler::ExcColumnOrSuperColumnNotExistent (std::string arg1) throw (errortext << "Column or supercolumn <" << arg1 << "> does not exist." )
::ExceptionBaseTableHandler::ExcWrongNumberOfDataEntries (std::string arg1, int arg2, std::string arg3, int arg4) throw (errortext << "Column <" << arg1 << "> has got " << arg2 << " rows, but Column <" << arg3 << "> has got " << arg4 << "." )
::ExceptionBaseTableHandler::ExcUndefinedTexFormat (std::string arg1) throw (errortext << "<" << arg1 << "> is not a tex column format. Use l,c,r." )
::ExceptionBaseTensor< 0, dim >::ExcDimTooSmall (int arg1) throw (errortext << "dim must be positive, but was " << arg1 )
::ExceptionBaseTensor< 1, dim >::ExcDimTooSmall (int arg1) throw (errortext << "dim must be positive, but was " << arg1 )
::ExceptionBaseThreads::DummyBarrier::ExcBarrierSizeNotUseful (int arg1) throw (errortext << "In single-thread mode, other barrier sizes than 1 are not " << "useful. You gave " << arg1 )
::ExceptionBaseThreads::Thread::ExcNoThread ()
::ExceptionBaseThreads::Task::ExcNoTask ()
::ExceptionBaseBlockTrianglePrecondition::ExcNoDiagonal (unsigned int arg1) throw (errortext << "No diagonal entry was added for block " << arg1 )
::ExceptionBaseBlockTrianglePrecondition::ExcMultipleDiagonal (unsigned int arg1) throw (errortext << "Inverse diagonal entries may not be added in block " << arg1 )
::ExceptionBaseBlockMatrixBase::ExcIncompatibleRowNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." )
::ExceptionBaseBlockMatrixBase::ExcIncompatibleColNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." )
::ExceptionBaseBlockSparseMatrix::ExcBlockDimensionMismatch ()
::ExceptionBaseBlockSparsityPatternBase::ExcIncompatibleRowNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." )
::ExceptionBaseBlockSparsityPatternBase::ExcIncompatibleColNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." )
::ExceptionBaseBlockSparsityPatternBase::ExcIncompatibleSizes (int arg1, int arg2) throw (errortext << "The number of blocks " << arg1 << " and " << arg2 << " are different." )
::ExceptionBaseBlockSparsityPatternBase::ExcInvalidConstructorCall ()
::ExceptionBaseBlockVector::ExcIteratorRangeDoesNotMatchVectorSize ()
::ExceptionBaseinternal::BlockVectorIterators::Iterator::ExcPointerToDifferentVectors ()
::ExceptionBaseinternal::BlockVectorIterators::Iterator::ExcCastingAwayConstness ()
::ExceptionBaseChunkSparseMatrix::ExcInvalidIndex (int arg1, int arg2) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." )
::ExceptionBaseChunkSparseMatrix::ExcInvalidIndex1 (int arg1) throw (errortext << "The index " << arg1 << " is not in the allowed range." )
::ExceptionBaseChunkSparseMatrix::ExcDifferentChunkSparsityPatterns ()
::ExceptionBaseChunkSparseMatrix::ExcIteratorRange (int arg1, int arg2) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 )
::ExceptionBaseChunkSparseMatrix::ExcSourceEqualsDestination ()
::ExceptionBaseChunkSparsityPattern::ExcInvalidNumber (int arg1) throw (errortext << "The provided number is invalid here: " << arg1 )
::ExceptionBaseChunkSparsityPattern::ExcInvalidIndex (int arg1, int arg2) throw (errortext << "The given index " << arg1 << " should be less than " << arg2 << "." )
::ExceptionBaseChunkSparsityPattern::ExcNotEnoughSpace (int arg1, int arg2) throw (errortext << "Upon entering a new entry to row " << arg1 << ": there was no free entry any more. " << std::endl << "(Maximum number of entries for this row: " << arg2 << "; maybe the matrix is already compressed?)" )
::ExceptionBaseChunkSparsityPattern::ExcNotCompressed ()
::ExceptionBaseChunkSparsityPattern::ExcMatrixIsCompressed ()
::ExceptionBaseChunkSparsityPattern::ExcEmptyObject ()
::ExceptionBaseChunkSparsityPattern::ExcInvalidConstructorCall ()
::ExceptionBaseChunkSparsityPattern::ExcDiagonalNotOptimized ()
::ExceptionBaseChunkSparsityPattern::ExcIteratorRange (int arg1, int arg2) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 )
::ExceptionBaseChunkSparsityPattern::ExcMETISNotInstalled ()
::ExceptionBaseChunkSparsityPattern::ExcInvalidNumberOfPartitions (int arg1) throw (errortext << "The number of partitions you gave is " << arg1 << ", but must be greater than zero." )
::ExceptionBaseChunkSparsityPattern::ExcInvalidArraySize (int arg1, int arg2) throw (errortext << "The array has size " << arg1 << " but should have size " << arg2 )
::ExceptionBaseConstraintMatrix::ExcMatrixIsClosed ()
::ExceptionBaseConstraintMatrix::ExcMatrixNotClosed ()
::ExceptionBaseConstraintMatrix::ExcLineInexistant (unsigned int arg1) throw (errortext << "The specified line " << arg1 << " does not exist." )
::ExceptionBaseConstraintMatrix::ExcEntryAlreadyExists (int arg1, int arg2, double arg3, double arg4) throw (errortext << "The entry for the indices " << arg1 << " and " << arg2 << " already exists, but the values " << arg3 << " (old) and " << arg4 << " (new) differ " << "by " << (arg4-arg3) << "." )
::ExceptionBaseConstraintMatrix::ExcDoFConstrainedToConstrainedDoF (int arg1, int arg2) throw (errortext << "You tried to constrain DoF " << arg1 << " to DoF " << arg2 << ", but that one is also constrained. This is not allowed!" )
::ExceptionBaseConstraintMatrix::ExcDoFIsConstrainedFromBothObjects (int arg1) throw (errortext << "Degree of freedom " << arg1 << " is constrained from both object in a merge operation." )
::ExceptionBaseConstraintMatrix::ExcDoFIsConstrainedToConstrainedDoF (int arg1) throw (errortext << "In the given argument a degree of freedom is constrained " << "to another DoF with number " << arg1 << ", which however is constrained by this object. This is not" << " allowed." )
::ExceptionBaseConstraintMatrix::ExcRowNotStoredHere (int arg1) throw (errortext << "The index set given to this constraint matrix indicates " << "constraints for degree of freedom " << arg1 << " should not be stored by this object, but a constraint " << "is being added." )
::ExceptionBaseLACExceptions::ExcNotQuadratic ()
::ExceptionBaseLACExceptions::ExcSingular ()
::ExceptionBaseLACExceptions::ExcDifferentBlockIndices ()
::ExceptionBaseLACExceptions::ExcPETScError (int arg1) throw (errortext << "An error with error number " << arg1 << " occured while calling a PETSc function" )
::ExceptionBaseLACExceptions::ExcTrilinosError (int arg1) throw (errortext << "An error with error number " << arg1 << " occured while calling a Trilinos function" )
::ExceptionBaseFullMatrix::ExcEmptyMatrix ()
::ExceptionBaseFullMatrix::ExcNotRegular (number arg1) throw (errortext << "The maximal pivot is " << arg1 << ", which is below the threshold. The matrix may be singular." )
::ExceptionBaseFullMatrix::ExcInvalidDestination (int arg1, int arg2, int arg3) throw (errortext << "Target region not in matrix: size in this direction=" << arg1 << ", size of new matrix=" << arg2 << ", offset=" << arg3 )
::ExceptionBaseFullMatrix::ExcSourceEqualsDestination ()
::ExceptionBaseFullMatrix::ExcMatrixNotPositiveDefinite ()
::ExceptionBasePETScWrappers::BlockSparseMatrix::ExcIncompatibleRowNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." )
::ExceptionBasePETScWrappers::BlockSparseMatrix::ExcIncompatibleColNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." )
::ExceptionBasePETScWrappers::BlockVector::ExcIteratorRangeDoesNotMatchVectorSize ()
::ExceptionBasePETScWrappers::MPI::SparseMatrix::ExcLocalRowsTooLarge (int arg1, int arg2) throw (errortext << "The number of local rows " << arg1 << " must be larger than the total number of rows " << arg2 )
::ExceptionBasePreconditionBlock::ExcWrongBlockSize (int arg1, int arg2) throw (errortext << "The blocksize " << arg1 << " and the size of the matrix " << arg2 << " do not match." )
::ExceptionBasePreconditionBlock::ExcInverseMatricesAlreadyExist ()
::ExceptionBasePreconditionSelector::ExcNoMatrixGivenToUse ()
::ExceptionBaseSolverMinRes::ExcPreconditionerNotDefinite ()
::ExceptionBaseSparseLUDecomposition::ExcInvalidStrengthening (double arg1) throw (errortext << "The strengthening parameter " << arg1 << " is not greater or equal than zero!" )
::ExceptionBaseSparseDirectMA27::ExcMA27AFailed (int arg1) throw (errortext << "The function MA27A failed with an exit code of " << arg1 )
::ExceptionBaseSparseDirectMA27::ExcMA27BFailed (int arg1) throw (errortext << "The function MA27B failed with an exit code of " << arg1 )
::ExceptionBaseSparseDirectMA27::ExcMA27CFailed (int arg1) throw (errortext << "The function MA27C failed with an exit code of " << arg1 )
::ExceptionBaseSparseDirectMA27::ExcInitializeAlreadyCalled ()
::ExceptionBaseSparseDirectMA27::ExcFactorizeNotCalled ()
::ExceptionBaseSparseDirectMA27::ExcDifferentSparsityPatterns ()
::ExceptionBaseSparseDirectMA27::ExcReadError (int arg1, int arg2) throw (errortext << "Error while reading in detached mode. Return value " << "for 'read' was " << arg1 << ", errno has value " << arg2 )
::ExceptionBaseSparseDirectMA27::ExcMatrixNotSymmetric ()
::ExceptionBaseSparseDirectMA47::ExcMA47AFailed (int arg1) throw (errortext << "The function MA47A failed with an exit code of " << arg1 )
::ExceptionBaseSparseDirectMA47::ExcMA47BFailed (int arg1) throw (errortext << "The function MA47B failed with an exit code of " << arg1 )
::ExceptionBaseSparseDirectMA47::ExcMA47CFailed (int arg1) throw (errortext << "The function MA47C failed with an exit code of " << arg1 )
::ExceptionBaseSparseDirectMA47::ExcInitializeAlreadyCalled ()
::ExceptionBaseSparseDirectMA47::ExcFactorizeNotCalled ()
::ExceptionBaseSparseDirectMA47::ExcCantFactorizeAgain ()
::ExceptionBaseSparseDirectMA47::ExcDifferentMatrices ()
::ExceptionBaseSparseDirectMA47::ExcMatrixNotSymmetric ()
::ExceptionBaseSparseILU::ExcInvalidStrengthening (double arg1) throw (errortext << "The strengthening parameter " << arg1 << " is not greater or equal than zero!" )
::ExceptionBaseSparseMatrix::ExcInvalidIndex (int arg1, int arg2) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." )
::ExceptionBaseSparseMatrix::ExcInvalidIndex1 (int arg1) throw (errortext << "The index " << arg1 << " is not in the allowed range." )
::ExceptionBaseSparseMatrix::ExcDifferentSparsityPatterns ()
::ExceptionBaseSparseMatrix::ExcIteratorRange (int arg1, int arg2) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 )
::ExceptionBaseSparseMatrix::ExcSourceEqualsDestination ()
::ExceptionBaseSparseMatrixEZ::ExcNoDiagonal ()
::ExceptionBaseSparseMatrixEZ::ExcInvalidEntry (int arg1, int arg2) throw (errortext << "The entry with index (" << arg1 << ',' << arg2 << ") does not exist." )
::ExceptionBaseSparseMatrixEZ::ExcEntryAllocationFailure (int arg1, int arg2) throw (errortext << "An entry with index (" << arg1 << ',' << arg2 << ") cannot be allocated." )
::ExceptionBaseSparseMIC::ExcStrengthenDiagonalTooSmall ()
::ExceptionBaseSparseMIC::ExcInvalidStrengthening (double arg1) throw (errortext << "The strengthening parameter " << arg1 << " is not greater or equal than zero!" )
::ExceptionBaseSparseMIC::ExcDecompositionNotStable (int arg1, double arg2) throw (errortext << "The diagonal element (" <<arg1<<","<<arg1<<") is " << arg2 <<", but must be positive" )
::ExceptionBaseSparsityPattern::ExcNotEnoughSpace (int arg1, int arg2) throw (errortext << "Upon entering a new entry to row " << arg1 << ": there was no free entry any more. " << std::endl << "(Maximum number of entries for this row: " << arg2 << "; maybe the matrix is already compressed?)" )
::ExceptionBaseSparsityPattern::ExcNotCompressed ()
::ExceptionBaseSparsityPattern::ExcMatrixIsCompressed ()
::ExceptionBaseSparsityPattern::ExcInvalidConstructorCall ()
::ExceptionBaseSparsityPattern::ExcDiagonalNotOptimized ()
::ExceptionBaseSparsityPattern::ExcIteratorRange (int arg1, int arg2) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 )
::ExceptionBaseSparsityPattern::ExcInvalidNumberOfPartitions (int arg1) throw (errortext << "The number of partitions you gave is " << arg1 << ", but must be greater than zero." )
::ExceptionBaseSwappableVector::ExcSizeZero ()
::ExceptionBaseSwappableVector::ExcSizeNonzero ()
::ExceptionBaseSwappableVector::ExcInvalidFilename (std::string arg1) throw (errortext << "The filename <" << arg1 << "> is not a valid one here." )
::ExceptionBaseSwappableVector::ExcInvalidCopyOperation ()
::ExceptionBaseTrilinosWrappers::BlockSparseMatrix::ExcIncompatibleRowNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." )
::ExceptionBaseTrilinosWrappers::BlockSparseMatrix::ExcIncompatibleColNumbers (int arg1, int arg2, int arg3, int arg4) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." )
::ExceptionBaseTrilinosWrappers::SparseMatrix::ExcTrilinosError (int arg1) throw (errortext << "An error with error number " << arg1 << " occured while calling a Trilinos function" )
::ExceptionBaseTrilinosWrappers::SparseMatrix::ExcInvalidIndex (int arg1, int arg2) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." )
::ExceptionBaseTrilinosWrappers::SparseMatrix::ExcSourceEqualsDestination ()
::ExceptionBaseTrilinosWrappers::SparseMatrix::ExcMatrixNotCompressed ()
::ExceptionBaseTrilinosWrappers::SparseMatrix::ExcAccessToNonLocalElement (int arg1, int arg2, int arg3, int arg4) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a distributed matrix, but only rows " << arg3 << " through " << arg4 << " are stored locally and can be accessed." )
::ExceptionBaseTrilinosWrappers::SparseMatrix::ExcAccessToNonPresentElement (int arg1, int arg2) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a sparse matrix, but it appears to not" << " exist in the Trilinos sparsity pattern." )
::ExceptionBaseTrilinosWrappers::SparsityPattern::ExcTrilinosError (int arg1) throw (errortext << "An error with error number " << arg1 << " occured while calling a Trilinos function" )
::ExceptionBaseTrilinosWrappers::SparsityPattern::ExcInvalidIndex (int arg1, int arg2) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." )
::ExceptionBaseTrilinosWrappers::SparsityPattern::ExcSourceEqualsDestination ()
::ExceptionBaseTrilinosWrappers::SparsityPattern::ExcAccessToNonLocalElement (int arg1, int arg2, int arg3, int arg4) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a distributed matrix, but only rows " << arg3 << " through " << arg4 << " are stored locally and can be accessed." )
::ExceptionBaseTrilinosWrappers::SparsityPattern::ExcAccessToNonPresentElement (int arg1, int arg2) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a sparse matrix, but it appears to not" << " exist in the Trilinos sparsity pattern." )
::ExceptionBaseVectorMemory::ExcNoMoreVectors ()
::ExceptionBaseVectorMemory::ExcNotAllocatedHere ()
::ExceptionBaseDoFAccessor::ExcInvalidObject ()
::ExceptionBaseDoFAccessor::ExcVectorNotEmpty ()
::ExceptionBaseDoFAccessor::ExcVectorDoesNotMatch ()
::ExceptionBaseDoFAccessor::ExcMatrixDoesNotMatch ()
::ExceptionBaseDoFAccessor::ExcNotActive ()
::ExceptionBaseDoFAccessor::ExcCantCompareIterators ()
::ExceptionBaseDoFRenumbering::ExcRenumberingIncomplete ()
::ExceptionBaseDoFRenumbering::ExcInvalidComponentOrder ()
::ExceptionBaseDoFRenumbering::ExcNotDGFEM ()
::ExceptionBaseFiniteElement::ExcShapeFunctionNotPrimitive (int arg1) throw (errortext << "The shape function with index " << arg1 << " is not primitive, i.e. it is vector-valued and " << "has more than one non-zero vector component. This " << "function cannot be called for these shape functions. " << "Maybe you want to use the same function with the " << "_component suffix?" )
::ExceptionBaseFiniteElement::ExcFENotPrimitive ()
::ExceptionBaseFiniteElement::ExcUnitShapeValuesDoNotExist ()
::ExceptionBaseFiniteElement::ExcFEHasNoSupportPoints ()
::ExceptionBaseFiniteElement::ExcEmbeddingVoid ()
::ExceptionBaseFiniteElement::ExcProjectionVoid ()
::ExceptionBaseFiniteElement::ExcConstraintsVoid ()
::ExceptionBaseFiniteElement::ExcWrongInterfaceMatrixSize (int arg1, int arg2) throw (errortext << "The interface matrix has a size of " << arg1 << "x" << arg2 << ", which is not reasonable in the present dimension." )
::ExceptionBaseFiniteElement::ExcComponentIndexInvalid (int arg1, int arg2) throw (errortext << "The component-index pair (" << arg1 << ", " << arg2 << ") is invalid, i.e. non-existent" )
::ExceptionBaseFiniteElement::ExcInterpolationNotImplemented ()
::ExceptionBaseFiniteElement::ExcBoundaryFaceUsed ()
::ExceptionBaseFiniteElement::ExcJacobiDeterminantHasWrongSign ()
::ExceptionBaseFETools::ExcInvalidFEName (std::string arg1) throw (errortext << "Can't re-generate a finite element from the string '" << arg1 << "'." )
::ExceptionBaseFETools::ExcInvalidFEDimension (char arg1, int arg2) throw (errortext << "The dimension " << arg1 << " in the finite element string must match " << "the space dimension " << arg2 << "." )
::ExceptionBaseFETools::ExcInvalidFE ()
::ExceptionBaseFETools::ExcFENotPrimitive ()
::ExceptionBaseFETools::ExcTriangulationMismatch ()
::ExceptionBaseFETools::ExcHangingNodesNotAllowed (int arg1) throw (errortext << "You are using continuous elements on a grid with " << "hanging nodes but without providing hanging node " << "constraints. Use the respective function with " << "additional ConstraintMatrix argument(s), instead." )
::ExceptionBaseFETools::ExcGridNotRefinedAtLeastOnce ()
::ExceptionBaseFETools::ExcMatrixDimensionMismatch (int arg1, int arg2, int arg3, int arg4) throw (errortext << "This is a " << arg1 << "x" << arg2 << " matrix, " << "but should be a " << arg3 << "x" << arg4 << " matrix." )
::ExceptionBaseFETools::ExcLeastSquaresError (double arg1) throw (errortext << "Least squares fit leaves a gap of " << arg1 )
::ExceptionBaseFETools::ExcNotGreaterThan (int arg1, int arg2) throw (errortext << arg1 << " must be greater than " << arg2 )
::ExceptionBaseFEValuesBase::ExcAccessToUninitializedField ()
::ExceptionBaseFEValuesBase::ExcCannotInitializeField ()
::ExceptionBaseFEValuesBase::ExcInvalidUpdateFlag ()
::ExceptionBaseFEValuesBase::ExcFEDontMatch ()
::ExceptionBaseFEValuesBase::ExcShapeFunctionNotPrimitive (int arg1) throw (errortext << "The shape function with index " << arg1 << " is not primitive, i.e. it is vector-valued and " << "has more than one non-zero vector component. This " << "function cannot be called for these shape functions. " << "Maybe you want to use the same function with the " << "_component suffix?" )
::ExceptionBaseFEValuesBase::ExcFENotPrimitive ()
::ExceptionBaseFESubfaceValues::ExcReinitCalledWithBoundaryFace ()
::ExceptionBaseFESubfaceValues::ExcFaceHasNoSubfaces ()
::ExceptionBaseTriaAccessorExceptions::ExcCellNotUsed ()
::ExceptionBaseTriaAccessorExceptions::ExcCellNotActive ()
::ExceptionBaseTriaAccessorExceptions::ExcCellHasNoChildren ()
::ExceptionBaseTriaAccessorExceptions::ExcUnusedCellAsChild ()
::ExceptionBaseTriaAccessorExceptions::ExcCantSetChildren (int arg1) throw (errortext << "You can only set the child index if the cell has no " << "children, or clear it. The given " << "index was " << arg1 << " (-1 means: clear children)" )
::ExceptionBaseTriaAccessorExceptions::ExcUnusedCellAsNeighbor ()
::ExceptionBaseTriaAccessorExceptions::ExcUncaughtCase ()
::ExceptionBaseTriaAccessorExceptions::ExcDereferenceInvalidObject ()
::ExceptionBaseTriaAccessorExceptions::ExcCantCompareIterators ()
::ExceptionBaseTriaAccessorExceptions::ExcNeighborIsCoarser ()
::ExceptionBaseTriaAccessorExceptions::ExcNeighborIsNotCoarser ()
::ExceptionBaseTriaAccessorExceptions::ExcFacesHaveNoLevel ()
::ExceptionBaseTriaAccessorExceptions::ExcSetOnlyEvenChildren (int arg1) throw (errortext << "You can only set the child index of an even numbered child." << "The number of the child given was " << arg1 << "." )
::ExceptionBaseCellAccessor::ExcRefineCellNotActive ()
::ExceptionBaseCellAccessor::ExcCellFlaggedForRefinement ()
::ExceptionBaseCellAccessor::ExcCellFlaggedForCoarsening ()
::ExceptionBaseinternal::Triangulation::TriaObjects::ExcMemoryInexact (int arg1, int arg2) throw (errortext << "The containers have sizes " << arg1 << " and " << arg2 << ", which is not as expected." )
::ExceptionBaseinternal::Triangulation::TriaObjects::ExcPointerIndexClash ()

Detailed Description

This module contains classes that are used in the exception mechanism of deal.II.

Brief overview

Exceptions are used in two different ways:

Detailed description

The error handling mechanism in deal.II is generally used in two ways. The first uses error checking in debug mode only and is useful for programs which are not fully tested. When the program shows no errors anymore, one may switch off error handling and get better performance by this, since checks for errors are done quite frequently in the library (a typical speed up is a factor of four!). This mode of exception generation is most useful for internal consistency checks such as range checking or checking of the validity of function arguments. Errors of this kind usually are programming errors and the program should abort with as detailed a message as possible, including location and reason for the generation of the exception.

The second mode is for error checks which should always be on, such as for I/O errors, failing memory requests and the like. It does not make much sense to turn this mode off, since this kind of errors may happen in tested and untested programs likewise. Exceptions of this kind do not terminate the program, rather they throw exceptions in the C++ manner, allowing the program to catch them and eventually do something about it. As it may be useful to have some information printed out if an exception could not be handled properly, additional information is passed along as for the first mode. The latter makes it necessary to provide a family of macros which enter this additional information into the exception class; this could in principle be done by the programmer himself each time by hand, but since the information can be obtained automatically, a macro is provided for this.

Both modes use exception classes, which need to have special features in additional to the C++ standard's std::exception class. Such a class is declared by the following lines of code:

     DeclException2 (ExcDomain, int, int,
                     << "Index= " << arg1 << "Upper Bound= " << arg2);

This declares an exception class named ExcDomain, which has two variables as additional information (named arg1 and arg2 by default) and which outputs the given sequence (which is appended to an std::ostream variable's name, thus the weird syntax). There are other DeclExceptionN macros for exception classes with more or no parameters. By convention, the name of all exception classes starts with Exc... and most of them are declared locally to the class it is to be used in (a few very frequently found ones are also declared in the StandardExceptions namespace and are available everywhere). Declaring exceptions globally is possible but pollutes the global namespace, is less readable and most of the time unnecessary.

Since exception classes are declared the same way for both modes of error checking, it is possible to use an exception declared through the DeclExceptionN(...) macro family for both static as well as dynamic checks.

Use of the debug mode exceptions (static checks)

To use the exception mechanism for debug mode error checking, write lines like the following in your source code:

    Assert (n<dim, ExcDomain(n,dim));
which by macro expansion does essentially the following:
    #ifdef DEBUG
        if (!(cond))
              issue error of class ExcDomain(n,dim)
    #else
        do nothing
    #endif
i.e. it issues an error only if the preprocessor variable DEBUG is set and if the given condition (in this case n < dim is violated).

If the exception was declared using the DeclException0 (...) macro, i.e. without any additional parameters, its name has nonetheless to be given with parentheses: Assert (i>m, ExcSomewhat());

How it works internally

If the DEBUG preprocessor directive is set, the call Assert (cond, exc); is basically converted by the preprocessor into the following sequence:

    if (!(cond))
      deal_II_exceptions::internals::issue_error_assert_1
             (__FILE__,
              __LINE__,
              __PRETTY_FUNCTION__,
              #cond,
              #exc,
              &exc);

(Note that function names and exact calling sequences may change over time, but the general principle remains the same.) I.e., if the given condition is violated, then the file and line in which the exception occured as well as the condition itself and the call sequence of the exception object is passed to the deal_II_exceptions::internals::issue_error_assert_1() function. Additionally an object of the form given by exc is created (this is normally an unnamed object like in ExcDomain (n, dim) of class ExcDomain) and transferred to this function.

__PRETTY__FUNCTION__ is a macro defined by some compilers and gives the name of the function. If another compiler is used, we try to set this function to something reasonable, if the compiler provides us with that, and "(not available)" otherwise.

In issue_error_assert, the given data is transferred into the exc object by calling the set_fields() function; after that, the general error info is printed onto std::cerr using the PrintError() function of exc and finally the exception specific data is printed using the user defined function PrintError() (which is normally created using the DeclException (...) macro family. If it can be obtained from the operating system, the output may also contain a stacktrace to show where the error happened. Several of the Tutorial programs programs show a typical output.

After printing all this information, deal_II_exceptions::internals::abort() is called (with one exception, see the end of this section). This terminates the program, which is the right thing to do for this kind of error checking since it is used to detect programming errors rather than run-time errors; a program can, by definition, not recover from programming errors.

If the preprocessor variable DEBUG is not set, then nothing happens, i.e. the Assert macro is expanded to {}.

Sometimes, there is no useful condition for an exception other than that the program flow should not have reached a certain point, e.g. a default section of a switch statement. In this case, raise the exception by the following construct:

    Assert (false, ExcInternalError());
See the step-7 and several other of the tutorial programs for a use of this construct.

As mentioned above, the program is terminated once a call to Assert fails. However, there is one case where we do not want to do this, namely when a C++ exception is active. The usual case where this happens is that someone throws an exception through the AssertThrow mechanism (see below) which, while the stack is unwound, leads to the destruction of other objects in stack frames above. If other objects refer to the objects being thus destroyed, some destructors raise an exception through Assert. If we would abort the program then, we would only ever see the message that an object is being destroyed which is still referenced from somewhere, but we would never see the original exception that triggered this. (You can see it in the debugger by putting a break point on the function __throw, but you cannot see it from the program itself.) In that case, we use a C++ standard library function to detect the presence of another active exception and do not terminate the program to allow that the thrown exception propagates to some place where its message can be displayed.

Since it is common that one failed assertion leads to a whole chain of others, we only ever print the very first message. If the program is then aborted, that is no problem. If it is not (since a C++ exception is active), only the first is displayed and a message about suppressed follow-up messages is shown.

Use of run-time exceptions

For this mode, the standard C++ throw and catch concept exists. We want to keep to this, but want to extend it a bit. In general, the structure is the same, i.e. you normally raise and exception by

    if (!(cond))
      throw ExcSomething();
and catch it using the statement
    try {
      do_something ();
    }
    catch (exception &e) {
      std::cerr << "Exception occured:" << std::endl
           << e.what ()
           << std::endl;
      do_something_to_reciver ();
    };
exception is a standard C++ class providing basic functionality for exceptions, such as the virtual function what() which returns some information on the exception itself. This information is useful if an exception can't be handled properly, in which case as precise a description as possible should be printed.

The problem here is that to get significant and useful information out of what(), it is necessary to overload this function in out exception class and call the throw operator with additional arguments to the exception class. The first thing, overloading the what function is done using the DeclExceptionN macros, but putting the right information, which is the same as explained above for the Assert expansion, requires some work if one would want to write it down each time:

    if (!(cond))
      {
        ExcSomething e(additional information);
        e.set_fields (__FILE__, __LINE__, __PRETTY_FUNCTION__,
                      "condition as a string",
                      "name of condition as a string");
        throw e;
      };

For this purpose, the macro AssertThrow was invented. It does mainly the same job as does the Assert macro, but it does not kill the program, it rather throws an exception as shown above. The mode of usage is

    AssertThrow (cond, ExcSomething(additional information));

The condition to be checked is incorporated into the macro in order to allow passing the violated condition as a string. The expansion of the AssertThrow macro is not affected by the DEBUG preprocessor variable.

Description of the DeclExceptionN macro family

There is a whole family of DeclExceptionX macros where X is to be replaced by the number of additional parameters (0 to 5 presently). These macros are used to declare exception classes in the following way:

    DeclException2 (ExcDomain,
                    int,
                    int,
                    << " i=" << arg1 << ", m=" << arg2);
The first argument denotes the name of the exception class to be created. The next arguments are the types of the parameters (in this case there two types, corresponding to the X in DeclExceptionX) and finally the output sequence with which you can print additional information.

The syntax of the output sequence is a bit weird but gets clearer once you see how this macro is defined (again schematically, actual function names and definitions may change over time and be different):

  class name : public ExceptionBase {
    public:
      name (const type1 a1, const type2 a2) :
                     arg1 (a1), arg2(a2) {};
      virtual void print_info (std::ostream &out) const {
        out outsequence << std::endl;
      };
    private:
      type1 arg1;
      type2 arg2;
  };

If declared as specified, you can later use this exception class in the following manner:

    int i=5;
    int m=3;
    Assert (i<m, MyExc2(i,m));
and the output if the condition fails will be
    --------------------------------------------------------
    An error occurred in line <301> of file <exc-test.cc>.
    The violated condition was: 
      i<m
    The name and call sequence of the exception was:
      MyExc2(i,m)
    Additional Information: 
      i=5, m=3
    --------------------------------------------------------

Obviously for the DeclException0(name) macro, no types and also no output sequence is allowed.

Author:
Wolfgang Bangerth, 1998-2006

Define Documentation

#define Assert ( cond,
exc   ) 

Value:

{                                                                 \
    if (!(cond))                                                    \
      ::deal_II_exceptions::internals::                     \
      issue_error_assert_1 (__FILE__,                               \
                             __LINE__,                              \
                             __PRETTY_FUNCTION__, #cond, #exc, exc);\
  }
This is the main routine in the exception mechanism for debug mode error checking. It asserts that a certain condition is fulfilled, otherwise issues an error and aborts the program.

See the ExceptionBase class for more information.

Author:
Wolfgang Bangerth, November 1997, extensions 1998

Referenced by FilteredMatrix< VECTOR >::Accessor::Accessor(), SparseMatrixEZ< number >::add(), MatrixBlock< MATRIX >::add(), CompressedSparsityPattern::add(), CompressedSimpleSparsityPattern::add(), CompressedSetSparsityPattern::add(), BlockSparseMatrixEZ< Number >::add(), NamedData< DATA >::add(), CompressedSparsityPattern::add_entries(), CompressedSimpleSparsityPattern::add_entries(), CompressedSetSparsityPattern::add_entries(), BlockSparsityPatternBase< SparsityPatternBase >::add_entries(), ConstraintMatrix::add_entry(), IndexSet::add_index(), ConstraintMatrix::add_line(), IndexSet::add_range(), FilteredMatrix< VECTOR >::Accessor::advance(), SparseMatrixEZ< number >::allocate(), MeshWorker::Assembler::GnuplotPatch::assemble(), MeshWorker::Assembler::MGMatrixLocalBlocksToGlobalBlocks< MATRIX, number >::assemble(), MeshWorker::Assembler::MGMatrixSimple< MATRIX >::assemble(), SparseMatrixEZ< number >::begin(), BlockSparsityPatternBase< SparsityPatternBase >::block(), BlockSparseMatrixEZ< Number >::block(), BlockIndices::block_size(), BlockIndices::block_start(), FiniteElement< dim, spacedim >::block_to_base_index(), TrilinosWrappers::BlockVector::BlockVector(), PETScWrappers::BlockVector::BlockVector(), TriaAccessor< 0, dim, spacedim >::boundary_indicator(), ConstraintMatrix::calculate_line_index(), MeshWorker::cell_action(), CellAccessor< dim, spacedim >::CellAccessor(), TriaAccessor< 0, dim, spacedim >::child(), internal::Triangulation::TriaObjects< G >::clear_user_data(), CompressedSparsityPattern::column_number(), CompressedSimpleSparsityPattern::column_number(), FiniteElement< dim, spacedim >::component_to_base_index(), FiniteElement< dim, spacedim >::component_to_system_index(), Tensor< rank_, dim >::contract(), Tensor< rank_, dim >::cross_product(), FunctionParser< dim >::default_variable_names(), Polynomials::Polynomial< number >::degree(), PreconditionBlockBase< number >::diagonal(), ConstraintMatrix::distribute_local_to_global(), LAPACKFullMatrix< number >::eigenvalue(), SparseMatrixEZ< number >::end(), internal::Triangulation::TriaObject< structdim >::face(), internal::Triangulation::TriaObjectsHex::face_orientation(), FiniteElement< dim, spacedim >::face_system_to_base_index(), FiniteElement< dim, spacedim >::face_system_to_component_index(), internal::hp::DoFObjects< dim >::fe_index_is_active(), internal::DoFHandler::DoFObjects< dim >::fe_index_is_active(), MeshWorker::IntegrationInfo< dim, spacedim >::fe_values(), FiniteElement< dim, spacedim >::first_block_of_base(), Utilities::fixed_power(), GridTools::get_active_neighbors(), internal::hp::DoFObjects< dim >::get_dof_index(), internal::DoFHandler::DoFObjects< dim >::get_dof_index(), ConstraintMatrix::get_dof_values(), MGDoFHandler< dim, spacedim >::MGVertexDoFs::get_index(), FiniteElement< dim, spacedim >::get_nonzero_components(), BlockIndices::global_to_local(), hp::FECollection< dim, spacedim >::hp_constraints_are_implemented(), IndexSet::index_within_set(), WorkStream::internal::IteratorRangeToItemStream< Iterator, ScratchData, CopyData >::init_buffer_elements(), MeshWorker::Assembler::CellsAndFaces< number >::initialize(), InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor(), PreconditionBlockBase< number >::inverse(), IndexSet::is_element(), FiniteElement< dim, spacedim >::is_primitive(), Threads::internal::TaskDescriptor< RT >::join(), BlockIndices::local_to_global(), SparseMatrixEZ< number >::locate(), DoFTools::make_sparsity_pattern(), hp::FECollection< dim, spacedim >::max_dofs_per_cell(), hp::FECollection< dim, spacedim >::max_dofs_per_face(), hp::FECollection< dim, spacedim >::max_dofs_per_hex(), hp::FECollection< dim, spacedim >::max_dofs_per_line(), hp::FECollection< dim, spacedim >::max_dofs_per_quad(), hp::FECollection< dim, spacedim >::max_dofs_per_vertex(), hp::QCollection< dim >::max_n_quadrature_points(), internal::SymmetricTensorAccessors::merge(), NamedData< DATA >::merge(), DataOut_DoFData< DH, patch_dim, patch_space_dim >::merge_patches(), internal::hp::DoFObjects< dim >::n_active_fe_indices(), hp::FECollection< dim, spacedim >::n_components(), FiniteElement< dim, spacedim >::n_nonzero_components(), MeshWorker::LocalResults< number >::n_quadrature_values(), internal::hp::DoFObjects< dim >::nth_active_fe_index(), IndexSet::nth_index_in_set(), IndexSet::operator!=(), SparseMatrixEZ< number >::operator()(), NamedSelection::operator()(), NamedData< DATA >::operator()(), TriaRawIterator< Accessor >::operator*(), SmartPointer< T, P >::operator*(), SparseMatrixEZ< number >::const_iterator::operator++(), TriaRawIterator< Accessor >::operator++(), internal::TriaAccessor::PresentLevelType< structdim, dim >::type::operator++(), operator-(), TriaRawIterator< Accessor >::operator--(), internal::TriaAccessor::PresentLevelType< structdim, dim >::type::operator--(), SmartPointer< T, P >::operator->(), MatrixIterator< ACCESSOR >::operator<(), TriaRawIterator< Accessor >::operator<(), TrilinosWrappers::BlockSparseMatrix::operator=(), PETScWrappers::MPI::BlockSparseMatrix::operator=(), PETScWrappers::BlockSparseMatrix::operator=(), BlockSparseMatrix< number >::operator=(), FilteredIterator< BaseIterator >::operator=(), IndexSet::operator==(), FiniteElement< dim, spacedim >::operator[](), hp::QCollection< dim >::operator[](), hp::MappingCollection< dim, spacedim >::operator[](), hp::FECollection< dim, spacedim >::operator[](), VectorSlice< VECTOR >::operator[](), TableIndicesBase< N >::operator[](), MGLevelObject< Object >::operator[](), internals::SparsityPatternTools::optimized_lower_bound(), SchurMatrix< MA_inverse, MB, MDt, MC >::postprocess(), BlockSparseMatrix< number >::precondition_Jacobi(), SchurMatrix< MA_inverse, MB, MDt, MC >::prepare_rhs(), internal::reinit(), MGLevelObject< Object >::resize(), FiniteElement< dim, spacedim >::restriction_is_additive(), CompressedSparsityPattern::row_begin(), CompressedSimpleSparsityPattern::row_begin(), CompressedSparsityPattern::row_end(), CompressedSimpleSparsityPattern::row_end(), CompressedSparsityPattern::row_length(), CompressedSimpleSparsityPattern::row_length(), CompressedSetSparsityPattern::row_length(), WorkStream::run(), SparseMatrixEZ< number >::set(), BlockSparseMatrixEZ< Number >::set(), internal::hp::DoFObjects< dim >::set_dof_index(), internal::Triangulation::TriaObject< structdim >::set_face(), MGDoFHandler< dim, spacedim >::MGVertexDoFs::set_index(), IndexSet::set_size(), SolverSelector< VECTOR >::solve(), EigenInverse< VECTOR >::solve(), EigenPower< VECTOR >::solve(), TrilinosWrappers::BlockVector::swap(), TrilinosWrappers::MPI::BlockVector::swap(), PETScWrappers::MPI::BlockVector::swap(), PETScWrappers::BlockVector::swap(), BlockIndices::swap(), FiniteElement< dim, spacedim >::system_to_base_index(), FiniteElement< dim, spacedim >::system_to_block_index(), FiniteElement< dim, spacedim >::system_to_component_index(), Threads::internal::TaskDescriptor< RT >::TaskDescriptor(), Threads::internal::ThreadDescriptor< RT >::thread_entry_point(), GridTools::transform(), TriaAccessor< structdim, dim, spacedim >::TriaAccessor(), TriaAccessor< 0, dim, spacedim >::TriaAccessor(), TriaActiveIterator< Accessor >::TriaActiveIterator(), TriaIterator< Accessor >::TriaIterator(), internal::Triangulation::TriaObject< structdim >::TriaObject(), TransposeMatrix< MATRIX, VECTOR >::Tvmult(), PointerMatrixVector< number >::Tvmult(), PointerMatrixAux< MATRIX, VECTOR >::Tvmult(), PointerMatrix< MATRIX, VECTOR >::Tvmult(), MeanValueFilter::Tvmult(), ProductMatrix< VECTOR >::Tvmult(), BlockSparseMatrixEZ< Number >::Tvmult(), BlockDiagonalMatrix< MATRIX >::Tvmult(), MGMatrixSelect< MATRIX, number >::Tvmult(), MGMatrix< MATRIX, VECTOR >::Tvmult(), TransposeMatrix< MATRIX, VECTOR >::Tvmult_add(), PointerMatrixVector< number >::Tvmult_add(), PointerMatrixAux< MATRIX, VECTOR >::Tvmult_add(), PointerMatrix< MATRIX, VECTOR >::Tvmult_add(), MeanValueFilter::Tvmult_add(), ProductMatrix< VECTOR >::Tvmult_add(), BlockSparseMatrixEZ< Number >::Tvmult_add(), MGMatrixSelect< MATRIX, number >::Tvmult_add(), MGMatrix< MATRIX, VECTOR >::Tvmult_add(), internal::TriaAccessor::PresentLevelType< structdim, dim >::type::type(), TriaAccessor< 0, dim, spacedim >::used(), internal::Triangulation::TriaObjects< G >::user_index(), internal::Triangulation::TriaObjects< G >::user_pointer(), Polynomials::Polynomial< number >::value(), VectorSlice< VECTOR >::VectorSlice(), TransposeMatrix< MATRIX, VECTOR >::vmult(), PreconditionSelector< MATRIX, VECTOR >::vmult(), PointerMatrixVector< number >::vmult(), PointerMatrixAux< MATRIX, VECTOR >::vmult(), PointerMatrix< MATRIX, VECTOR >::vmult(), ProductMatrix< VECTOR >::vmult(), IterativeInverse< VECTOR >::vmult(), BlockSparseMatrixEZ< Number >::vmult(), BlockDiagonalMatrix< MATRIX >::vmult(), MGMatrixSelect< MATRIX, number >::vmult(), MGMatrix< MATRIX, VECTOR >::vmult(), TransposeMatrix< MATRIX, VECTOR >::vmult_add(), PointerMatrixVector< number >::vmult_add(), PointerMatrixAux< MATRIX, VECTOR >::vmult_add(), PointerMatrix< MATRIX, VECTOR >::vmult_add(), ProductMatrix< VECTOR >::vmult_add(), BlockSparseMatrixEZ< Number >::vmult_add(), MGMatrixSelect< MATRIX, number >::vmult_add(), MGMatrix< MATRIX, VECTOR >::vmult_add(), and Threads::internal::TaskDescriptor< RT >::~TaskDescriptor().

#define AssertThrow ( cond,
exc   ) 

Value:

{                                                              \
        if (__builtin_expect(!(cond), false))                        \
          ::deal_II_exceptions::internals::                  \
          issue_error_throw (__FILE__,                               \
                             __LINE__,                               \
                             __PRETTY_FUNCTION__, #cond, #exc, exc); \
      }
This is the main routine in the exception mechanism for run-time mode error checking. It assert that a certain condition is fulfilled, otherwise issues an error and aborts the program.

On some systems (we only know of DEC Alpha systems running under OSF1 or Linux), the compiler fails to compile the AssertThrow macro properly, yielding an internal compiler error. We detect this at configure time. For these cases, the AssertThrow macro aborts the program if the assertion is not satisfied. This, however, happens in debug and optimized mode likewise. Note that in these cases, the meaning of a program changes. In particular, one cannot catch exceptions thrown by AssertThrow, but we did not find another way to work around this compiler bug.

See the ExceptionBase class for more information.

ExceptionBase

Author:
Wolfgang Bangerth, November 1997, extensions 1998

Referenced by Tensor< rank_, dim >::invert(), Threads::Task< RT >::join(), Threads::Thread< RT >::join(), Threads::Task< RT >::operator==(), and SLEPcWrappers::SolverBase::solve().

#define DeclException0 ( Exception0   )     static ::ExceptionBase& Exception0 ()

Declare an exception class derived from ExceptionBase without parameters.

Author:
Wolfgang Bangerth, November 1997

#define DeclException1 ( Exception1,
type1,
outsequence   )     static ::ExceptionBase& Exception1 (type1 arg1) throw (errortext outsequence)

Declare an exception class derived from ExceptionBase with one additional parameter.

#define DeclException2 ( Exception2,
type1,
type2,
outsequence   )     static ::ExceptionBase& Exception2 (type1 arg1, type2 arg2) throw (errortext outsequence)

Declare an exception class derived from ExceptionBase with two additional parameters.

#define DeclException3 ( Exception3,
type1,
type2,
type3,
outsequence   )     static ::ExceptionBase& Exception3 (type1 arg1, type2 arg2, type3 arg3) throw (errortext outsequence)

Declare an exception class derived from ExceptionBase with three additional parameters.

#define DeclException4 ( Exception4,
type1,
type2,
type3,
type4,
outsequence   )     static ::ExceptionBase& Exception4 (type1 arg1, type2 arg2, type3 arg3, type4 arg4) throw (errortext outsequence)

Declare an exception class derived from ExceptionBase with four additional parameters.

#define DeclException5 ( Exception5,
type1,
type2,
type3,
type4,
type5,
outsequence   )     static ::ExceptionBase& Exception5 (type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) throw (errortext outsequence)

Declare an exception class derived from ExceptionBase with five additional parameters.

#define AssertDimension ( dim1,
dim2   ) 

#define AssertVectorVectorDimension ( vec,
dim1,
dim2   ) 

Value:

AssertDimension((vec).size(), (dim1)) \
  for (unsigned int i=0;i<dim1;++i) { AssertDimension((vec)[i].size(), (dim2)); }
Special assertion, testing whether vec has size dim1, and each entry of the vector has the size dim2

Author:
Guido Kanschat 2010

#define AssertIndexRange ( index,
range   ) 

Value:

Assert((index) < (range), \
  ExcIndexRange((index),0,(range)))
Special assertion for index range of nonnegative indices.

Since this is used very often and always repeats the arguments, we introduce this special assertion for ExcIndexRange in order to keep the user codes shorter.

Called wit arguments index and range it asserts that index<range and throws ExcIndexRange(index,0,range) if it fails.

Author:
Guido Kanschat 2007

Referenced by MGConstraints::at_refinement_edge(), MGConstraints::at_refinement_edge_boundary(), BlockInfo::base_element(), MGConstraints::is_boundary_index(), BlockInfo::level(), MeshWorker::LocalResults< number >::matrix(), NamedData< DATA >::name(), MeshWorker::Assembler::Functional< number >::operator()(), NamedSelection::operator()(), NamedData< DATA >::operator()(), MeshWorker::LocalResults< number >::quadrature_value(), NamedData< DATA >::read(), BlockInfo::renumber(), MeshWorker::LocalResults< number >::value(), and MeshWorker::LocalResults< number >::vector().


Function Documentation

::ExceptionBase& ConvergenceTable::ExcWrongValueType (  )  [static, inherited]

Exception

::ExceptionBase& ConvergenceTable::ExcRateColumnAlreadyExists ( std::string  arg1  )  throw (errortext << "Rate column <" << arg1 << "> does already exist." ) [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& DataOutBase::Patch< dim, spacedim >::ExcInvalidCombinationOfDimensions ( int  arg1,
int  arg2 
) throw (errortext << "It is not possible to have a structural dimension of " << arg1 << " to be larger than the space dimension of the surrounding" << " space " << arg2 ) [static, inherited]

Exception

::ExceptionBase& DataOutBase::ExcInvalidDatasetSize ( int  arg1,
int  arg2 
) throw (errortext << "The number of points in this data set is " << arg1 << ", but we expected " << arg2 << " in each space direction." ) [static, inherited]

Exception

::ExceptionBase& DataOutBase::ExcNoPatches (  )  [static, inherited]

::ExceptionBase& DataOutBase::ExcTecplotAPIError (  )  [static, inherited]

Exception

::ExceptionBase& DataOutBase::ExcErrorOpeningTecplotFile ( char *  arg1  )  throw (errortext << "There was an error opening Tecplot file " << arg1 << " for output" ) [static, inherited]

Exception

::ExceptionBase& StandardExceptions::ExcDivideByZero (  )  [static]

Exception denoting a division by zero.

Note:
Unfortunately, automatic detection of division by zero is very hardware dependent and requires severe hacking on some architectures. Therefore, this exception is only raised if the test s performed explicitly.

::ExceptionBase& StandardExceptions::ExcOutOfMemory (  )  [static]

Trying to allocate a new object failed due to lack of free memory.

::ExceptionBase& StandardExceptions::ExcMemoryLeak ( int  arg1  )  throw (errortext << "Destroying memory handler while " << arg1 << " objects are still allocated" ) [static]

A memory handler reached a point where all allocated objects should have been released. Since this exception is thrown, some were still allocated.

::ExceptionBase& StandardExceptions::ExcIO (  )  [static]

An error occurred reading or writing a file.

::ExceptionBase& StandardExceptions::ExcFileNotOpen ( char *  arg1  )  throw (errortext << "Could not open file " << arg1 ) [static]

An error occurred opening the named file.

The constructor takes a single argument of type char* naming the file.

::ExceptionBase& StandardExceptions::ExcNotImplemented (  )  [static]

Exception denoting a part of the library or application program that has not yet been implemented. In many cases, this only indicates that there wasn't much need for something yet, not that this is difficult to implement. It is therefore quite worth the effort to take a look at the corresponding place and see whether it can be implemented without too much effort.

Referenced by MeshWorker::Assembler::GnuplotPatch::assemble(), MeshWorker::Assembler::MGMatrixLocalBlocksToGlobalBlocks< MATRIX, number >::assemble(), FunctionParser< dim >::default_variable_names(), Utilities::fixed_power(), Tensor< rank_, dim >::invert(), internal::reinit(), MeanValueFilter::Tvmult(), MeanValueFilter::Tvmult_add(), and PreconditionSelector< MATRIX, VECTOR >::vmult().

::ExceptionBase& StandardExceptions::ExcInternalError (  )  [static]

This exception usually indicates that some condition which the programmer thinks must be satisfied at a certain point in an algorithm, is not fulfilled. This might be due to some programming error above, due to changes to the algorithm that did not preserve this assertion, or due to assumptions the programmer made that are not valid at all (i.e. the exception is thrown although there is no error here). Within the library, this exception is most often used when we write some kind of complicated algorithm and are not yet sure whether we got it right; we then put in assertions after each part of the algorithm that check for some conditions that should hold there, and throw an exception if they do not.

We usually leave in these assertions even after we are confident that the implementation is correct, since if someone later changes or extends the algorithm, these exceptions will indicate to him if he violates assumptions that are used later in the algorithm. Furthermore, it sometimes happens that an algorithm does not work in very rare corner cases. These cases will then be trapped sooner or later by the exception, so that the algorithm can then be fixed for these cases as well.

Referenced by BlockSparsityPatternBase< SparsityPatternBase >::add_entries(), ConstraintMatrix::add_entry(), ConstraintMatrix::add_line(), SparseMatrixEZ< number >::allocate(), MeshWorker::Assembler::MGMatrixSimple< MATRIX >::assemble(), TriaAccessor< 0, dim, spacedim >::boundary_indicator(), MeshWorker::cell_action(), TriaAccessor< 0, dim, spacedim >::child(), CompressedSimpleSparsityPattern::column_number(), Tensor< rank_, dim >::cross_product(), LAPACKFullMatrix< number >::eigenvalue(), internal::hp::DoFObjects< dim >::fe_index_is_active(), GridTools::get_active_neighbors(), internal::hp::DoFObjects< dim >::get_dof_index(), internal::DoFHandler::DoFObjects< dim >::get_dof_index(), IndexSet::index_within_set(), WorkStream::internal::IteratorRangeToItemStream< Iterator, ScratchData, CopyData >::init_buffer_elements(), IndexSet::is_element(), Threads::internal::TaskDescriptor< RT >::join(), internal::SymmetricTensorAccessors::merge(), internal::hp::DoFObjects< dim >::n_active_fe_indices(), internal::hp::DoFObjects< dim >::nth_active_fe_index(), IndexSet::nth_index_in_set(), internal::TriaAccessor::PresentLevelType< structdim, dim >::type::operator++(), operator-(), internal::TriaAccessor::PresentLevelType< structdim, dim >::type::operator--(), MatrixIterator< ACCESSOR >::operator<(), internals::SparsityPatternTools::optimized_lower_bound(), MGLevelObject< Object >::resize(), internal::hp::DoFObjects< dim >::set_dof_index(), EigenInverse< VECTOR >::solve(), EigenPower< VECTOR >::solve(), Threads::internal::TaskDescriptor< RT >::TaskDescriptor(), Threads::internal::ThreadDescriptor< RT >::thread_entry_point(), TriaAccessor< 0, dim, spacedim >::TriaAccessor(), internal::TriaAccessor::PresentLevelType< structdim, dim >::type::type(), TriaAccessor< 0, dim, spacedim >::used(), and Threads::internal::TaskDescriptor< RT >::~TaskDescriptor().

::ExceptionBase& StandardExceptions::ExcPureFunctionCalled (  )  [static]

This exception is used in functions that may not be called (i.e. in pure functions) but could not be declared pure since the class is intended to be used anyway, even though the respective function may only be called if a derived class is used.

::ExceptionBase& StandardExceptions::ExcInvalidConstructorCall (  )  [static]

Used for constructors that are disabled. Examples are copy constructors and assignment operators of large objects, which are only allowed for empty objects.

::ExceptionBase& StandardExceptions::ExcNotInitialized (  )  [static]

This exception is used if some object is found uninitialized.

Referenced by MatrixBlock< MATRIX >::add(), MeshWorker::LocalResults< number >::n_quadrature_values(), NamedSelection::operator()(), SmartPointer< T, P >::operator*(), SmartPointer< T, P >::operator->(), TransposeMatrix< MATRIX, VECTOR >::Tvmult(), PointerMatrixVector< number >::Tvmult(), PointerMatrixAux< MATRIX, VECTOR >::Tvmult(), PointerMatrix< MATRIX, VECTOR >::Tvmult(), ProductMatrix< VECTOR >::Tvmult(), MGMatrixSelect< MATRIX, number >::Tvmult(), MGMatrix< MATRIX, VECTOR >::Tvmult(), TransposeMatrix< MATRIX, VECTOR >::Tvmult_add(), PointerMatrixVector< number >::Tvmult_add(), PointerMatrixAux< MATRIX, VECTOR >::Tvmult_add(), PointerMatrix< MATRIX, VECTOR >::Tvmult_add(), ProductMatrix< VECTOR >::Tvmult_add(), MGMatrixSelect< MATRIX, number >::Tvmult_add(), MGMatrix< MATRIX, VECTOR >::Tvmult_add(), TransposeMatrix< MATRIX, VECTOR >::vmult(), PointerMatrixVector< number >::vmult(), PointerMatrixAux< MATRIX, VECTOR >::vmult(), PointerMatrix< MATRIX, VECTOR >::vmult(), ProductMatrix< VECTOR >::vmult(), IterativeInverse< VECTOR >::vmult(), MGMatrixSelect< MATRIX, number >::vmult(), MGMatrix< MATRIX, VECTOR >::vmult(), TransposeMatrix< MATRIX, VECTOR >::vmult_add(), PointerMatrixVector< number >::vmult_add(), PointerMatrixAux< MATRIX, VECTOR >::vmult_add(), PointerMatrix< MATRIX, VECTOR >::vmult_add(), ProductMatrix< VECTOR >::vmult_add(), MGMatrixSelect< MATRIX, number >::vmult_add(), and MGMatrix< MATRIX, VECTOR >::vmult_add().

::ExceptionBase& StandardExceptions::ExcInvalidState (  )  [static]

The object is in a state not suitable for this operation.

Referenced by LAPACKFullMatrix< number >::eigenvalue().

::ExceptionBase& StandardExceptions::ExcImpossibleInDim ( int  arg1  )  throw (errortext << "Impossible in " << arg1 << "d." ) [static]

This exception is raised if a functionality is not possible in the given dimension. Mostly used to throw function calls in 1d.

The constructor takes a single int, denoting the dimension.

Referenced by internal::Triangulation::TriaObject< structdim >::TriaObject().

::ExceptionBase& StandardExceptions::ExcZero (  )  [static]

A number is zero, but it should not be here.

::ExceptionBase& StandardExceptions::ExcEmptyObject (  )  [static]

The object should have been filled with something before this member function is called.

Referenced by Polynomials::Polynomial< number >::degree(), and Polynomials::Polynomial< number >::value().

::ExceptionBase& StandardExceptions::ExcDimensionMismatch ( int  arg1,
int  arg2 
) throw (errortext << "Dimension " << arg1 << " not equal to " << arg2 ) [static]

::ExceptionBase& StandardExceptions::ExcDimensionMismatch2 ( int  arg1,
int  arg2,
int  arg3 
) throw (errortext << "Dimension " << arg1 << " neither equal to " << arg2 << " nor to " << arg3 ) [static]

The first dimension should be either equal to the second or the third, but it is neither.

::ExceptionBase& StandardExceptions::ExcIndexRange ( int  arg1,
int  arg2,
int  arg3 
) throw (errortext << "Index " << arg1 << " is not in [" << arg2 << "," << arg3 << "[" ) [static]

This exception is one of the most often used ones, and indicates that an index is not within the expected range. For example, you might try to access an element of a vector which does not exist.

The constructor takes three int, namely

  1. the violating index
  2. the lower bound
  3. the upper bound plus one

Referenced by FilteredMatrix< VECTOR >::Accessor::Accessor(), SparseMatrixEZ< number >::add(), CompressedSparsityPattern::add(), CompressedSimpleSparsityPattern::add(), CompressedSetSparsityPattern::add(), CompressedSparsityPattern::add_entries(), CompressedSimpleSparsityPattern::add_entries(), CompressedSetSparsityPattern::add_entries(), IndexSet::add_index(), IndexSet::add_range(), SparseMatrixEZ< number >::allocate(), SparseMatrixEZ< number >::begin(), BlockSparsityPatternBase< SparsityPatternBase >::block(), BlockSparseMatrixEZ< Number >::block(), BlockIndices::block_size(), BlockIndices::block_start(), FiniteElement< dim, spacedim >::block_to_base_index(), internal::Triangulation::TriaObjects< G >::clear_user_data(), CompressedSparsityPattern::column_number(), CompressedSimpleSparsityPattern::column_number(), FiniteElement< dim, spacedim >::component_to_base_index(), PreconditionBlockBase< number >::diagonal(), LAPACKFullMatrix< number >::eigenvalue(), SparseMatrixEZ< number >::end(), internal::Triangulation::TriaObject< structdim >::face(), internal::Triangulation::TriaObjectsHex::face_orientation(), FiniteElement< dim, spacedim >::face_system_to_base_index(), FiniteElement< dim, spacedim >::face_system_to_component_index(), internal::hp::DoFObjects< dim >::fe_index_is_active(), MeshWorker::IntegrationInfo< dim, spacedim >::fe_values(), FiniteElement< dim, spacedim >::first_block_of_base(), internal::hp::DoFObjects< dim >::get_dof_index(), internal::DoFHandler::DoFObjects< dim >::get_dof_index(), MGDoFHandler< dim, spacedim >::MGVertexDoFs::get_index(), FiniteElement< dim, spacedim >::get_nonzero_components(), BlockIndices::global_to_local(), IndexSet::index_within_set(), PreconditionBlockBase< number >::inverse(), FiniteElement< dim, spacedim >::is_primitive(), BlockIndices::local_to_global(), SparseMatrixEZ< number >::locate(), internal::SymmetricTensorAccessors::merge(), internal::hp::DoFObjects< dim >::n_active_fe_indices(), FiniteElement< dim, spacedim >::n_nonzero_components(), internal::hp::DoFObjects< dim >::nth_active_fe_index(), IndexSet::nth_index_in_set(), hp::QCollection< dim >::operator[](), hp::MappingCollection< dim, spacedim >::operator[](), hp::FECollection< dim, spacedim >::operator[](), VectorSlice< VECTOR >::operator[](), TableIndicesBase< N >::operator[](), MGLevelObject< Object >::operator[](), FiniteElement< dim, spacedim >::restriction_is_additive(), CompressedSparsityPattern::row_begin(), CompressedSimpleSparsityPattern::row_begin(), CompressedSparsityPattern::row_end(), CompressedSimpleSparsityPattern::row_end(), CompressedSparsityPattern::row_length(), CompressedSimpleSparsityPattern::row_length(), CompressedSetSparsityPattern::row_length(), SparseMatrixEZ< number >::set(), internal::hp::DoFObjects< dim >::set_dof_index(), internal::Triangulation::TriaObject< structdim >::set_face(), MGDoFHandler< dim, spacedim >::MGVertexDoFs::set_index(), FiniteElement< dim, spacedim >::system_to_base_index(), FiniteElement< dim, spacedim >::system_to_block_index(), FiniteElement< dim, spacedim >::system_to_component_index(), internal::Triangulation::TriaObjects< G >::user_index(), internal::Triangulation::TriaObjects< G >::user_pointer(), and VectorSlice< VECTOR >::VectorSlice().

::ExceptionBase& StandardExceptions::ExcLowerRange ( int  arg1,
int  arg2 
) throw (errortext << "Number " << arg1 << " must be larger or equal " << arg2 ) [static]

A number is too small.

::ExceptionBase& StandardExceptions::ExcNotMultiple ( int  arg1,
int  arg2 
) throw (errortext << "Division " << arg1 << " by " << arg2 << " has remainder different from zero" ) [static]

This exception indicates that the first argument should be an integer multiple of the second, but is not.

::ExceptionBase& StandardExceptions::ExcInvalidIterator (  )  [static]

This exception is thrown if the iterator you access has corrupted data. It might for instance be, that the container it refers does not have an entry at the point the iterator refers.

Typically, this will be an internal error of deal.II, because the increment and decrement operators should never yield an invalid iterator.

::ExceptionBase& StandardExceptions::ExcIteratorPastEnd (  )  [static]

This exception is thrown if the iterator you incremented or decremented was already at its final state.

Referenced by FilteredMatrix< VECTOR >::Accessor::advance(), and SparseMatrixEZ< number >::const_iterator::operator++().

::ExceptionBase& StandardExceptions::ExcMessage ( char *  arg1  )  throw (errortext << arg1 ) [static]

::ExceptionBase& StandardExceptions::ExcCompatibility ( char *  arg1  )  throw (errortext << "You are using a backward compatibility feature\n" << "that you have disabled during configuration of\n" << "the library by the --disable-compat=" << arg1 << " switch. You should either use an\n" << "alternative function, or configure again without\n" << "this switch and recompile the library." ) [static]

Exception used when running into functions that are only supported in a backward compatibility mode.

::ExceptionBase& StandardExceptions::ExcScalarAssignmentOnlyForZeroValue (  )  [static]

Some of our numerical classes allow for setting alll entries to zero using the assignment operator =.

In many cases, this assignment operator makes sense only for the argument zero. In other cases, this exception is thrown.

Referenced by TrilinosWrappers::BlockSparseMatrix::operator=(), PETScWrappers::MPI::BlockSparseMatrix::operator=(), PETScWrappers::BlockSparseMatrix::operator=(), and BlockSparseMatrix< number >::operator=().

::ExceptionBase& StandardExceptions::ExcNeedsBLAS (  )  [static]

This function requires the BLAS library. Please reconfigure using the option --with-blas and check if it is actually included.

::ExceptionBase& StandardExceptions::ExcNeedsLAPACK (  )  [static]

This function requires the LAPACK library. Please reconfigure using the option --with-lapack and check if it is actually included.

::ExceptionBase& StandardExceptions::ExcNeedsUMFPACK (  )  [static]

This function requires the UMFPack library. Please reconfigure using the option --with-umfpack and check if it is actually included.

::ExceptionBase& StandardExceptions::ExcNeedsMETIS (  )  [static]

This function requires the METIS library. Please reconfigure using the option --with-metis and check if it is actually included.

::ExceptionBase& StandardExceptions::ExcNeedsPETSC (  )  [static]

This function requires the Petsc library. Please reconfigure using the option --with-petsc and check if it is actually included.

::ExceptionBase& StandardExceptions::ExcNeedsNetCDF (  )  [static]

This function requires the NetCDF library, which is neither in your standard path nor configured with --with-netcdf.

::ExceptionBase& StandardExceptions::ExcDisabled ( char *  arg1  )  throw (errortext << "This feature was disabled by the " "configuration option --disable-" << arg1 << ". Reconfigure to use it!" ) [static]

A configuration option disabled this feature. In order to use it, you must reconfigure and recompile the libraries.

template<int dim>
::ExceptionBase& FunctionDerivative< dim >::ExcInvalidFormula (  )  [static, inherited]

Exception.

Reimplemented from AutoDerivativeFunction< dim >.

template<int dim>
::ExceptionBase& FunctionParser< dim >::ExcParseError ( int  arg1,
char *  arg2 
) throw (errortext << "Parsing Error at Column " << arg1 << ". The parser said: " << arg2 ) [static, inherited]

template<int dim>
::ExceptionBase& FunctionParser< dim >::ExcInvalidExpressionSize ( int  arg1,
int  arg2 
) throw (errortext << "The number of components (" << arg1 << ") is not equal to the number of expressions (" << arg2 << ")." ) [static, inherited]

::ExceptionBase& Patterns::List::ExcInvalidRange ( int  arg1,
int  arg2 
) throw (errortext << "The values " << arg1 << " and " << arg2 << " do not form a valid range." ) [static, inherited]

Exception.

::ExceptionBase& Patterns::MultipleSelection::ExcCommasNotAllowed ( int  arg1  )  throw (errortext << "A comma was found at position " << arg1 << " of your input string, but commas are not allowed here." ) [static, inherited]

Exception.

::ExceptionBase& ParameterHandler::ExcEntryAlreadyExists ( std::string  arg1  )  throw (errortext << "The following entry already exists: " << arg1 ) [static, inherited]

Exception

::ExceptionBase& ParameterHandler::ExcDefaultDoesNotMatchPattern ( std::string  arg1,
std::string  arg2 
) throw (errortext << "The default string <" << arg1 << "> does not match the given pattern <" << arg2 << ">" ) [static, inherited]

Exception

::ExceptionBase& ParameterHandler::ExcAlreadyAtTopLevel (  )  [static, inherited]

Exception

::ExceptionBase& ParameterHandler::ExcEntryUndeclared ( std::string  arg1  )  throw (errortext << "You can't ask for entry <" << arg1 << "> you have not yet declared" ) [static, inherited]

Exception

::ExceptionBase& ParameterHandler::ExcConversionError ( std::string  arg1  )  throw (errortext << "Error when trying to convert the following string: " << arg1 ) [static, inherited]

Exception

::ExceptionBase& PathSearch::ExcNoClass ( std::string  arg1  )  throw (errortext << "The class " << arg1 << " must be registered before referring it in PathSearch" ) [static, inherited]

This class was not registered in the path search mechanism.

::ExceptionBase& PathSearch::ExcFileNotFound ( std::string  arg1,
std::string  arg2 
) throw (errortext << "The file \"" << arg1 << "\" was not found in the path for files of class " << arg2 ) [static, inherited]

The PathSearch class could not find a file with this name in its path list.

template<int dim>
::ExceptionBase& QuadratureSelector< dim >::ExcInvalidQGaussOrder ( int  arg1  )  throw (errortext << "You tried to generate QGauss with an invalid order of " << arg1 << " (must be >= 2)" ) [static, inherited]

Exception

template<int dim>
::ExceptionBase& QuadratureSelector< dim >::ExcInvalidOrder ( std::string  arg1,
unsigned int  arg2 
) throw (errortext << "You tried to generate a " << arg1 << " object; no order is needed (" << arg2 << " was given as parameter)" ) [static, inherited]

Exception

template<int dim>
::ExceptionBase& QuadratureSelector< dim >::ExcInvalidQuadrature ( std::string  arg1  )  throw (errortext << arg1 << " is not a valid quadrature name for a quadrature rule" ) [static, inherited]

Exception

::ExceptionBase& Subscriptor::ExcInUse ( int  arg1,
char *  arg2,
std::string &  arg3 
) throw (errortext << "Object of class " << arg2 << " is still used by " << arg1 << " other objects." << arg3 ) [static, inherited]

Exception: Object may not be deleted, since it is used.

::ExceptionBase& Subscriptor::ExcNoSubscriber ( char *  arg1,
char *  arg2 
) throw (errortext << "No subscriber with identifier \"" << arg2 << "\" did subscribe to this object of class " << arg1 ) [static, inherited]

A subscriber with the identification string given to Subscriptor::unsubscribe() did not subscribe to the object.

::ExceptionBase& Subscriptor::ExcNotUsed (  )  [static, inherited]

Exception: object should be used when Subscriptor::unsubscribe() is called.

::ExceptionBase& TableHandler::ExcColumnNotExistent ( std::string  arg1  )  throw (errortext << "Column <" << arg1 << "> does not exist." ) [static, inherited]

Exception

::ExceptionBase& TableHandler::ExcSuperColumnNotExistent ( std::string  arg1  )  throw (errortext << "Supercolumn <" << arg1 << "> does not exist." ) [static, inherited]

Exception

::ExceptionBase& TableHandler::ExcColumnOrSuperColumnNotExistent ( std::string  arg1  )  throw (errortext << "Column or supercolumn <" << arg1 << "> does not exist." ) [static, inherited]

Exception

::ExceptionBase& TableHandler::ExcWrongNumberOfDataEntries ( std::string  arg1,
int  arg2,
std::string  arg3,
int  arg4 
) throw (errortext << "Column <" << arg1 << "> has got " << arg2 << " rows, but Column <" << arg3 << "> has got " << arg4 << "." ) [static, inherited]

Exception

::ExceptionBase& TableHandler::ExcUndefinedTexFormat ( std::string  arg1  )  throw (errortext << "<" << arg1 << "> is not a tex column format. Use l,c,r." ) [static, inherited]

Exception

template<int dim>
::ExceptionBase& Tensor< 0, dim >::ExcDimTooSmall ( int  arg1  )  throw (errortext << "dim must be positive, but was " << arg1 ) [static, inherited]

Only tensors with a positive dimension are implemented. This exception is thrown by the constructor if the template argument dim is zero or less.

template<int dim>
::ExceptionBase& Tensor< 1, dim >::ExcDimTooSmall ( int  arg1  )  throw (errortext << "dim must be positive, but was " << arg1 ) [static, inherited]

Only tensors with a positive dimension are implemented. This exception is thrown by the constructor if the template argument dim is zero or less.

::ExceptionBase& Threads::DummyBarrier::ExcBarrierSizeNotUseful ( int  arg1  )  throw (errortext << "In single-thread mode, other barrier sizes than 1 are not " << "useful. You gave " << arg1 ) [static, inherited]

Exception.

template<typename RT = void>
::ExceptionBase& Threads::Thread< RT >::ExcNoThread (  )  [static, inherited]

Exception

Referenced by Threads::Thread< RT >::join().

template<typename RT = void>
::ExceptionBase& Threads::Task< RT >::ExcNoTask (  )  [static, inherited]

Exception

template<typename number = double>
::ExceptionBase& BlockTrianglePrecondition< number >::ExcNoDiagonal ( unsigned int  arg1  )  throw (errortext << "No diagonal entry was added for block " << arg1 ) [static, inherited]

Each diagonal block must contain one and only one matrix. If this exception is thrown, you did not enter a matrix here.

template<typename number = double>
::ExceptionBase& BlockTrianglePrecondition< number >::ExcMultipleDiagonal ( unsigned int  arg1  )  throw (errortext << "Inverse diagonal entries may not be added in block " << arg1 ) [static, inherited]

Each diagonal block must contain one and only one matrix. If this exception is thrown, you entered a second matrix here.

template<typename MatrixType>
::ExceptionBase& BlockMatrixBase< MatrixType >::ExcIncompatibleRowNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." ) [static, inherited]

template<typename MatrixType>
::ExceptionBase& BlockMatrixBase< MatrixType >::ExcIncompatibleColNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." ) [static, inherited]

template<typename number>
::ExceptionBase& BlockSparseMatrix< number >::ExcBlockDimensionMismatch (  )  [static, inherited]

Exception

template<class SparsityPatternBase>
::ExceptionBase& BlockSparsityPatternBase< SparsityPatternBase >::ExcIncompatibleRowNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." ) [static, inherited]

Exception

template<class SparsityPatternBase>
::ExceptionBase& BlockSparsityPatternBase< SparsityPatternBase >::ExcIncompatibleColNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." ) [static, inherited]

Exception

template<class SparsityPatternBase>
::ExceptionBase& BlockSparsityPatternBase< SparsityPatternBase >::ExcIncompatibleSizes ( int  arg1,
int  arg2 
) throw (errortext << "The number of blocks " << arg1 << " and " << arg2 << " are different." ) [static, inherited]

Exception

template<class SparsityPatternBase>
::ExceptionBase& BlockSparsityPatternBase< SparsityPatternBase >::ExcInvalidConstructorCall (  )  [static, inherited]

Exception

template<typename Number>
::ExceptionBase& BlockVector< Number >::ExcIteratorRangeDoesNotMatchVectorSize (  )  [static, inherited]

template<class BlockVectorType, bool constness>
::ExceptionBase& internal::BlockVectorIterators::Iterator< BlockVectorType, constness >::ExcPointerToDifferentVectors (  )  [static, inherited]

Exception.

template<class BlockVectorType, bool constness>
::ExceptionBase& internal::BlockVectorIterators::Iterator< BlockVectorType, constness >::ExcCastingAwayConstness (  )  [static, inherited]

Exception.

template<typename number>
::ExceptionBase& ChunkSparseMatrix< number >::ExcInvalidIndex ( int  arg1,
int  arg2 
) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& ChunkSparseMatrix< number >::ExcInvalidIndex1 ( int  arg1  )  throw (errortext << "The index " << arg1 << " is not in the allowed range." ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& ChunkSparseMatrix< number >::ExcDifferentChunkSparsityPatterns (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& ChunkSparseMatrix< number >::ExcIteratorRange ( int  arg1,
int  arg2 
) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& ChunkSparseMatrix< number >::ExcSourceEqualsDestination (  )  [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcInvalidNumber ( int  arg1  )  throw (errortext << "The provided number is invalid here: " << arg1 ) [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcInvalidIndex ( int  arg1,
int  arg2 
) throw (errortext << "The given index " << arg1 << " should be less than " << arg2 << "." ) [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcNotEnoughSpace ( int  arg1,
int  arg2 
) throw (errortext << "Upon entering a new entry to row " << arg1 << ": there was no free entry any more. " << std::endl << "(Maximum number of entries for this row: " << arg2 << "; maybe the matrix is already compressed?)" ) [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcNotCompressed (  )  [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcMatrixIsCompressed (  )  [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcEmptyObject (  )  [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcInvalidConstructorCall (  )  [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcDiagonalNotOptimized (  )  [static, inherited]

This exception is thrown if the matrix does not follow the convention of storing diagonal elements first in row. Refer to SparityPattern::optimize_diagonal() for more information.

::ExceptionBase& ChunkSparsityPattern::ExcIteratorRange ( int  arg1,
int  arg2 
) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 ) [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcMETISNotInstalled (  )  [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcInvalidNumberOfPartitions ( int  arg1  )  throw (errortext << "The number of partitions you gave is " << arg1 << ", but must be greater than zero." ) [static, inherited]

Exception

::ExceptionBase& ChunkSparsityPattern::ExcInvalidArraySize ( int  arg1,
int  arg2 
) throw (errortext << "The array has size " << arg1 << " but should have size " << arg2 ) [static, inherited]

Exception

::ExceptionBase& ConstraintMatrix::ExcMatrixIsClosed (  )  [static, inherited]

::ExceptionBase& ConstraintMatrix::ExcMatrixNotClosed (  )  [static, inherited]

::ExceptionBase& ConstraintMatrix::ExcLineInexistant ( unsigned int  arg1  )  throw (errortext << "The specified line " << arg1 << " does not exist." ) [static, inherited]

Exception

::ExceptionBase& ConstraintMatrix::ExcEntryAlreadyExists ( int  arg1,
int  arg2,
double  arg3,
double  arg4 
) throw (errortext << "The entry for the indices " << arg1 << " and " << arg2 << " already exists, but the values " << arg3 << " (old) and " << arg4 << " (new) differ " << "by " << (arg4-arg3) << "." ) [static, inherited]

Exception

Referenced by ConstraintMatrix::add_entry().

::ExceptionBase& ConstraintMatrix::ExcDoFConstrainedToConstrainedDoF ( int  arg1,
int  arg2 
) throw (errortext << "You tried to constrain DoF " << arg1 << " to DoF " << arg2 << ", but that one is also constrained. This is not allowed!" ) [static, inherited]

Exception

::ExceptionBase& ConstraintMatrix::ExcDoFIsConstrainedFromBothObjects ( int  arg1  )  throw (errortext << "Degree of freedom " << arg1 << " is constrained from both object in a merge operation." ) [static, inherited]

Exception.

::ExceptionBase& ConstraintMatrix::ExcDoFIsConstrainedToConstrainedDoF ( int  arg1  )  throw (errortext << "In the given argument a degree of freedom is constrained " << "to another DoF with number " << arg1 << ", which however is constrained by this object. This is not" << " allowed." ) [static, inherited]

Exception

::ExceptionBase& ConstraintMatrix::ExcRowNotStoredHere ( int  arg1  )  throw (errortext << "The index set given to this constraint matrix indicates " << "constraints for degree of freedom " << arg1 << " should not be stored by this object, but a constraint " << "is being added." ) [static, inherited]

Exception

Referenced by ConstraintMatrix::calculate_line_index().

::ExceptionBase& LACExceptions::ExcNotQuadratic (  )  [static]

This function only works for quadratic matrices.

Referenced by MatrixBlock< MATRIX >::add(), and BlockSparseMatrix< number >::precondition_Jacobi().

::ExceptionBase& LACExceptions::ExcSingular (  )  [static]

The operation cannot be finished since the matrix is singular.

::ExceptionBase& LACExceptions::ExcDifferentBlockIndices (  )  [static]

Block indices of two block objects are different.

::ExceptionBase& LACExceptions::ExcPETScError ( int  arg1  )  throw (errortext << "An error with error number " << arg1 << " occured while calling a PETSc function" ) [static]

An error of a PETSc function was encountered. Check the PETSc documentation for details.

::ExceptionBase& LACExceptions::ExcTrilinosError ( int  arg1  )  throw (errortext << "An error with error number " << arg1 << " occured while calling a Trilinos function" ) [static]

An error of a Trilinos function was encountered. Check the Trilinos documentation for details.

template<typename number>
::ExceptionBase& FullMatrix< number >::ExcEmptyMatrix (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& FullMatrix< number >::ExcNotRegular ( number  arg1  )  throw (errortext << "The maximal pivot is " << arg1 << ", which is below the threshold. The matrix may be singular." ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& FullMatrix< number >::ExcInvalidDestination ( int  arg1,
int  arg2,
int  arg3 
) throw (errortext << "Target region not in matrix: size in this direction=" << arg1 << ", size of new matrix=" << arg2 << ", offset=" << arg3 ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& FullMatrix< number >::ExcSourceEqualsDestination (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& FullMatrix< number >::ExcMatrixNotPositiveDefinite (  )  [static, inherited]

Exception

::ExceptionBase& PETScWrappers::BlockSparseMatrix::ExcIncompatibleRowNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." ) [static, inherited]

Exception

Reimplemented from BlockMatrixBase< PETScWrappers::SparseMatrix >.

::ExceptionBase& PETScWrappers::BlockSparseMatrix::ExcIncompatibleColNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." ) [static, inherited]

Exception

Reimplemented from BlockMatrixBase< PETScWrappers::SparseMatrix >.

::ExceptionBase& PETScWrappers::BlockVector::ExcIteratorRangeDoesNotMatchVectorSize (  )  [static, inherited]

Exception

::ExceptionBase& PETScWrappers::MPI::SparseMatrix::ExcLocalRowsTooLarge ( int  arg1,
int  arg2 
) throw (errortext << "The number of local rows " << arg1 << " must be larger than the total number of rows " << arg2 ) [static, inherited]

Exception

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
::ExceptionBase& PreconditionBlock< MATRIX, inverse_type >::ExcWrongBlockSize ( int  arg1,
int  arg2 
) throw (errortext << "The blocksize " << arg1 << " and the size of the matrix " << arg2 << " do not match." ) [static, inherited]

Exception

template<class MATRIX, typename inverse_type = typename MATRIX::value_type>
::ExceptionBase& PreconditionBlock< MATRIX, inverse_type >::ExcInverseMatricesAlreadyExist (  )  [static, inherited]

Exception

template<class MATRIX = SparseMatrix<double>, class VECTOR = ::Vector<double>>
::ExceptionBase& PreconditionSelector< MATRIX, VECTOR >::ExcNoMatrixGivenToUse (  )  [static, inherited]

template<class VECTOR = Vector<double>>
::ExceptionBase& SolverMinRes< VECTOR >::ExcPreconditionerNotDefinite (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseLUDecomposition< number >::ExcInvalidStrengthening ( double  arg1  )  throw (errortext << "The strengthening parameter " << arg1 << " is not greater or equal than zero!" ) [static, inherited]

Exception

Reimplemented in SparseILU< number >, and SparseMIC< number >.

::ExceptionBase& SparseDirectMA27::ExcMA27AFailed ( int  arg1  )  throw (errortext << "The function MA27A failed with an exit code of " << arg1 ) [static, inherited]

Exception.

::ExceptionBase& SparseDirectMA27::ExcMA27BFailed ( int  arg1  )  throw (errortext << "The function MA27B failed with an exit code of " << arg1 ) [static, inherited]

Exception.

::ExceptionBase& SparseDirectMA27::ExcMA27CFailed ( int  arg1  )  throw (errortext << "The function MA27C failed with an exit code of " << arg1 ) [static, inherited]

Exception.

::ExceptionBase& SparseDirectMA27::ExcInitializeAlreadyCalled (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA27::ExcFactorizeNotCalled (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA27::ExcDifferentSparsityPatterns (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA27::ExcReadError ( int  arg1,
int  arg2 
) throw (errortext << "Error while reading in detached mode. Return value " << "for 'read' was " << arg1 << ", errno has value " << arg2 ) [static, inherited]

Exception

::ExceptionBase& SparseDirectMA27::ExcMatrixNotSymmetric (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA47::ExcMA47AFailed ( int  arg1  )  throw (errortext << "The function MA47A failed with an exit code of " << arg1 ) [static, inherited]

Exception.

::ExceptionBase& SparseDirectMA47::ExcMA47BFailed ( int  arg1  )  throw (errortext << "The function MA47B failed with an exit code of " << arg1 ) [static, inherited]

Exception.

::ExceptionBase& SparseDirectMA47::ExcMA47CFailed ( int  arg1  )  throw (errortext << "The function MA47C failed with an exit code of " << arg1 ) [static, inherited]

Exception.

::ExceptionBase& SparseDirectMA47::ExcInitializeAlreadyCalled (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA47::ExcFactorizeNotCalled (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA47::ExcCantFactorizeAgain (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA47::ExcDifferentMatrices (  )  [static, inherited]

Exception

::ExceptionBase& SparseDirectMA47::ExcMatrixNotSymmetric (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseILU< number >::ExcInvalidStrengthening ( double  arg1  )  throw (errortext << "The strengthening parameter " << arg1 << " is not greater or equal than zero!" ) [static, inherited]

Exception

Reimplemented from SparseLUDecomposition< number >.

template<typename number>
::ExceptionBase& SparseMatrix< number >::ExcInvalidIndex ( int  arg1,
int  arg2 
) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseMatrix< number >::ExcInvalidIndex1 ( int  arg1  )  throw (errortext << "The index " << arg1 << " is not in the allowed range." ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseMatrix< number >::ExcDifferentSparsityPatterns (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseMatrix< number >::ExcIteratorRange ( int  arg1,
int  arg2 
) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseMatrix< number >::ExcSourceEqualsDestination (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseMatrixEZ< number >::ExcNoDiagonal (  )  [static, inherited]

Exception for missing diagonal entry.

template<typename number>
::ExceptionBase& SparseMatrixEZ< number >::ExcInvalidEntry ( int  arg1,
int  arg2 
) throw (errortext << "The entry with index (" << arg1 << ',' << arg2 << ") does not exist." ) [static, inherited]

Exception

Referenced by SparseMatrixEZ< number >::operator()().

template<typename number>
::ExceptionBase& SparseMatrixEZ< number >::ExcEntryAllocationFailure ( int  arg1,
int  arg2 
) throw (errortext << "An entry with index (" << arg1 << ',' << arg2 << ") cannot be allocated." ) [static, inherited]

template<typename number>
::ExceptionBase& SparseMIC< number >::ExcStrengthenDiagonalTooSmall (  )  [static, inherited]

Exception

template<typename number>
::ExceptionBase& SparseMIC< number >::ExcInvalidStrengthening ( double  arg1  )  throw (errortext << "The strengthening parameter " << arg1 << " is not greater or equal than zero!" ) [static, inherited]

Exception

Reimplemented from SparseLUDecomposition< number >.

template<typename number>
::ExceptionBase& SparseMIC< number >::ExcDecompositionNotStable ( int  arg1,
double  arg2 
) throw (errortext << "The diagonal element (" <<arg1<<","<<arg1<<") is " << arg2 <<", but must be positive" ) [static, inherited]

Exception

::ExceptionBase& SparsityPattern::ExcNotEnoughSpace ( int  arg1,
int  arg2 
) throw (errortext << "Upon entering a new entry to row " << arg1 << ": there was no free entry any more. " << std::endl << "(Maximum number of entries for this row: " << arg2 << "; maybe the matrix is already compressed?)" ) [static, inherited]

You tried to add an element to a row, but there was no space left.

::ExceptionBase& SparsityPattern::ExcNotCompressed (  )  [static, inherited]

The operation is only allowed after the SparsityPattern has been set up and compress() was called.

::ExceptionBase& SparsityPattern::ExcMatrixIsCompressed (  )  [static, inherited]

This operation changes the structure of the SparsityPattern and is not possible after compress() has been called.

::ExceptionBase& SparsityPattern::ExcInvalidConstructorCall (  )  [static, inherited]

Exception

::ExceptionBase& SparsityPattern::ExcDiagonalNotOptimized (  )  [static, inherited]

This exception is thrown if the matrix does not follow the convention of storing diagonal elements first in row. Refer to SparityPattern::optimize_diagonal() for more information.

::ExceptionBase& SparsityPattern::ExcIteratorRange ( int  arg1,
int  arg2 
) throw (errortext << "The iterators denote a range of " << arg1 << " elements, but the given number of rows was " << arg2 ) [static, inherited]

Exception

::ExceptionBase& SparsityPattern::ExcInvalidNumberOfPartitions ( int  arg1  )  throw (errortext << "The number of partitions you gave is " << arg1 << ", but must be greater than zero." ) [static, inherited]

Exception

template<typename number>
::ExceptionBase& SwappableVector< number >::ExcSizeZero (  )  [static, inherited]

Exception.

template<typename number>
::ExceptionBase& SwappableVector< number >::ExcSizeNonzero (  )  [static, inherited]

Exception.

template<typename number>
::ExceptionBase& SwappableVector< number >::ExcInvalidFilename ( std::string  arg1  )  throw (errortext << "The filename <" << arg1 << "> is not a valid one here." ) [static, inherited]

Exception.

template<typename number>
::ExceptionBase& SwappableVector< number >::ExcInvalidCopyOperation (  )  [static, inherited]

Exception.

::ExceptionBase& TrilinosWrappers::BlockSparseMatrix::ExcIncompatibleRowNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing row numbers." ) [static, inherited]

Exception

Reimplemented from BlockMatrixBase< MatrixType >.

::ExceptionBase& TrilinosWrappers::BlockSparseMatrix::ExcIncompatibleColNumbers ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "The blocks [" << arg1 << ',' << arg2 << "] and [" << arg3 << ',' << arg4 << "] have differing column numbers." ) [static, inherited]

Exception

Reimplemented from BlockMatrixBase< MatrixType >.

::ExceptionBase& TrilinosWrappers::SparseMatrix::ExcTrilinosError ( int  arg1  )  throw (errortext << "An error with error number " << arg1 << " occured while calling a Trilinos function" ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparseMatrix::ExcInvalidIndex ( int  arg1,
int  arg2 
) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparseMatrix::ExcSourceEqualsDestination (  )  [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparseMatrix::ExcMatrixNotCompressed (  )  [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparseMatrix::ExcAccessToNonLocalElement ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a distributed matrix, but only rows " << arg3 << " through " << arg4 << " are stored locally and can be accessed." ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparseMatrix::ExcAccessToNonPresentElement ( int  arg1,
int  arg2 
) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a sparse matrix, but it appears to not" << " exist in the Trilinos sparsity pattern." ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparsityPattern::ExcTrilinosError ( int  arg1  )  throw (errortext << "An error with error number " << arg1 << " occured while calling a Trilinos function" ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparsityPattern::ExcInvalidIndex ( int  arg1,
int  arg2 
) throw (errortext << "The entry with index <" << arg1 << ',' << arg2 << "> does not exist." ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparsityPattern::ExcSourceEqualsDestination (  )  [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparsityPattern::ExcAccessToNonLocalElement ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a distributed matrix, but only rows " << arg3 << " through " << arg4 << " are stored locally and can be accessed." ) [static, inherited]

Exception

::ExceptionBase& TrilinosWrappers::SparsityPattern::ExcAccessToNonPresentElement ( int  arg1,
int  arg2 
) throw (errortext << "You tried to access element (" << arg1 << "/" << arg2 << ")" << " of a sparse matrix, but it appears to not" << " exist in the Trilinos sparsity pattern." ) [static, inherited]

Exception

template<class VECTOR = ::Vector<double>>
::ExceptionBase& VectorMemory< VECTOR >::ExcNoMoreVectors (  )  [static, inherited]

No more available vectors.

template<class VECTOR = ::Vector<double>>
::ExceptionBase& VectorMemory< VECTOR >::ExcNotAllocatedHere (  )  [static, inherited]

Vector was not allocated from this memory pool.

template<int structdim, class DH>
::ExceptionBase& DoFAccessor< structdim, DH >::ExcInvalidObject (  )  [static, inherited]

Exceptions for child classes

Reimplemented in MGDoFAccessor< structdim, dim, spacedim >, and MGDoFAccessor< dim, dim, spacedim >.

template<int structdim, class DH>
::ExceptionBase& DoFAccessor< structdim, DH >::ExcVectorNotEmpty (  )  [static, inherited]

Exception

template<int structdim, class DH>
::ExceptionBase& DoFAccessor< structdim, DH >::ExcVectorDoesNotMatch (  )  [static, inherited]

Exception

template<int structdim, class DH>
::ExceptionBase& DoFAccessor< structdim, DH >::ExcMatrixDoesNotMatch (  )  [static, inherited]

Exception

template<int structdim, class DH>
::ExceptionBase& DoFAccessor< structdim, DH >::ExcNotActive (  )  [static, inherited]

A function has been called for a cell which should be active, but is refined. GlossActive

template<int structdim, class DH>
::ExceptionBase& DoFAccessor< structdim, DH >::ExcCantCompareIterators (  )  [static, inherited]

Exception

::ExceptionBase& DoFRenumbering::ExcRenumberingIncomplete (  )  [static]

Exception

::ExceptionBase& DoFRenumbering::ExcInvalidComponentOrder (  )  [static]

Exception

::ExceptionBase& DoFRenumbering::ExcNotDGFEM (  )  [static]

The function is only implemented for Discontinuous Galerkin Finite elements.

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcShapeFunctionNotPrimitive ( int  arg1  )  throw (errortext << "The shape function with index " << arg1 << " is not primitive, i.e. it is vector-valued and " << "has more than one non-zero vector component. This " << "function cannot be called for these shape functions. " << "Maybe you want to use the same function with the " << "_component suffix?" ) [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcFENotPrimitive (  )  [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcUnitShapeValuesDoNotExist (  )  [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcFEHasNoSupportPoints (  )  [static, inherited]

Attempt to access support points of a finite element which is not Lagrangian.

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcEmbeddingVoid (  )  [static, inherited]

Attempt to access embedding matrices of a finite element which did not implement these matrices.

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcProjectionVoid (  )  [static, inherited]

Attempt to access restriction matrices of a finite element which did not implement these matrices.

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcConstraintsVoid (  )  [static, inherited]

Attempt to access constraint matrices of a finite element which did not implement these matrices.

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcWrongInterfaceMatrixSize ( int  arg1,
int  arg2 
) throw (errortext << "The interface matrix has a size of " << arg1 << "x" << arg2 << ", which is not reasonable in the present dimension." ) [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcComponentIndexInvalid ( int  arg1,
int  arg2 
) throw (errortext << "The component-index pair (" << arg1 << ", " << arg2 << ") is invalid, i.e. non-existent" ) [static, inherited]

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcInterpolationNotImplemented (  )  [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcBoundaryFaceUsed (  )  [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& FiniteElement< dim, spacedim >::ExcJacobiDeterminantHasWrongSign (  )  [static, inherited]

Exception

::ExceptionBase& FETools::ExcInvalidFEName ( std::string  arg1  )  throw (errortext << "Can't re-generate a finite element from the string '" << arg1 << "'." ) [static, inherited]

The string used for get_fe_from_name() cannot be translated to a finite element.

Either the string is badly formatted or you are using a custom element that must be added using add_fe_name() first.

::ExceptionBase& FETools::ExcInvalidFEDimension ( char  arg1,
int  arg2 
) throw (errortext << "The dimension " << arg1 << " in the finite element string must match " << "the space dimension " << arg2 << "." ) [static, inherited]

The string used for get_fe_from_name() cannot be translated to a finite element.

Dimension arguments in finite element names should be avoided. If they are there, the dimension should be dim or d. Here, you gave a numeric dimension argument, which does not match the template dimension of the finite element class.

::ExceptionBase& FETools::ExcInvalidFE (  )  [static, inherited]

Exception

::ExceptionBase& FETools::ExcFENotPrimitive (  )  [static, inherited]

The finite element must be primitive.

::ExceptionBase& FETools::ExcTriangulationMismatch (  )  [static, inherited]

Exception

::ExceptionBase& FETools::ExcHangingNodesNotAllowed ( int  arg1  )  throw (errortext << "You are using continuous elements on a grid with " << "hanging nodes but without providing hanging node " << "constraints. Use the respective function with " << "additional ConstraintMatrix argument(s), instead." ) [static, inherited]

A continuous element is used on a mesh with hanging nodes, but the constraint matrices are missing.

::ExceptionBase& FETools::ExcGridNotRefinedAtLeastOnce (  )  [static, inherited]

You need at least two grid levels.

::ExceptionBase& FETools::ExcMatrixDimensionMismatch ( int  arg1,
int  arg2,
int  arg3,
int  arg4 
) throw (errortext << "This is a " << arg1 << "x" << arg2 << " matrix, " << "but should be a " << arg3 << "x" << arg4 << " matrix." ) [static, inherited]

The dimensions of the matrix used did not match the expected dimensions.

::ExceptionBase& FETools::ExcLeastSquaresError ( double  arg1  )  throw (errortext << "Least squares fit leaves a gap of " << arg1 ) [static, inherited]

Exception thrown if an embedding matrix was computed inaccurately.

::ExceptionBase& FETools::ExcNotGreaterThan ( int  arg1,
int  arg2 
) throw (errortext << arg1 << " must be greater than " << arg2 ) [static, inherited]

Exception thrown if one variable may not be greater than another.

template<int dim, int spacedim>
::ExceptionBase& FEValuesBase< dim, spacedim >::ExcAccessToUninitializedField (  )  [static, inherited]

This exception is thrown if FEValuesBase is asked to return the value of a field which was not required by the UpdateFlags for this FEValuesBase.

template<int dim, int spacedim>
::ExceptionBase& FEValuesBase< dim, spacedim >::ExcCannotInitializeField (  )  [static, inherited]

Todo:
Document this

template<int dim, int spacedim>
::ExceptionBase& FEValuesBase< dim, spacedim >::ExcInvalidUpdateFlag (  )  [static, inherited]

Todo:
Document this

template<int dim, int spacedim>
::ExceptionBase& FEValuesBase< dim, spacedim >::ExcFEDontMatch (  )  [static, inherited]

Todo:
Document this

template<int dim, int spacedim>
::ExceptionBase& FEValuesBase< dim, spacedim >::ExcShapeFunctionNotPrimitive ( int  arg1  )  throw (errortext << "The shape function with index " << arg1 << " is not primitive, i.e. it is vector-valued and " << "has more than one non-zero vector component. This " << "function cannot be called for these shape functions. " << "Maybe you want to use the same function with the " << "_component suffix?" ) [static, inherited]

Todo:
Document this

template<int dim, int spacedim>
::ExceptionBase& FEValuesBase< dim, spacedim >::ExcFENotPrimitive (  )  [static, inherited]

Todo:
Document this

template<int dim, int spacedim = dim>
::ExceptionBase& FESubfaceValues< dim, spacedim >::ExcReinitCalledWithBoundaryFace (  )  [static, inherited]

Todo:
Document this

template<int dim, int spacedim = dim>
::ExceptionBase& FESubfaceValues< dim, spacedim >::ExcFaceHasNoSubfaces (  )  [static, inherited]

Todo:
Document this

template<int dim, int spacedim = dim>
::ExceptionBase& Triangulation< dim, spacedim >::ExcInvalidLevel ( int  arg1  )  throw (errortext << "The given level " << arg1 << " is not in the valid range!" ) [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& Triangulation< dim, spacedim >::ExcTriangulationNotEmpty (  )  [static, inherited]

The function raising this exception can only operate on an empty Triangulation, i.e., a Triangulation without grid cells.

template<int dim, int spacedim = dim>
::ExceptionBase& Triangulation< dim, spacedim >::ExcGridReadError (  )  [static, inherited]

Trying to re-read a grid, an error occured.

template<int dim, int spacedim = dim>
::ExceptionBase& Triangulation< dim, spacedim >::ExcFacesHaveNoLevel (  )  [static, inherited]

Exception

template<int dim, int spacedim = dim>
::ExceptionBase& Triangulation< dim, spacedim >::ExcEmptyLevel ( int  arg1  )  throw (errortext << "You tried to do something on level " << arg1 << ", but this level is empty." ) [static, inherited]

The triangulation level you accessed is empty.

::ExceptionBase& TriaAccessorExceptions::ExcCellNotUsed (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcCellNotActive (  )  [static]

The cell is not an active cell, but it already has children. Some operations, like setting refinement flags or accessing degrees of freedom are only possible on active cells.

::ExceptionBase& TriaAccessorExceptions::ExcCellHasNoChildren (  )  [static]

Trying to access the children of a cell which is in fact active.

::ExceptionBase& TriaAccessorExceptions::ExcUnusedCellAsChild (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcCantSetChildren ( int  arg1  )  throw (errortext << "You can only set the child index if the cell has no " << "children, or clear it. The given " << "index was " << arg1 << " (-1 means: clear children)" ) [static]

::ExceptionBase& TriaAccessorExceptions::ExcUnusedCellAsNeighbor (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcUncaughtCase (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcDereferenceInvalidObject (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcCantCompareIterators (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcNeighborIsCoarser (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcNeighborIsNotCoarser (  )  [static]

::ExceptionBase& TriaAccessorExceptions::ExcFacesHaveNoLevel (  )  [static]

You are trying to access the level of a face, but faces have no inherent level. The level of a face can only be determined by the level of an adjacent face, which in turn implies that a face can have several levels.

::ExceptionBase& TriaAccessorExceptions::ExcSetOnlyEvenChildren ( int  arg1  )  throw (errortext << "You can only set the child index of an even numbered child." << "The number of the child given was " << arg1 << "." ) [static]

template<int dim, int spacedim = dim>
::ExceptionBase& CellAccessor< dim, spacedim >::ExcRefineCellNotActive (  )  [static, inherited]

template<int dim, int spacedim = dim>
::ExceptionBase& CellAccessor< dim, spacedim >::ExcCellFlaggedForRefinement (  )  [static, inherited]

template<int dim, int spacedim = dim>
::ExceptionBase& CellAccessor< dim, spacedim >::ExcCellFlaggedForCoarsening (  )  [static, inherited]

template<typename G>
::ExceptionBase& internal::Triangulation::TriaObjects< G >::ExcMemoryInexact ( int  arg1,
int  arg2 
) throw (errortext << "The containers have sizes " << arg1 << " and " << arg2 << ", which is not as expected." ) [static, inherited]

Exception

template<typename G>
::ExceptionBase& internal::Triangulation::TriaObjects< G >::ExcPointerIndexClash (  )  [static, inherited]

Triangulation objacts can either access a user pointer or a user index. What you tried to do is trying to access one of those after using the other.

Referenced by internal::Triangulation::TriaObjects< G >::user_index(), and internal::Triangulation::TriaObjects< G >::user_pointer().


deal.II documentation generated on Wed Jul 28 23:06:15 2010 by doxygen 1.5.6