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

Method analyze

SRC/analysis/analysis/EigenAnalysis.cpp:99–131  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

97
98
99int
100EigenAnalysis::analyze(int numModes)
101{
102 int result = 0;
103 Domain *the_Domain = this->getDomainPtr();
104
105 // check for change in Domain since last step. As a change can
106 // occur in a commit() in a domaindecomp with load balancing
107 // this must now be inside the loop
108 int stamp = the_Domain->hasDomainChanged();
109 if (stamp != domainStamp) {
110 domainStamp = stamp;
111 result = this->domainChanged();
112 if (result < 0) {
113 opserr << "EigenAnalysis::analyze() - domainChanged failed\n";
114 return -1;
115 }
116 }
117
118 result = theIntegrator->newStep();
119 if (result < 0) {
120 opserr << "EigenAnalysis::analyze() - integrator failed\n";
121 return -2;
122 }
123
124 result = theAlgorithm->solveCurrentStep(numModes);
125 if (result < 0) {
126 opserr << "EigenAnalysis::analyze() - algorithm failed\n";
127 return -3;
128 }
129
130 return 0;
131}
132
133int
134EigenAnalysis::domainChanged()

Callers

nothing calls this directly

Calls 5

domainChangedMethod · 0.95
getDomainPtrMethod · 0.45
hasDomainChangedMethod · 0.45
newStepMethod · 0.45
solveCurrentStepMethod · 0.45

Tested by

no test coverage detected