From: hartmann Date: Tue, 17 Dec 2002 11:07:39 +0000 (+0000) Subject: Add missing exception. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=be8643834d3f6fbde5e3e326686d3ced06d96c12;p=dealii-svn.git Add missing exception. git-svn-id: https://svn.dealii.org/trunk@6837 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/deal.II/include/multigrid/mg_tools.templates.h b/deal.II/deal.II/include/multigrid/mg_tools.templates.h index 51888eae26..1470878a79 100644 --- a/deal.II/deal.II/include/multigrid/mg_tools.templates.h +++ b/deal.II/deal.II/include/multigrid/mg_tools.templates.h @@ -50,7 +50,6 @@ MGTransferPrebuilt::copy_to_mg ( MGLevelObject >& dst, const InVector& src) const { - // Make src a real finite element function // InVector src = osrc; // constraints->distribute(src); @@ -61,9 +60,11 @@ MGTransferPrebuilt::copy_to_mg ( // on all levels to zero unsigned int minlevel = dst.get_minlevel(); unsigned int maxlevel = dst.get_maxlevel(); - + dst.clear(); + Assert(sizes.size()==mg_dof_handler.get_tria().n_levels(), + ExcMatricesNotBuilt()); for (unsigned int l=minlevel;l<=maxlevel;++l) dst[l].reinit(sizes[l]); @@ -277,6 +278,8 @@ MGTransferSelect::copy_to_mg ( dst.clear(); + Assert(sizes.size()==mg_dof_handler.get_tria().n_levels(), + ExcMatricesNotBuilt()); for (unsigned int l=minlevel;l<=maxlevel;++l) dst[l].reinit(sizes[l][selected]); diff --git a/deal.II/deal.II/include/multigrid/mg_transfer.h b/deal.II/deal.II/include/multigrid/mg_transfer.h index ea03980682..5dc09f0d64 100644 --- a/deal.II/deal.II/include/multigrid/mg_transfer.h +++ b/deal.II/deal.II/include/multigrid/mg_transfer.h @@ -143,6 +143,12 @@ class MGTransferPrebuilt : public MGTransfer > */ DeclException0(ExcNoProlongation); + /** + * Call @p{build_matrices} + * function first. + */ + DeclException0(ExcMatricesNotBuilt); + private: /** @@ -213,6 +219,12 @@ class MGTransferBlockBase */ std::vector > mg_component_start; + /** + * Call @p{build_matrices} + * function first. + */ + DeclException0(ExcMatricesNotBuilt); + private: std::vector prolongation_sparsities;