| 649 | //print out element data |
| 650 | |
| 651 | void TwentyEightNodeBrickUP::Print( OPS_Stream &s, int flag ) |
| 652 | |
| 653 | { |
| 654 | |
| 655 | |
| 656 | |
| 657 | if (flag == 2) { |
| 658 | |
| 659 | |
| 660 | |
| 661 | s << "#20_8_BrickUP\n"; |
| 662 | |
| 663 | |
| 664 | |
| 665 | int i; |
| 666 | |
| 667 | const int numNodes = 20; |
| 668 | |
| 669 | const int nstress = 6 ; |
| 670 | |
| 671 | |
| 672 | |
| 673 | for (i=0; i<numNodes; i++) { |
| 674 | |
| 675 | const Vector &nodeCrd = nodePointers[i]->getCrds(); |
| 676 | |
| 677 | const Vector &nodeDisp = nodePointers[i]->getDisp(); |
| 678 | |
| 679 | s << "#NODE " << nodeCrd(0) << " " << nodeCrd(1) << " " << nodeCrd(2) |
| 680 | |
| 681 | << " " << nodeDisp(0) << " " << nodeDisp(1) << " " << nodeDisp(2) << endln; |
| 682 | |
| 683 | } |
| 684 | |
| 685 | |
| 686 | |
| 687 | // spit out the section location & invoke print on the scetion |
| 688 | |
| 689 | const int numMaterials = nintu; |
| 690 | |
| 691 | |
| 692 | |
| 693 | static Vector avgStress(7); |
| 694 | |
| 695 | static Vector avgStrain(nstress); |
| 696 | |
| 697 | avgStress.Zero(); |
| 698 | |
| 699 | avgStrain.Zero(); |
| 700 | |
| 701 | for (i=0; i<numMaterials; i++) { |
| 702 | |
| 703 | avgStress += materialPointers[i]->getStress(); |
| 704 | |
| 705 | avgStrain += materialPointers[i]->getStrain(); |
| 706 | |
| 707 | } |
| 708 | |