Basix
Toggle main menu visibility
Loading...
Searching...
No Matches
cpp
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 <concepts>
10
#include <utility>
11
#include <vector>
12
14
namespace
basix::lattice
15
{
20
enum class
type
21
{
22
equispaced
= 0,
23
gll
= 1,
24
chebyshev
= 2,
25
gl
= 4,
26
chebyshev_plus_endpoints
27
= 10,
28
gl_plus_endpoints
29
= 11,
30
};
31
33
enum class
simplex_method
34
{
35
none
= 0,
37
warp
= 1,
39
isaac
= 2,
42
centroid
= 3,
46
};
47
71
template
<std::
float
ing_po
int
T>
72
std::pair<std::vector<T>, std::array<std::size_t, 2>>
73
create
(
cell::type
celltype,
int
n,
lattice::type
type
,
bool
exterior,
74
lattice::simplex_method
simplex_method
=
lattice::simplex_method::none
);
75
76
}
// namespace basix::lattice
basix::cell::type
type
Cell type.
Definition
cell.h:21
basix::lattice
Lattices of points.
Definition
lattice.h:15
basix::lattice::type
type
The type of point spacing to be used in a lattice.
Definition
lattice.h:21
basix::lattice::type::equispaced
@ equispaced
Definition
lattice.h:22
basix::lattice::type::gll
@ gll
Definition
lattice.h:23
basix::lattice::type::chebyshev
@ chebyshev
Definition
lattice.h:24
basix::lattice::type::chebyshev_plus_endpoints
@ chebyshev_plus_endpoints
Definition
lattice.h:26
basix::lattice::type::gl_plus_endpoints
@ gl_plus_endpoints
Definition
lattice.h:28
basix::lattice::type::gl
@ gl
Definition
lattice.h:25
basix::lattice::simplex_method
simplex_method
The method used to generate points inside simplices.
Definition
lattice.h:34
basix::lattice::simplex_method::centroid
@ centroid
Definition
lattice.h:42
basix::lattice::simplex_method::none
@ none
Definition
lattice.h:35
basix::lattice::simplex_method::isaac
@ isaac
Definition
lattice.h:39
basix::lattice::simplex_method::warp
@ warp
Definition
lattice.h:37
basix::lattice::create
std::pair< std::vector< T >, 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:783
Generated by
1.17.0