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

Method addK_Force

SRC/analysis/fe_ele/FE_Element.cpp:837–871  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

835}
836
837void
838FE_Element::addK_Force(const Vector &disp, double fact)
839{
840 if (myEle != 0) {
841
842 // check for a quick return
843 if (fact == 0.0 || !myEle->isActive())
844 return;
845 if (myEle->isSubdomain() == false) {
846 // get the components we need out of the vector
847 // and place in a temporary vector
848 Vector tmp(numDOF);
849 for (int i=0; i<numDOF; i++) {
850 int loc = myID(i);
851 if (loc >= 0)
852 tmp(i) = disp(loc);
853 else
854 tmp(i) = 0.0;
855 }
856
857 if (theResidual->addMatrixVector(1.0, myEle->getTangentStiff(), tmp, fact) < 0){
858 opserr << "WARNING FE_Element::addK_Force() - ";
859 opserr << "- addMatrixVector returned error\n";
860 }
861 }
862 else {
863 opserr << "WARNING FE_Element::addK_Force() - ";
864 opserr << "- this should not be called on a Subdomain!\n";
865 }
866 }
867 else {
868 opserr << "WARNING FE_Element::addK_Force() - no Element *given ";
869 opserr << "- subclasses must provide implementation\n";
870 }
871}
872
873void
874FE_Element::addKg_Force(const Vector &disp, double fact)

Callers 2

formEleResidualMethod · 0.45
formEleResidualMethod · 0.45

Calls 4

getTangentStiffMethod · 0.80
isActiveMethod · 0.45
isSubdomainMethod · 0.45
addMatrixVectorMethod · 0.45

Tested by

no test coverage detected