| 727 | |
| 728 | |
| 729 | void |
| 730 | TransformationDOF_Group::incrNodeAccel(const Vector &u) |
| 731 | { |
| 732 | // call base class method and return if no MP_Constraint |
| 733 | if (theMP == 0) { |
| 734 | this->DOF_Group::incrNodeAccel(u); |
| 735 | return; |
| 736 | } |
| 737 | |
| 738 | const ID &theID = this->getID(); |
| 739 | for (int i=0; i<modNumDOF; i++) { |
| 740 | int loc = theID(i); |
| 741 | if (loc >= 0) |
| 742 | (*modUnbalance)(i) = u(loc); |
| 743 | else |
| 744 | (*modUnbalance)(i) = 0.0; |
| 745 | } |
| 746 | Matrix *T = this->getT(); |
| 747 | |
| 748 | // *unbalance = (*T) * (*modUnbalance); |
| 749 | unbalance->addMatrixVector(0.0, *T, *modUnbalance, 1.0); |
| 750 | int numDOF = myNode->getNumberDOF(); |
| 751 | for (int i=0; i<numDOF; i++) { |
| 752 | if (theSPs[i] != 0) |
| 753 | (*unbalance)(i) = 0.0; |
| 754 | } |
| 755 | myNode->incrTrialAccel(*unbalance); |
| 756 | } |
| 757 | |
| 758 | const Vector & |
| 759 | TransformationDOF_Group::getTrialDisp(void) |
nothing calls this directly
no test coverage detected