PolyFEM
Loading...
Searching...
No Matches
auto_q_bases_2d_nodes.cpp
Go to the documentation of this file.
2
3
4namespace polyfem {
5namespace autogen {
6namespace {
7void q_0_nodes_2d(Eigen::MatrixXd &res) {
8 res.resize(1, 2); res <<
90.5, 0.5;
10}
11
12void q_1_nodes_2d(Eigen::MatrixXd &res) {
13 res.resize(4, 2); res <<
140, 0,
151, 0,
161, 1,
170, 1;
18}
19
20void q_2_nodes_2d(Eigen::MatrixXd &res) {
21 res.resize(9, 2); res <<
220, 0,
231, 0,
241, 1,
250, 1,
261.0/2.0, 0,
271, 1.0/2.0,
281.0/2.0, 1,
290, 1.0/2.0,
301.0/2.0, 1.0/2.0;
31}
32
33void q_3_nodes_2d(Eigen::MatrixXd &res) {
34 res.resize(16, 2); res <<
350, 0,
361, 0,
371, 1,
380, 1,
391.0/3.0, 0,
402.0/3.0, 0,
411, 1.0/3.0,
421, 2.0/3.0,
432.0/3.0, 1,
441.0/3.0, 1,
450, 2.0/3.0,
460, 1.0/3.0,
471.0/3.0, 1.0/3.0,
481.0/3.0, 2.0/3.0,
492.0/3.0, 1.0/3.0,
502.0/3.0, 2.0/3.0;
51}
52
53void q_m2_nodes_2d(Eigen::MatrixXd &res) {
54 res.resize(8, 2); res <<
550.0, 0.0,
561.0, 0.0,
571.0, 1.0,
580.0, 1.0,
590.5, 0.0,
601.0, 0.5,
610.5, 1.0,
620.0, 0.5;
63}
64
65}
66
67void q_nodes_2d(const int q, Eigen::MatrixXd &val){
68switch(q){
69 case 0: q_0_nodes_2d(val); break;
70 case 1: q_1_nodes_2d(val); break;
71 case 2: q_2_nodes_2d(val); break;
72 case 3: q_3_nodes_2d(val); break;
73 case -2: q_m2_nodes_2d(val); break;
74 default: assert(false);
75}}
76}}
double val
Definition Assembler.cpp:86
void q_nodes_2d(const int q, Eigen::MatrixXd &val)