/**
* Exception
*/
- DeclException0(ExcNotPrepared);
+ DeclExceptionMsg(ExcNotPrepared,
+ "You are attempting an operation for which this object is "
+ "not prepared. This may be because you either did not call "
+ "one of the prepare_*() functions at all, or because you "
+ "called the wrong one for the operation you are currently "
+ "attempting.");
/**
* Exception
*/
- DeclException0(ExcAlreadyPrepForRef);
+ DeclExceptionMsg(ExcAlreadyPrepForRef,
+ "You are attempting to call one of the prepare_*() functions "
+ "of this object to prepare it for an operation for which it "
+ "is already prepared. Specifically, the object was "
+ "previously prepared for pure refinement.");
/**
* Exception
*/
- DeclException0(ExcAlreadyPrepForCoarseAndRef);
-
- /**
- * Exception
- */
- DeclException0(ExcTriaPrepCoarseningNotCalledBefore);
-
- /**
- * Exception
- */
- DeclException0(ExcNoInVectorsGiven);
-
- /**
- * Exception
- */
- DeclException0(ExcVectorsDifferFromInVectors);
-
- /**
- * Exception
- */
- DeclException0(ExcNumberOfDoFsPerCellHasChanged);
+ DeclExceptionMsg(ExcAlreadyPrepForCoarseAndRef,
+ "You are attempting to call one of the prepare_*() functions "
+ "of this object to prepare it for an operation for which it "
+ "is already prepared. Specifically, the object was "
+ "previously prepared for both coarsening and refinement.");
private:
const unsigned int dofs_per_cell=cell->get_dof_handler().get_fe()[this_fe_index].dofs_per_cell;
local_values.reinit(dofs_per_cell, true);
- // make sure that the size of the
- // stored indices is the same as
- // dofs_per_cell. this is kind of a
- // test if we use the same fe in the
- // hp case. to really do that test we
- // would have to store the fe_index
- // of all cells
+ // make sure that the size of the stored indices is the same as
+ // dofs_per_cell. since we store the desired fe_index, we know
+ // what this size should be
Assert(dofs_per_cell==(*pointerstruct->second.indices_ptr).size(),
- ExcNumberOfDoFsPerCellHasChanged());
+ ExcInternalError());
for (unsigned int i=0; i<dofs_per_cell; ++i)
local_values(i)=in((*pointerstruct->second.indices_ptr)[i]);
cell->set_dof_values_by_interpolation(local_values, out,
ExcAlreadyPrepForCoarseAndRef());
const unsigned int in_size=all_in.size();
- Assert(in_size!=0, ExcNoInVectorsGiven());
+ Assert(in_size!=0,
+ ExcMessage("The array of input vectors you pass to this "
+ "function has no elements. This is not useful."));
clear();