58LTRSpaceBoundaryPlate :: giveDofManDofIDMask(
int inode,
IntArray &answer)
const
61 answer = { E_xx, E_xy, E_yx, E_yy, E_zx, E_zy, K_xx, K_yy, K_xy, K_yx };
63 answer = { D_u, D_v, D_w };
73 unitCellSize.
at(1) = this->
giveNode(5)->giveCoordinate(1);
74 unitCellSize.
at(2) = this->
giveNode(5)->giveCoordinate(2);
76 IntArray switches1, switches2, switches3, switches4;
83 for (
int i = 1; i <= 4; i++ ) {
84 w.
at(i) = this->
giveNode(i)->giveCoordinate(3);
93 k1.
at(1, 1) = unitCellSize.
at(1) * switches1.
at(1);
94 k1.
at(1, 2) = unitCellSize.
at(2) * switches1.
at(2);
95 k1.
at(2, 3) = unitCellSize.
at(1) * switches1.
at(1);
96 k1.
at(2, 4) = unitCellSize.
at(2) * switches1.
at(2);
97 k1.
at(3, 5) = unitCellSize.
at(1) * switches1.
at(1);
98 k1.
at(3, 6) = unitCellSize.
at(2) * switches1.
at(2);
99 k1.
at(1, 7) = -w.
at(1) * unitCellSize.
at(1) * switches1.
at(1);
100 k1.
at(2, 8) = -w.
at(1) * unitCellSize.
at(2) * switches1.
at(2);
101 k1.
at(1, 9) = -w.
at(1) * unitCellSize.
at(2) * switches1.
at(2);
102 k1.
at(2, 10) = -w.
at(1) * unitCellSize.
at(1) * switches1.
at(1);
104 k2.
at(1, 1) = unitCellSize.
at(1) * switches2.
at(1);
105 k2.
at(1, 2) = unitCellSize.
at(2) * switches2.
at(2);
106 k2.
at(2, 3) = unitCellSize.
at(1) * switches2.
at(1);
107 k2.
at(2, 4) = unitCellSize.
at(2) * switches2.
at(2);
108 k2.
at(3, 5) = unitCellSize.
at(1) * switches2.
at(1);
109 k2.
at(3, 6) = unitCellSize.
at(2) * switches2.
at(2);
110 k2.
at(1, 7) = -w.
at(2) * unitCellSize.
at(1) * switches2.
at(1);
111 k2.
at(2, 8) = -w.
at(2) * unitCellSize.
at(2) * switches2.
at(2);
112 k2.
at(1, 9) = -w.
at(2) * unitCellSize.
at(2) * switches2.
at(2);
113 k2.
at(2, 10) = -w.
at(2) * unitCellSize.
at(1) * switches2.
at(1);
115 k3.
at(1, 1) = unitCellSize.
at(1) * switches3.
at(1);
116 k3.
at(1, 2) = unitCellSize.
at(2) * switches3.
at(2);
117 k3.
at(2, 3) = unitCellSize.
at(1) * switches3.
at(1);
118 k3.
at(2, 4) = unitCellSize.
at(2) * switches3.
at(2);
119 k3.
at(3, 5) = unitCellSize.
at(1) * switches3.
at(1);
120 k3.
at(3, 6) = unitCellSize.
at(2) * switches3.
at(2);
121 k3.
at(1, 7) = -w.
at(3) * unitCellSize.
at(1) * switches3.
at(1);
122 k3.
at(2, 8) = -w.
at(3) * unitCellSize.
at(2) * switches3.
at(2);
123 k3.
at(1, 9) = -w.
at(3) * unitCellSize.
at(2) * switches3.
at(2);
124 k3.
at(2, 10) = -w.
at(3) * unitCellSize.
at(1) * switches3.
at(1);
126 k4.
at(1, 1) = unitCellSize.
at(1) * switches4.
at(1);
127 k4.
at(1, 2) = unitCellSize.
at(2) * switches4.
at(2);
128 k4.
at(2, 3) = unitCellSize.
at(1) * switches4.
at(1);
129 k4.
at(2, 4) = unitCellSize.
at(2) * switches4.
at(2);
130 k4.
at(3, 5) = unitCellSize.
at(1) * switches4.
at(1);
131 k4.
at(3, 6) = unitCellSize.
at(2) * switches4.
at(2);
132 k4.
at(1, 7) = -w.
at(4) * unitCellSize.
at(1) * switches4.
at(1);
133 k4.
at(2, 8) = -w.
at(4) * unitCellSize.
at(2) * switches4.
at(2);
134 k4.
at(1, 9) = -w.
at(4) * unitCellSize.
at(2) * switches4.
at(2);
135 k4.
at(2, 10) = -w.
at(4) * unitCellSize.
at(1) * switches4.
at(1);
141 answer.
assemble(k1, { 1, 2, 3 }, { 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 });
142 answer.
assemble(k2, { 4, 5, 6 }, { 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 });
143 answer.
assemble(k3, { 7, 8, 9 }, { 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 });
144 answer.
assemble(k4, { 10, 11, 12 }, { 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 });