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

Method update

SRC/coordTransformation/CorotCrdTransf3d.cpp:348–552  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

346
347
348int
349CorotCrdTransf3d::update(void)
350{
351 int i, j, k;
352
353 /********* OLD REMO - REPLACED BELOW TO FIX BUG ***************
354 // determine global displacement increments from last iteration
355 const Vector &dispIncrI = nodeIPtr->getIncrDeltaDisp();
356 const Vector &dispIncrJ = nodeJPtr->getIncrDeltaDisp();
357
358 // get the iterative spins dAlphaI and dAlphaJ
359 // (rotational displacement increments at both nodes)
360
361 static Vector dAlphaI(3);
362 static Vector dAlphaJ(3);
363
364
365 for (k = 0; k < 3; k++)
366 {
367 dAlphaI(k) = dispIncrI(k+3);
368 dAlphaJ(k) = dispIncrJ(k+3);
369 }
370 **************************************************************/
371
372 // determine global displacement increments from last iteration
373 static Vector dispI(6);
374 static Vector dispJ(6);
375 dispI = nodeIPtr->getTrialDisp();
376 dispJ = nodeJPtr->getTrialDisp();
377
378 if (nodeIInitialDisp != 0) {
379 for (int j=0; j<6; j++)
380 dispI(j) -= nodeIInitialDisp[j];
381 }
382
383 if (nodeJInitialDisp != 0) {
384 for (int j=0; j<6; j++)
385 dispJ(j) -= nodeJInitialDisp[j];
386 }
387
388 // get the iterative spins dAlphaI and dAlphaJ
389 // (rotational displacement increments at both nodes)
390
391 static Vector dAlphaI(3);
392 static Vector dAlphaJ(3);
393
394 for (k = 0; k < 3; k++) {
395 dAlphaI(k) = dispI(k+3) - alphaI(k);
396 dAlphaJ(k) = dispJ(k+3) - alphaJ(k);
397 alphaI(k) = dispI(k+3);
398 alphaJ(k) = dispJ(k+3);
399 }
400
401 /************** END OF REPLACEMENT **************************/
402
403 // update the nodal triads TI and RJ using quaternions
404 static Vector dAlphaIq(4);
405 static Vector dAlphaJq(4);

Callers 3

revertToLastCommitMethod · 0.95
revertToStartMethod · 0.95

Calls 6

getCrdsMethod · 0.80
ZeroMethod · 0.45
addMatrixProductMethod · 0.45
addVectorMethod · 0.45
NormMethod · 0.45

Tested by

no test coverage detected