~njansson/dolfin/hpc

« back to all changes in this revision

Viewing changes to dolfin/mesh/ALE.h

  • Committer: Anders Logg
  • Date: 2008-05-28 09:03:15 UTC
  • mto: (2668.1.38 trunk)
  • mto: This revision was merged to the branch mainline in revision 2670.
  • Revision ID: logg@simula.no-20080528090315-9q4pm9mokn156ve5
ALE mesh smoothing updates

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
// Licensed under the GNU LGPL Version 2.1.
3
3
//
4
4
// First added:  2008-05-02
5
 
// Last changed: 2008-05-05
 
5
// Last changed: 2008-05-28
6
6
 
7
7
#ifndef __ALE_H
8
8
#define __ALE_H
10
10
#include <dolfin/common/types.h>
11
11
#include "MeshFunction.h"
12
12
#include "Facet.h"
13
 
#include "ALEMethod.h"
 
13
#include "ALEType.h"
14
14
 
15
15
namespace dolfin
16
16
{
29
29
 
30
30
    /// Move coordinates of mesh according to new boundary coordinates
31
31
    static void move(Mesh& mesh, Mesh& new_boundary,
32
 
                     const MeshFunction<uint>& vertex_map,
33
 
                     const MeshFunction<uint>& cell_map,
34
 
                     ALEMethod type = lagrange);
 
32
                     ALEType type=lagrange);
35
33
    
36
34
  private:
37
35
    
38
36
    // Transfinite meanvalue interpolation
39
37
    static void meanValue(real* new_x, uint dim, Mesh& new_boundary,
40
38
                          Mesh& mesh, const MeshFunction<uint>& vertex_map,
41
 
                          Vertex& vertex, real** ghat, ALEMethod type);
 
39
                          Vertex& vertex, real** ghat, ALEType type);
42
40
 
43
41
    // Compute weights for transfinite meanvalue interpolation
44
42
    static void computeWeights2D(real* w, real** u, real* d,