Basix
lattice.h
1// Copyright (c) 2020-2022 Chris Richardson and Garth N. Wells
2// FEniCS Project
3// SPDX-License-Identifier: MIT
4
5#pragma once
6
7#include "cell.h"
8#include <array>
9#include <utility>
10#include <vector>
11
14{
15
20enum class type
21{
22 equispaced = 0,
23 gll = 1,
24 chebyshev = 2,
25 gl = 4,
27 = 10,
29 = 11,
30};
31
34{
35 none = 0,
37 warp = 1,
39 isaac = 2,
42 centroid = 3,
46};
47
70std::pair<std::vector<double>, std::array<std::size_t, 2>>
71create(cell::type celltype, int n, lattice::type type, bool exterior,
73
74} // namespace basix::lattice
type
Cell type.
Definition: cell.h:20
Lattices of points.
Definition: lattice.h:14
std::pair< std::vector< double >, std::array< std::size_t, 2 > > create(cell::type celltype, int n, lattice::type type, bool exterior, lattice::simplex_method simplex_method=lattice::simplex_method::none)
Create a lattice of points on a reference cell optionally including the outer surface points.
Definition: lattice.cpp:900
type
The type of point spacing to be used in a lattice.
Definition: lattice.h:21
simplex_method
The method used to generate points inside simplices.
Definition: lattice.h:34