~njansson/dolfin/hpc

« back to all changes in this revision

Viewing changes to dolfin/mesh/LocalMeshCoarsening.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
1
// Copyright (C) 2006 Johan Hoffman.
2
2
// Licensed under the GNU LGPL Version 2.1.
3
3
//
 
4
// Modified by Anders Logg, 2008.
 
5
// 
4
6
// First added:  2006-11-01
 
7
// Last changed: 2008-05-28
5
8
 
6
9
#include <list>
7
10
 
10
13
#include "Mesh.h"
11
14
#include "MeshTopology.h"
12
15
#include "MeshGeometry.h"
 
16
#include "MeshData.h"
13
17
#include "MeshConnectivity.h"
14
18
#include "MeshEditor.h"
15
19
#include "MeshFunction.h"
203
207
  for (VertexIterator v(mesh); !v.end(); ++v)
204
208
    vertex_boundary.set(v->index(),false);
205
209
 
206
 
  MeshFunction<uint> bnd_vertex_map; 
207
 
  MeshFunction<uint> bnd_cell_map; 
208
 
  BoundaryMesh boundary(mesh,bnd_vertex_map,bnd_cell_map);
 
210
  BoundaryMesh boundary(mesh);
 
211
  MeshFunction<uint>* bnd_vertex_map = boundary.data().meshFunction("vertex map");
 
212
  dolfin_assert(bnd_vertex_map);
209
213
  for (VertexIterator v(boundary); !v.end(); ++v)
210
 
    vertex_boundary.set(bnd_vertex_map.get(v->index()),true);
 
214
    vertex_boundary.set(bnd_vertex_map->get(v->index()),true);
211
215
 
212
216
  // If coarsen boundary is forbidden 
213
217
  if ( coarsen_boundary == false )
214
218
  {
215
219
    for (VertexIterator v(boundary); !v.end(); ++v)
216
 
      vertex_forbidden.set(bnd_vertex_map.get(v->index()),true);
 
220
      vertex_forbidden.set(bnd_vertex_map->get(v->index()),true);
217
221
  }
218
 
 
219
 
 
220
 
 
221
222
  // Initialise data for finding which vertex to remove   
222
223
  bool collapse_edge = false;
223
224
  uint* edge_vertex;