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

Method formResidAndTangent

SRC/element/shell/ShellDKGT.cpp:1272–1638  ·  view source on GitHub ↗

form residual and tangent

Source from the content-addressed store, hash-verified

1270
1271//form residual and tangent
1272void
1273ShellDKGT::formResidAndTangent( int tang_flag )
1274{
1275 //
1276 //six(6) nodal dof's ordered:
1277 //-----------
1278 //| u1 | <---- plate membrane
1279 //| u2 |
1280 //|----------|
1281 //| w = u3 | <----plate bending
1282 //| theta1 |
1283 //| theta2 |
1284 //|----------|
1285 //| theta3 | <- drill (tran from membrane)
1286 //|----------|
1287
1288 static const int ndf = 6; //two membrane + 3 moment +drill
1289
1290 static const int nstress = 8; //3 membrane , 3 moment, 2 shear
1291
1292 static const int ngauss = 4;
1293
1294 static const int numnodes = 3;
1295
1296 int i,j,k,p,q;
1297 int jj,kk;
1298
1299 int p1,q1;
1300
1301 int p2,q2;
1302
1303 int success;
1304
1305 double volume = 0.0;
1306
1307 static double xsj; //determinant jacobian matrix
1308
1309 static double dvol[ngauss]; //volume element
1310
1311 static Vector strain(nstress); //strain
1312
1313 static double shp[3][numnodes]; //shape function 2d at a gauss point
1314
1315 static double shpDrill[4][numnodes]; //shape function drilling dof at a gauss point
1316
1317 static double shpBend[6][9]; //shape function - bending part at a gauss point
1318
1319 static Vector residJ(ndf); //nodeJ residual, global coordinates
1320
1321 static Matrix stiffJK(ndf,ndf);//nodeJK stiffness, global coordinates
1322
1323 static Vector residJlocal(ndf); //nodeJ residual, local coordinates
1324
1325 static Matrix stiffJKlocal(ndf,ndf); //nodeJK stiffness, local coordinates
1326
1327 static Matrix stiffJK1(ndf,ndf);
1328
1329 static Matrix stiffJK2(ndf,ndf);

Callers

nothing calls this directly

Calls 8

ZeroMethod · 0.45
addMatrixProductMethod · 0.45
addMatrixVectorMethod · 0.45
updateMethod · 0.45
getSectionTangentMethod · 0.45
getRhoMethod · 0.45

Tested by

no test coverage detected