DOLFIN
DOLFIN C++ interface
ALE.h
1 // Copyright (C) 2008-2009 Solveig Bruvoll and Anders Logg
2 //
3 // This file is part of DOLFIN.
4 //
5 // DOLFIN is free software: you can redistribute it and/or modify
6 // it under the terms of the GNU Lesser General Public License as published by
7 // the Free Software Foundation, either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // DOLFIN is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU Lesser General Public License for more details.
14 //
15 // You should have received a copy of the GNU Lesser General Public License
16 // along with DOLFIN. If not, see <http://www.gnu.org/licenses/>.
17 //
18 // Modified by Jan Blechta 2013
19 //
20 // First added: 2008-05-02
21 // Last changed: 2013-03-06
22 
23 #ifndef __ALE_H
24 #define __ALE_H
25 
26 #include <memory>
27 #include "MeshDisplacement.h"
28 
29 namespace dolfin
30 {
31 
32  class Mesh;
33  class BoundaryMesh;
34  class GenericFunction;
35 
40 
41  class ALE
42  {
43  public:
44 
45 
57  static std::shared_ptr<MeshDisplacement>
58  move(std::shared_ptr<Mesh> mesh, const BoundaryMesh& new_boundary);
59 
62  //
70  static std::shared_ptr<MeshDisplacement> move(std::shared_ptr<Mesh> mesh0,
71  const Mesh& mesh1);
72 
84  static void move(Mesh& mesh, const GenericFunction& displacement);
85 
92  static void move(Mesh& mesh, const Function& displacement);
93 
94  };
95 
96 }
97 
98 #endif
static std::shared_ptr< MeshDisplacement > move(std::shared_ptr< Mesh > mesh, const BoundaryMesh &new_boundary)
Definition: ALE.cpp:36
Definition: adapt.h:29
Definition: ALE.h:41
Definition: Function.h:65
Definition: GenericFunction.h:53
Definition: BoundaryMesh.h:39
Definition: Mesh.h:82