From: kanschat Date: Mon, 25 Feb 2013 14:55:19 +0000 (+0000) Subject: undo commit 28489 which screwed up multigrid for DG methods X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40842c27a58e29b91fd5198ec8211347497ef0f6;p=dealii-svn.git undo commit 28489 which screwed up multigrid for DG methods git-svn-id: https://svn.dealii.org/trunk@28551 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/include/deal.II/multigrid/multigrid.templates.h b/deal.II/include/deal.II/multigrid/multigrid.templates.h index 17226ffdf0..cfee9c22a9 100644 --- a/deal.II/include/deal.II/multigrid/multigrid.templates.h +++ b/deal.II/include/deal.II/multigrid/multigrid.templates.h @@ -156,16 +156,6 @@ Multigrid::level_v_step(const unsigned int level) // std::cout<vmult_add(level, t[level], solution[level]); - if (debug>2) - deallog << "Norm t[" << level << "] " << t[level].l2_norm() << std::endl; - } - - if (edge_down != 0) - edge_down->vmult(level, t[level-1], solution[level]); - // make t rhs of lower level The // non-refined parts of the // coarse-level defect already @@ -174,6 +164,15 @@ Multigrid::level_v_step(const unsigned int level) for (unsigned int l = level; l>minlevel; --l) { t[l-1] = 0.; + if (l==level && edge_out != 0) + { + edge_out->vmult_add(level, t[level], solution[level]); + if (debug>2) + deallog << "Norm t[" << level << "] " << t[level].l2_norm() << std::endl; + } + + if (l==level && edge_down != 0) + edge_down->vmult(level, t[level-1], solution[level]); transfer->restrict_and_add (l, t[l-1], t[l]); if (debug>3)