BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
fn_intpoints_gauss_penta16.hpp
Go to the documentation of this file.
1/*
2 * BELFEM -- The Berkeley Lab Finite Element Framework
3 * Copyright (c) 2026, The Regents of the University of California,
4 * through Lawrence Berkeley National Laboratory (subject to receipt of any required
5 * approvals from the U.S. Dept. of Energy). All rights reserved.
6 *
7 * Developers: Christian Messe, Gregory Giard
8 *
9 * See the top-level LICENSE file for the complete license and disclaimer.
10 */
11
12#ifndef BELFEM_FN_INTPOINTS_GAUSS_PENTA16_HPP
13#define BELFEM_FN_INTPOINTS_GAUSS_PENTA16_HPP
14
15#include "typedefs.hpp"
16#include "cl_Vector.hpp"
17#include "cl_Matrix.hpp"
18
19namespace belfem
20{
21 namespace integration
22 {
23// ----------------------------------------------------------------------------
24
25 // source: 10.1016/j.compfluid.2013.01.002
26 inline void
28 Vector< real > & aWeights,
29 Matrix< real > & aPoints )
30 {
31 aPoints.set_size( 3, 16 );
32
33 aPoints( 0, 0 ) = 0.33333333333333;
34 aPoints( 1, 0 ) = 0.33333333333333;
35 aPoints( 2, 0 ) = 0.00000000000000;
36
37 aPoints( 0, 1 ) = 0.02540007089951;
38 aPoints( 1, 1 ) = 0.48729996455025;
39 aPoints( 2, 1 ) = 0.00000000000000;
40
41 aPoints( 0, 2 ) = 0.48729996455025;
42 aPoints( 1, 2 ) = 0.48729996455025;
43 aPoints( 2, 2 ) = 0.00000000000000;
44
45 aPoints( 0, 3 ) = 0.48729996455025;
46 aPoints( 1, 3 ) = 0.02540007089951;
47 aPoints( 2, 3 ) = 0.00000000000000;
48
49 aPoints( 0, 4 ) = 0.10880379065926;
50 aPoints( 1, 4 ) = 0.44559810467037;
51 aPoints( 2, 4 ) = -0.87100293486544;
52
53 aPoints( 0, 5 ) = 0.10880379065926;
54 aPoints( 1, 5 ) = 0.44559810467037;
55 aPoints( 2, 5 ) = 0.87100293486544;
56
57 aPoints( 0, 6 ) = 0.44559810467037;
58 aPoints( 1, 6 ) = 0.44559810467037;
59 aPoints( 2, 6 ) = -0.87100293486544;
60
61 aPoints( 0, 7 ) = 0.44559810467037;
62 aPoints( 1, 7 ) = 0.44559810467037;
63 aPoints( 2, 7 ) = 0.87100293486544;
64
65 aPoints( 0, 8 ) = 0.44559810467037;
66 aPoints( 1, 8 ) = 0.10880379065926;
67 aPoints( 2, 8 ) = -0.87100293486544;
68
69 aPoints( 0, 9 ) = 0.44559810467037;
70 aPoints( 1, 9 ) = 0.10880379065926;
71 aPoints( 2, 9 ) = 0.87100293486544;
72
73 aPoints( 0, 10 ) = 0.79828210803458;
74 aPoints( 1, 10 ) = 0.10085894598271;
75 aPoints( 2, 10 ) = -0.57042698070516;
76
77 aPoints( 0, 11 ) = 0.79828210803458;
78 aPoints( 1, 11 ) = 0.10085894598271;
79 aPoints( 2, 11 ) = 0.57042698070516;
80
81 aPoints( 0, 12 ) = 0.10085894598271;
82 aPoints( 1, 12 ) = 0.10085894598271;
83 aPoints( 2, 12 ) = -0.57042698070516;
84
85 aPoints( 0, 13 ) = 0.10085894598271;
86 aPoints( 1, 13 ) = 0.10085894598271;
87 aPoints( 2, 13 ) = 0.57042698070516;
88
89 aPoints( 0, 14 ) = 0.10085894598271;
90 aPoints( 1, 14 ) = 0.79828210803458;
91 aPoints( 2, 14 ) = -0.57042698070516;
92
93 aPoints( 0, 15 ) = 0.10085894598271;
94 aPoints( 1, 15 ) = 0.79828210803458;
95 aPoints( 2, 15 ) = 0.57042698070516;
96
97 aWeights.set_size( 16 );
98 aWeights( 0 ) = 0.17786388898287;
99 aWeights( 1 ) = 0.05617751680707;
100 aWeights( 2 ) = 0.05617751680707;
101 aWeights( 3 ) = 0.05617751680707;
102 aWeights( 4 ) = 0.04641535532904;
103 aWeights( 5 ) = 0.04641535532904;
104 aWeights( 6 ) = 0.04641535532904;
105 aWeights( 7 ) = 0.04641535532904;
106 aWeights( 8 ) = 0.04641535532904;
107 aWeights( 9 ) = 0.04641535532904;
108 aWeights( 10 ) = 0.06251857143695;
109 aWeights( 11 ) = 0.06251857143695;
110 aWeights( 12 ) = 0.06251857143695;
111 aWeights( 13 ) = 0.06251857143695;
112 aWeights( 14 ) = 0.06251857143695;
113 aWeights( 15 ) = 0.06251857143695;
114 }
115// ----------------------------------------------------------------------------
116 } /* namespace integration */
117} /* namespace belfem */
118
119#endif //BELFEM_FN_INTPOINTS_GAUSS_PENTA16_HPP
void set_size(const size_t aNumRows, const size_t aNumCols)
Definition cl_AR_Matrix.hpp:186
void set_size(const size_t aNumRows)
change the size of the vector
Definition cl_AR_Vector.hpp:237
Definition fn_intpoints.cpp:576
void gauss_penta16(Vector< real > &aWeights, Matrix< real > &aPoints)
Definition fn_intpoints_gauss_penta16.hpp:27
USER GUIDES:
Definition cl_Capacitor.cpp:16