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

Method formUnbalance

DEVELOPER/core/TransientIntegrator.cpp:121–153  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

119
120
121int
122TransientIntegrator::formUnbalance(void) {
123 LinearSOE *theLinSOE = this->getLinearSOE();
124 AnalysisModel *theModel = this->getAnalysisModel();
125
126 if (theModel == 0 || theLinSOE == 0) {
127 opserr << "WARNING IncrementalIntegrator::formUnbalance -";
128 opserr << " no AnalysisModel or LinearSOE has been set\n";
129 return -1;
130 }
131
132 theLinSOE->zeroB();
133
134 // do modal damping
135 const Vector *modalValues = theModel->getModalDampingFactors();
136 if (modalValues != 0) {
137 this->addModalDampingForce(modalValues);
138 }
139
140 if (this->formElementResidual() < 0) {
141 opserr << "WARNING IncrementalIntegrator::formUnbalance ";
142 opserr << " - this->formElementResidual failed\n";
143 return -1;
144 }
145
146 if (this->formNodalUnbalance() < 0) {
147 opserr << "WARNING IncrementalIntegrator::formUnbalance ";
148 opserr << " - this->formNodalUnbalance failed\n";
149 return -2;
150 }
151
152 return 0;
153}
154
155int
156TransientIntegrator::formEleResidual(FE_Element *theEle)

Callers

nothing calls this directly

Calls 7

getLinearSOEMethod · 0.45
getAnalysisModelMethod · 0.45
zeroBMethod · 0.45
addModalDampingForceMethod · 0.45
formElementResidualMethod · 0.45
formNodalUnbalanceMethod · 0.45

Tested by

no test coverage detected