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

Method recvSelf

SRC/element/componentElement/ComponentElement2d.cpp:888–1015  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

886}
887
888int
889ComponentElement2d::recvSelf(int cTag, Channel &theChannel, FEM_ObjectBroker &theBroker)
890{
891 int res = 0;
892
893 static Vector data(24);
894
895 res += theChannel.recvVector(this->getDbTag(), cTag, data);
896 if (res < 0) {
897 opserr << "ComponentElement2d::recvSelf -- could not receive data Vector\n";
898 return res;
899 }
900
901 A = data(0);
902 E = data(1);
903 I = data(2);
904
905 // alpha = data(10);
906 // d = data(11);
907
908 alphaM = data(12);
909 betaK = data(13);
910 betaK0 = data(14);
911 betaKc = data(15);
912
913 rho = data(3);
914 cMass = (int)data(4);
915 this->setTag((int)data(5));
916 connectedExternalNodes(0) = (int)data(6);
917 connectedExternalNodes(1) = (int)data(7);
918
919 for (int i = 0; i < 4; i++)
920 uCommit(i) = data(20+i);
921
922 // Check if the CoordTransf is null; if so, get a new one
923 int crdTag = (int)data(8);
924 if (theCoordTransf == 0) {
925 theCoordTransf = theBroker.getNewCrdTransf(crdTag);
926 if (theCoordTransf == 0) {
927 opserr << "ComponentElement2d::recvSelf -- could not get a CrdTransf2d\n";
928 exit(-1);
929 }
930 }
931
932 // Check that the CoordTransf is of the right type; if not, delete
933 // the current one and get a new one of the right type
934 if (theCoordTransf->getClassTag() != crdTag) {
935 delete theCoordTransf;
936 theCoordTransf = theBroker.getNewCrdTransf(crdTag);
937 if (theCoordTransf == 0) {
938 opserr << "ComponentElement2d::recvSelf -- could not get a CrdTransf2d\n";
939 exit(-1);
940 }
941 }
942
943 // Now, receive the CoordTransf
944 theCoordTransf->setDbTag((int)data(9));
945 res += theCoordTransf->recvSelf(cTag, theChannel, theBroker);

Callers

nothing calls this directly

Calls 9

revertToLastCommitMethod · 0.95
exitFunction · 0.85
recvVectorMethod · 0.45
getDbTagMethod · 0.45
setTagMethod · 0.45
getNewCrdTransfMethod · 0.45
getClassTagMethod · 0.45
setDbTagMethod · 0.45

Tested by

no test coverage detected