102 for (
int i = 1; i <= 4; i++ ) {
103 gc.add(
domain->giveNode( snodes.at(i) )->giveCoordinates() );
108 for (
int i = 1; i <= 4; i++ ) {
109 int j = ( i ) % 4 + 1;
110 h1.beDifferenceOf(
domain->giveNode( snodes.at(i) )->giveCoordinates(),
gc);
111 h2.beDifferenceOf(
domain->giveNode( snodes.at(j) )->giveCoordinates(),
gc);
121 if ( nn.computeSquaredNorm() < 1.e-6 ) {
126 for (
int i = 1; i <= 3; i++ ) {
127 answer.
at(i, 3) = nn.at(i);
132 double test = fabs(fabs( nn.at(3) ) - 1.0);
133 if ( test < 1.e-5 ) {
134 h1.at(1) = answer.
at(1, 1) = 1.0;
135 h1.at(2) = answer.
at(2, 1) = 0.0;
137 h1.at(1) = answer.
at(1, 1) = answer.
at(2, 3);
138 h1.at(2) = answer.
at(2, 1) = -answer.
at(1, 3);
141 h1.at(3) = answer.
at(3, 1) = 0.0;
143 h2.beVectorProductOf(nn, h1);
144 for (
int i = 1; i <= 3; i++ ) {
145 answer.
at(i, 2) = h2.at(i);
oofem::oofegGraphicContext gc[OOFEG_LAST_LAYER]