MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / calculate

Method calculate

SRC/element/shell/ASDShellQ4.cpp:217–234  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

215 double detJ = 0.0;
216
217 void calculate(const ASDShellQ4LocalCoordinateSystem& CS, const Matrix& dN)
218 {
219 // jacobian
220 J(0, 0) = dN(0, 0) * CS.X1() + dN(1, 0) * CS.X2() + dN(2, 0) * CS.X3() + dN(3, 0) * CS.X4();
221 J(1, 0) = dN(0, 0) * CS.Y1() + dN(1, 0) * CS.Y2() + dN(2, 0) * CS.Y3() + dN(3, 0) * CS.Y4();
222 J(0, 1) = dN(0, 1) * CS.X1() + dN(1, 1) * CS.X2() + dN(2, 1) * CS.X3() + dN(3, 1) * CS.X4();
223 J(1, 1) = dN(0, 1) * CS.Y1() + dN(1, 1) * CS.Y2() + dN(2, 1) * CS.Y3() + dN(3, 1) * CS.Y4();
224
225 // determinant
226 detJ = J(0, 0) * J(1, 1) - J(1, 0) * J(0, 1);
227 double mult = 1.0 / detJ;
228
229 // inv(jacobian)
230 invJ(0, 0) = J(1, 1) * mult;
231 invJ(1, 1) = J(0, 0) * mult;
232 invJ(0, 1) = -J(0, 1) * mult;
233 invJ(1, 0) = -J(1, 0) * mult;
234 }
235
236 };
237

Callers 3

ASDShellQ4.cppFile · 0.45
calculateAllMethod · 0.45
AGQIbeginGaussLoopMethod · 0.45

Calls 8

X4Method · 0.80
Y4Method · 0.80
X1Method · 0.45
X2Method · 0.45
X3Method · 0.45
Y1Method · 0.45
Y2Method · 0.45
Y3Method · 0.45

Tested by

no test coverage detected