MFEM v4.10.0
Finite element discretization library
Loading...
Searching...
No Matches
eval_by_nodes.cpp
Go to the documentation of this file.
1// Copyright (c) 2010-2026, Lawrence Livermore National Security, LLC. Produced
2// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
3// LICENSE and NOTICE for details. LLNL-CODE-806117.
4//
5// This file is part of the MFEM library. For more information and source code
6// availability visit https://mfem.org.
7//
8// MFEM is free software; you can redistribute it and/or modify it under the
9// terms of the BSD-3 license. We welcome feedback and contributions, see file
10// CONTRIBUTING.md for details.
11
13#include "eval.hpp"
14
15namespace mfem
16{
17namespace internal
18{
19namespace quadrature_interpolator
20{
21
22void InitEvalByNodesKernels()
23{
24 // 2D
26 2, QVectorLayout::byNODES, 1, 3, 3, 1>();
28 2, QVectorLayout::byNODES, 1, 2, 4, 1>();
30 2, QVectorLayout::byNODES, 1, 3, 2, 1>();
32 2, QVectorLayout::byNODES, 1, 3, 4, 1>();
34 2, QVectorLayout::byNODES, 1, 3, 6, 1>();
36 2, QVectorLayout::byNODES, 1, 4, 3, 1>();
38 2, QVectorLayout::byNODES, 1, 4, 4, 1>();
39
41 2, QVectorLayout::byNODES, 2, 2, 2, 1>();
43 2, QVectorLayout::byNODES, 2, 2, 3, 1>();
45 2, QVectorLayout::byNODES, 2, 2, 4, 1>();
47 2, QVectorLayout::byNODES, 2, 2, 5, 1>();
49 2, QVectorLayout::byNODES, 2, 2, 6, 1>();
50
52 2, QVectorLayout::byNODES, 2, 3, 3, 1>();
54 2, QVectorLayout::byNODES, 2, 3, 4, 1>();
56 2, QVectorLayout::byNODES, 2, 3, 6, 1>();
57
59 2, QVectorLayout::byNODES, 2, 4, 3, 1>();
61 2, QVectorLayout::byNODES, 2, 4, 4, 1>();
63 2, QVectorLayout::byNODES, 2, 4, 5, 1>();
65 2, QVectorLayout::byNODES, 2, 4, 6, 1>();
67 2, QVectorLayout::byNODES, 2, 4, 7, 1>();
68
70 2, QVectorLayout::byNODES, 2, 5, 6, 1>();
71
72 // 3D
74 3, QVectorLayout::byNODES, 1, 2, 4, 1>();
76 3, QVectorLayout::byNODES, 1, 3, 3, 1>();
78 3, QVectorLayout::byNODES, 1, 3, 4, 1>();
80 3, QVectorLayout::byNODES, 1, 3, 6, 1>();
82 3, QVectorLayout::byNODES, 1, 4, 3, 1>();
84 3, QVectorLayout::byNODES, 1, 4, 4, 1>();
86 3, QVectorLayout::byNODES, 1, 4, 8, 1>();
87
89 3, QVectorLayout::byNODES, 2, 2, 2, 1>();
91 3, QVectorLayout::byNODES, 2, 2, 3, 1>();
93 3, QVectorLayout::byNODES, 2, 3, 4, 1>();
94
96 3, QVectorLayout::byNODES, 3, 2, 3, 1>();
98 3, QVectorLayout::byNODES, 3, 2, 4, 1>();
100 3, QVectorLayout::byNODES, 3, 2, 5, 1>();
102 3, QVectorLayout::byNODES, 3, 2, 6, 1>();
103
105 3, QVectorLayout::byNODES, 3, 3, 3, 1>();
107 3, QVectorLayout::byNODES, 3, 3, 4, 1>();
109 3, QVectorLayout::byNODES, 3, 3, 5, 1>();
111 3, QVectorLayout::byNODES, 3, 3, 6, 1>();
112
114 3, QVectorLayout::byNODES, 3, 4, 3, 1>();
116 3, QVectorLayout::byNODES, 3, 4, 4, 1>();
118 3, QVectorLayout::byNODES, 3, 4, 6, 1>();
120 3, QVectorLayout::byNODES, 3, 4, 7, 1>();
122 3, QVectorLayout::byNODES, 3, 4, 8, 1>();
123}
124
125} // namespace quadrature_interpolator
126} // namespace internal
127} // namespace mfem
static void AddTensorEvalSpecializations()
Adds specializations for TensorEvalKernels.