BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
fn_intpoints_gauss_tet5.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_TET5_HPP
13#define BELFEM_FN_INTPOINTS_GAUSS_TET5_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 inline void
27 Vector <real> & aWeights,
28 Matrix <real> & aPoints )
29 {
30 real tBeta = 1.0 / 6.0;
31
32 aPoints.set_size( 4, 5 );
33
34 aPoints( 0, 0 ) = 0.25;
35 aPoints( 1, 0 ) = 0.25;
36 aPoints( 2, 0 ) = 0.25;
37
38 aPoints( 0, 1 ) = 0.5;
39 aPoints( 1, 1 ) = tBeta;
40 aPoints( 2, 1 ) = tBeta;
41
42 aPoints( 0, 2 ) = tBeta;
43 aPoints( 1, 2 ) = 0.5;
44 aPoints( 2, 2 ) = tBeta;
45
46 aPoints( 0, 3 ) = tBeta;
47 aPoints( 1, 3 ) = tBeta;
48 aPoints( 2, 3 ) = 0.5;
49
50 aPoints( 0, 4 ) = tBeta;
51 aPoints( 1, 4 ) = tBeta;
52 aPoints( 2, 4 ) = tBeta;;
53
54 for( uint k=0; k<5; ++k )
55 {
56 aPoints( 3, k ) = 1.0
57 - aPoints( 0, k )
58 - aPoints( 1, k )
59 - aPoints( 2, k );
60 }
61
62 aWeights.set_size( 5 );
63
64
65 aWeights( 0 ) = -4.0/30;
66 aWeights( 1 ) = 0.075;
67 aWeights( 2 ) = 0.075;
68 aWeights( 3 ) = 0.075;
69 aWeights( 4 ) = 0.075;
70
71 }
72// ----------------------------------------------------------------------------
73 } /* namespace integration */
74} /* namespace belfem */
75
76#endif //BELFEM_FN_INTPOINTS_GAUSS_TET5_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_tet5(Vector< real > &aWeights, Matrix< real > &aPoints)
Definition fn_intpoints_gauss_tet5.hpp:26
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int uint
Definition typedefs.hpp:30
double real
Definition typedefs.hpp:36