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

Method setDomain

SRC/element/componentElement/ComponentElement3d.cpp:324–380  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

322}
323
324void
325ComponentElement3d::setDomain(Domain *theDomain)
326{
327 if (theDomain == 0) {
328 opserr << "ComponentElement3d::setDomain -- Domain is null\n";
329 exit(-1);
330 }
331
332 theNodes[0] = theDomain->getNode(connectedExternalNodes(0));
333 theNodes[1] = theDomain->getNode(connectedExternalNodes(1));
334
335 if (theNodes[0] == 0) {
336 opserr << "ComponentElement3d::setDomain -- Node 1: " << connectedExternalNodes(0) << " does not exist\n";
337 exit(-1);
338 }
339
340 if (theNodes[1] == 0) {
341 opserr << "ComponentElement3d::setDomain -- Node 2: " << connectedExternalNodes(1) << " does not exist\n";
342 exit(-1);
343 }
344
345 int dofNd1 = theNodes[0]->getNumberDOF();
346 int dofNd2 = theNodes[1]->getNumberDOF();
347
348 if (dofNd1 != 6) {
349 opserr << "ComponentElement3d::setDomain -- Node 1: " << connectedExternalNodes(0)
350 << " has incorrect number of DOF\n";
351 exit(-1);
352 }
353
354 if (dofNd2 != 6) {
355 opserr << "ComponentElement3d::setDomain -- Node 2: " << connectedExternalNodes(1)
356 << " has incorrect number of DOF\n";
357 exit(-1);
358 }
359
360 this->DomainComponent::setDomain(theDomain);
361
362 if (theCoordTransf->initialize(theNodes[0], theNodes[1]) != 0) {
363 opserr << "ComponentElement3d::setDomain -- Error initializing coordinate transformation\n";
364 exit(-1);
365 }
366
367 double L = theCoordTransf->getInitialLength();
368
369 if (L == 0.0) {
370 opserr << "ComponentElement3d::setDomain -- Element has zero length\n";
371 exit(-1);
372 }
373
374 EAoverL = A*E/L; // EA/L
375 EIzoverL2 = 2.0*Iz*E/L; // 2EI/L
376 EIzoverL4 = 2.0*EIzoverL2; // 4EI/L
377 EIyoverL2 = 2.0*Iy*E/L; // 2EI/L
378 EIyoverL4 = 2.0*EIyoverL2; // 4EI/L
379 GJoverL = G*J/L;
380}
381

Callers

nothing calls this directly

Calls 5

exitFunction · 0.85
getNodeMethod · 0.45
getNumberDOFMethod · 0.45
initializeMethod · 0.45
getInitialLengthMethod · 0.45

Tested by

no test coverage detected