DOLFIN
DOLFIN C++ interface
MultiMeshSubSpace.h
1 // Copyright (C) 2014-2015 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 // First added: 2014-06-11
19 // Last changed: 2015-11-12
20 
21 #ifndef __MULTI_MESH_SUB_SPACE_H
22 #define __MULTI_MESH_SUB_SPACE_H
23 
24 #include <vector>
25 #include "MultiMeshFunctionSpace.h"
26 
27 namespace dolfin
28 {
29 
41 
43  {
44  public:
45 
48  std::size_t component);
49 
52  std::size_t component, std::size_t sub_component);
53 
56  const std::vector<std::size_t>& component);
57 
58  private:
59 
60  // Build subspace
61  void _build(MultiMeshFunctionSpace& V,
62  const std::vector<std::size_t>& component);
63 
64  };
65 
66 }
67 
68 #endif
Definition: adapt.h:29
MultiMeshSubSpace(MultiMeshFunctionSpace &V, std::size_t component)
Create subspace for given component (one level)
Definition: MultiMeshSubSpace.cpp:29
Definition: MultiMeshFunctionSpace.h:47
Definition: MultiMeshSubSpace.h:42