From 23ca90f788d6183ab9220d17e2c7b7c54dd3fc30 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Mon, 25 Jan 2010 00:05:22 +0000 Subject: [PATCH] Make at least compile. git-svn-id: https://svn.dealii.org/trunk@20429 0785d39b-7218-0410-832d-ea1e28bc413d --- tests/deal.II/mesh_worker_01.cc | 43 ++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/tests/deal.II/mesh_worker_01.cc b/tests/deal.II/mesh_worker_01.cc index 53a584bdf1..b9c9a9091b 100644 --- a/tests/deal.II/mesh_worker_01.cc +++ b/tests/deal.II/mesh_worker_01.cc @@ -2,7 +2,7 @@ // $Id$ // Version: $Name$ // -// Copyright (C) 2000, 2001, 2003, 2004, 2007, 2008, 2009 by the deal.II authors +// Copyright (C) 2000, 2001, 2003, 2004, 2007, 2008, 2009, 2010 by the deal.II authors // // This file is subject to QPL and may not be distributed // without copyright and license information. Please refer @@ -19,6 +19,7 @@ #include #include +#include #include #include #include @@ -120,20 +121,6 @@ Local::face(FaceInfo& info1, FaceInfo& info2) const } -template -void -assemble(const DoFHandler& dof_handler, WORKER& worker) -{ - const FiniteElement& fe = dof_handler.get_fe(); - MappingQ1 mapping; - - MeshWorker::IntegrationInfoBox info_box(dof_handler); - info_box.initialize(worker, fe, mapping); - - MeshWorker::integration_loop(dof_handler.begin_active(), dof_handler.end(), info_box, worker); -} - - template void test_simple(MGDoFHandler& mgdofs) @@ -156,14 +143,32 @@ test_simple(MGDoFHandler& mgdofs) local.cells = true; local.faces = false; - MeshWorker::AssemblingIntegrator, Vector >, Local > - integrator(local); + MeshWorker::IntegrationWorker integrator; integrator.initialize_gauss_quadrature(1, 1, 1); - integrator.initialize(matrix, v); integrator.boundary_fluxes = local.faces; integrator.interior_fluxes = local.faces; - assemble(dofs, integrator); + MeshWorker::Assembler::SystemSimple, Vector > + assembler; + assembler.initialize(matrix, v); + + { + MappingQ1 mapping; + + MeshWorker::IntegrationInfoBox info_box(mgdofs); + info_box.initialize(integrator, assembler, fe, mapping); + + MeshWorker::integration_loop + ::CellInfo, + typename Local::FaceInfo> + (mgdofs.begin_active(), mgdofs.end(), + info_box, + std_cxx1x::bind (&Local::cell, local, _1), + std_cxx1x::bind (&Local::bdry, local, _1), + std_cxx1x::bind (&Local::face, local, _1, _2), + assembler); + } + for (unsigned int i=0;i