58LTRSpaceBoundaryVoigt :: giveDofManDofIDMask(
int inode,
IntArray &answer)
const
61 answer = { E_xx, E_yy, E_zz, G_yz, G_xz, G_xy };
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);
75 unitCellSize.
at(3) = this->
giveNode(5)->giveCoordinate(3);
77 IntArray switches1, switches2, switches3, switches4;
83 FloatMatrix k21_node1, k22_node1, k21_node2, k22_node2, k21_node3, k22_node3, k21_node4, k22_node4;
93 k21_node1.
at(1, 1) = unitCellSize.
at(1) * switches1.
at(1);
94 k21_node1.
at(2, 2) = unitCellSize.
at(2) * switches1.
at(2);
95 k21_node1.
at(3, 3) = unitCellSize.
at(3) * switches1.
at(3);
97 k22_node1.
at(1, 2) = unitCellSize.
at(3) * switches1.
at(3);
98 k22_node1.
at(1, 3) = unitCellSize.
at(2) * switches1.
at(2);
99 k22_node1.
at(2, 1) = unitCellSize.
at(3) * switches1.
at(3);
101 k21_node2.
at(1, 1) = unitCellSize.
at(1) * switches2.
at(1);
102 k21_node2.
at(2, 2) = unitCellSize.
at(2) * switches2.
at(2);
103 k21_node2.
at(3, 3) = unitCellSize.
at(3) * switches2.
at(3);
105 k22_node2.
at(1, 2) = unitCellSize.
at(3) * switches2.
at(3);
106 k22_node2.
at(1, 3) = unitCellSize.
at(2) * switches2.
at(2);
107 k22_node2.
at(2, 1) = unitCellSize.
at(3) * switches2.
at(3);
109 k21_node3.
at(1, 1) = unitCellSize.
at(1) * switches3.
at(1);
110 k21_node3.
at(2, 2) = unitCellSize.
at(2) * switches3.
at(2);
111 k21_node3.
at(3, 3) = unitCellSize.
at(3) * switches3.
at(3);
113 k22_node3.
at(1, 2) = unitCellSize.
at(3) * switches3.
at(3);
114 k22_node3.
at(1, 3) = unitCellSize.
at(2) * switches3.
at(2);
115 k22_node3.
at(2, 1) = unitCellSize.
at(3) * switches3.
at(3);
117 k21_node4.
at(1, 1) = unitCellSize.
at(1) * switches4.
at(1);
118 k21_node4.
at(2, 2) = unitCellSize.
at(2) * switches4.
at(2);
119 k21_node4.
at(3, 3) = unitCellSize.
at(3) * switches4.
at(3);
121 k22_node4.
at(1, 2) = unitCellSize.
at(3) * switches4.
at(3);
122 k22_node4.
at(1, 3) = unitCellSize.
at(2) * switches4.
at(2);
123 k22_node4.
at(2, 1) = unitCellSize.
at(3) * switches4.
at(3);
129 answer.
assemble(k21_node1, { 1, 2, 3 }, { 13, 14, 15 });
130 answer.
assemble(k22_node1, { 1, 2, 3 }, { 16, 17, 18 });
131 answer.
assemble(k21_node2, { 4, 5, 6 }, { 13, 14, 15 });
132 answer.
assemble(k22_node2, { 4, 5, 6 }, { 16, 17, 18 });
133 answer.
assemble(k21_node3, { 7, 8, 9 }, { 13, 14, 15 });
134 answer.
assemble(k22_node3, { 7, 8, 9 }, { 16, 17, 18 });
135 answer.
assemble(k21_node4, { 10, 11, 12 }, { 13, 14, 15 });
136 answer.
assemble(k22_node4, { 10, 11, 12 }, { 16, 17, 18 });