~njansson/dolfin/hpc

« back to all changes in this revision

Viewing changes to dolfin/fem/pAssembler.cpp

  • Committer: Anders Logg
  • Date: 2008-05-28 08:13:15 UTC
  • mto: (2668.1.38 trunk)
  • mto: This revision was merged to the branch mainline in revision 2670.
  • Revision ID: logg@simula.no-20080528081315-fgsvgvhtxt8h54rv
Remove vertex_map and cell_map from BoundaryMesh interface.
They are now instead available as mesh data named "vertex map" and "cell map".

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// Copyright (C) 2007 Anders Logg.
 
1
// Copyright (C) 2007-2008 Anders Logg.
2
2
// Licensed under the GNU LGPL Version 2.1.
3
3
//
4
4
// Modified by Garth N. Wells, 2007
6
6
// Modified by Magnus Vikstrøm, 2007
7
7
//
8
8
// First added:  2007-01-17
9
 
// Last changed: 2007-12-07
 
9
// Last changed: 2008-05-28
10
10
 
11
11
#include <dolfin/log/dolfin_log.h>
12
12
#include <dolfin/common/Array.h>
18
18
#include <dolfin/mesh/BoundaryMesh.h>
19
19
#include <dolfin/mesh/MeshFunction.h>
20
20
#include <dolfin/mesh/SubDomain.h>
 
21
#include <dolfin/mesh/MeshData.h>
21
22
#include <dolfin/function/Function.h>
22
23
#include "Form.h"
23
24
#include "UFC.h"
234
235
  ufc::exterior_facet_integral* integral = ufc.exterior_facet_integrals[0];
235
236
 
236
237
  // Create boundary mesh
237
 
  MeshFunction<uint> vertex_map;
238
 
  MeshFunction<uint> cell_map;
239
 
  BoundaryMesh boundary(mesh, vertex_map, cell_map);
 
238
  BoundaryMesh boundary(mesh);
 
239
  MeshFunction<uint>* cell_map = boundary.data().meshFunction("cell map");
 
240
  dolfin_assert(cell_map);
240
241
  
241
242
  // Assemble over exterior facets (the cells of the boundary)
242
243
  message("Assembling over %d exterior facets.", boundary.numCells());
244
245
  for (CellIterator boundary_cell(boundary); !boundary_cell.end(); ++boundary_cell)
245
246
  {
246
247
    // Get mesh facet corresponding to boundary cell
247
 
    Facet mesh_facet(mesh, cell_map(*boundary_cell));
 
248
    Facet mesh_facet(mesh, (*cell_map)(*boundary_cell));
248
249
 
249
250
    // Get integral for sub domain (if any)
250
251
    if (domains && domains->size() > 0)