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

Method formUnbalance

SRC/analysis/integrator/HHTExplicit_TP.cpp:217–249  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

215
216
217int HHTExplicit_TP::formUnbalance()
218{
219 // get a pointer to the LinearSOE and the AnalysisModel
220 LinearSOE *theLinSOE = this->getLinearSOE();
221 AnalysisModel *theModel = this->getAnalysisModel();
222 if (theLinSOE == 0 || theModel == 0) {
223 opserr << "WARNING HHTExplicit_TP::formUnbalance() - ";
224 opserr << "no LinearSOE or AnalysisModel has been set\n";
225 return -1;
226 }
227
228 theLinSOE->setB(*Put);
229
230 // do modal damping
231 const Vector *modalValues = theModel->getModalDampingFactors();
232 if (modalValues != 0) {
233 this->addModalDampingForce(modalValues);
234 }
235
236 if (this->formElementResidual() < 0) {
237 opserr << "WARNING HHTExplicit_TP::formUnbalance() ";
238 opserr << " - this->formElementResidual failed\n";
239 return -2;
240 }
241
242 if (this->formNodalUnbalance() < 0) {
243 opserr << "WARNING HHTExplicit_TP::formUnbalance() ";
244 opserr << " - this->formNodalUnbalance failed\n";
245 return -3;
246 }
247
248 return 0;
249}
250
251
252int HHTExplicit_TP::formEleTangent(FE_Element *theEle)

Callers

nothing calls this directly

Calls 7

getLinearSOEMethod · 0.45
getAnalysisModelMethod · 0.45
setBMethod · 0.45
addModalDampingForceMethod · 0.45
formElementResidualMethod · 0.45
formNodalUnbalanceMethod · 0.45

Tested by

no test coverage detected