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

Method formUnbalance

SRC/analysis/integrator/HHTGeneralizedExplicit_TP.cpp:220–252  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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