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

Method Print

SRC/element/forceBeamColumn/ForceBeamColumn3d.cpp:2705–2897  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2703 }
2704
2705 void
2706 ForceBeamColumn3d::Print(OPS_Stream &s, int flag)
2707 {
2708 // flags with negative values are used by GSA
2709 if (flag == -1) {
2710 int eleTag = this->getTag();
2711 s << "EL_BEAM\t" << eleTag << "\t";
2712 s << sections[0]->getTag() << "\t" << sections[numSections-1]->getTag();
2713 s << "\t" << connectedExternalNodes(0) << "\t" << connectedExternalNodes(1);
2714 s << "\t0\t0.0000000\n";
2715 }
2716
2717 // flags with negative values are used by GSA
2718 else if (flag < -1) {
2719 int eleTag = this->getTag();
2720 int counter = (flag +1) * -1;
2721 double P = Secommit(0);
2722 double MZ1 = Secommit(1);
2723 double MZ2 = Secommit(2);
2724 double MY1 = Secommit(3);
2725 double MY2 = Secommit(4);
2726 double L = crdTransf->getInitialLength();
2727 double VY = (MZ1+MZ2)/L;
2728 theVector(1) = VY;
2729 theVector(4) = -VY;
2730 double VZ = (MY1+MY2)/L;
2731 double T = Secommit(5);
2732
2733 double p0[5]; p0[0] = p0[1] = p0[2] = p0[3] = p0[4] = 0.0;
2734 if (numEleLoads > 0)
2735 this->computeReactions(p0);
2736
2737 s << "FORCE\t" << eleTag << "\t" << counter << "\t0";
2738 s << "\t" << -P+p0[0] << "\t" << VY+p0[1] << "\t" << -VZ+p0[3] << endln;
2739 s << "FORCE\t" << eleTag << "\t" << counter << "\t1";
2740 s << "\t" << P << ' ' << -VY+p0[2] << ' ' << VZ+p0[4] << endln;
2741 s << "MOMENT\t" << eleTag << "\t" << counter << "\t0";
2742 s << "\t" << -T << "\t" << MY1 << "\t" << MZ1 << endln;
2743 s << "MOMENT\t" << eleTag << "\t" << counter << "\t1";
2744 s << "\t" << T << ' ' << MY2 << ' ' << MZ2 << endln;
2745 }
2746
2747 // flag set to 2 used to print everything .. used for viewing data for UCSD renderer
2748 else if (flag == 2) {
2749 static Vector xAxis(3);
2750 static Vector yAxis(3);
2751 static Vector zAxis(3);
2752
2753
2754 crdTransf->getLocalAxes(xAxis, yAxis, zAxis);
2755
2756 s << "#ForceBeamColumn3D\n";
2757 s << "#LocalAxis " << xAxis(0) << " " << xAxis(1) << " " << xAxis(2);
2758 s << " " << yAxis(0) << " " << yAxis(1) << " " << yAxis(2) << " ";
2759 s << zAxis(0) << " " << zAxis(1) << " " << zAxis(2) << endln;
2760
2761 const Vector &node1Crd = theNodes[0]->getCrds();
2762 const Vector &node2Crd = theNodes[1]->getCrds();

Callers 1

Calls 12

computeReactionsMethod · 0.95
getInitialFlexibilityMethod · 0.95
exitFunction · 0.85
getCrdsMethod · 0.80
getBasicTrialDispMethod · 0.80
VectorClass · 0.50
getTagMethod · 0.45
getInitialLengthMethod · 0.45
getLocalAxesMethod · 0.45
getDispMethod · 0.45
addMatrixVectorMethod · 0.45

Tested by

no test coverage detected