DOLFIN
DOLFIN C++ interface
UnitIntervalMesh.h
1 // Copyright (C) 2007 Kristian B. Oelgaard
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 Anders Logg, 2010.
19 // Modified by Benjamin Kehlet 2012
20 // Modified by Mikael Mortensen, 2014
21 //
22 // First added: 2007-11-23
23 // Last changed: 2014-02-17
24 
25 #ifndef __UNIT_INTERVAL_MESH_H
26 #define __UNIT_INTERVAL_MESH_H
27 
28 #include <cstddef>
29 #include <dolfin/common/MPI.h>
30 #include "IntervalMesh.h"
31 
32 namespace dolfin
33 {
34 
38 
40  {
41  public:
42 
52  static Mesh create(std::size_t n)
53  { return create(MPI_COMM_WORLD, n); }
54 
67  static Mesh create(MPI_Comm comm, std::size_t n)
68  { return IntervalMesh::create(comm, n, {{0.0, 1.0}}); }
69 
79  UnitIntervalMesh(std::size_t nx) : UnitIntervalMesh(MPI_COMM_WORLD, nx) {}
80 
93  UnitIntervalMesh(MPI_Comm comm, std::size_t nx)
94  : IntervalMesh(comm, nx, 0.0, 1.0) {}
95 
96  };
97 
98 }
99 
100 #endif
Definition: adapt.h:29
UnitIntervalMesh(MPI_Comm comm, std::size_t nx)
Definition: UnitIntervalMesh.h:93
static Mesh create(std::size_t n, std::array< double, 2 > x)
Definition: IntervalMesh.h:49
Definition: IntervalMesh.h:33
UnitIntervalMesh(std::size_t nx)
Definition: UnitIntervalMesh.h:79
static Mesh create(MPI_Comm comm, std::size_t n)
Definition: UnitIntervalMesh.h:67
static Mesh create(std::size_t n)
Definition: UnitIntervalMesh.h:52
Definition: UnitIntervalMesh.h:39
Definition: Mesh.h:82