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

Method domainChanged

SRC/analysis/integrator/PFEMIntegrator.cpp:537–662  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

535
536
537int PFEMIntegrator::domainChanged()
538{
539 AnalysisModel *myModel = this->getAnalysisModel();
540 LinearSOE *theLinSOE = this->getLinearSOE();
541 const Vector &x = theLinSOE->getX();
542 int size = x.Size();
543
544 // create the new Vector objects
545 if (Ut == 0 || Ut->Size() != size) {
546
547 // delete the old
548 if (Ut != 0)
549 delete Ut;
550 if (Utdot != 0)
551 delete Utdot;
552 if (Utdotdot != 0)
553 delete Utdotdot;
554 if (U != 0)
555 delete U;
556 if (Udot != 0)
557 delete Udot;
558 if (Udotdot != 0)
559 delete Udotdot;
560
561 // create the new
562 Ut = new Vector(size);
563 Utdot = new Vector(size);
564 Utdotdot = new Vector(size);
565 U = new Vector(size);
566 Udot = new Vector(size);
567 Udotdot = new Vector(size);
568 dVn.resize(size); dVn.Zero();
569 dUn.resize(size); dUn.Zero();
570 dAn.resize(size); dAn.Zero();
571
572 // check we obtained the new
573 if (Ut == 0 || Ut->Size() != size ||
574 Utdot == 0 || Utdot->Size() != size ||
575 Utdotdot == 0 || Utdotdot->Size() != size ||
576 U == 0 || U->Size() != size ||
577 Udot == 0 || Udot->Size() != size ||
578 Udotdot == 0 || Udotdot->Size() != size) {
579
580 opserr << "PFEMIntegrator::domainChanged - ran out of memory\n";
581
582 // delete the old
583 if (Ut != 0)
584 delete Ut;
585 if (Utdot != 0)
586 delete Utdot;
587 if (Utdotdot != 0)
588 delete Utdotdot;
589 if (U != 0)
590 delete U;
591 if (Udot != 0)
592 delete Udot;
593 if (Udotdot != 0)
594 delete Udotdot;

Callers

nothing calls this directly

Calls 10

getIDMethod · 0.80
getAnalysisModelMethod · 0.45
getLinearSOEMethod · 0.45
getXMethod · 0.45
SizeMethod · 0.45
resizeMethod · 0.45
ZeroMethod · 0.45
getDispSensitivityMethod · 0.45
getVelSensitivityMethod · 0.45
getAccSensitivityMethod · 0.45

Tested by

no test coverage detected