From 96f4e011969064d5fa1d312036bf725db630dc04 Mon Sep 17 00:00:00 2001 From: Guido Kanschat Date: Tue, 16 Apr 2002 14:24:09 +0000 Subject: [PATCH] Exception for missing prolongation matrices git-svn-id: https://svn.dealii.org/trunk@5668 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/include/multigrid/mg_transfer.h | 6 ++++++ deal.II/deal.II/source/multigrid/multigrid.cc | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/deal.II/deal.II/include/multigrid/mg_transfer.h b/deal.II/deal.II/include/multigrid/mg_transfer.h index 527d04b8a7..f76a4e8d65 100644 --- a/deal.II/deal.II/include/multigrid/mg_transfer.h +++ b/deal.II/deal.II/include/multigrid/mg_transfer.h @@ -136,6 +136,12 @@ class MGTransferPrebuilt : public Subscriptor // MGTransferBase > OutVector &dst, const MGLevelObject > &src) const; + /** + * Finite element does not + * provide prolongation matrices. + */ + DeclException0(ExcNoProlongation); + private: /** diff --git a/deal.II/deal.II/source/multigrid/multigrid.cc b/deal.II/deal.II/source/multigrid/multigrid.cc index cc65bc9e1c..f7781ad870 100644 --- a/deal.II/deal.II/source/multigrid/multigrid.cc +++ b/deal.II/deal.II/source/multigrid/multigrid.cc @@ -83,7 +83,9 @@ void MGTransferPrebuilt::build_matrices (const MGDoFHandler &mg_dof) // this child const FullMatrix &prolongation = mg_dof.get_fe().prolongate(child); - + + Assert (prolongation.n() != 0, ExcNoProlongation()); + cell->child(child)->get_mg_dof_indices (dof_indices_child); // now tag the entries in the -- 2.39.5