30 #ifndef ElasticSectionPhysicalProperties_h 31 #define ElasticSectionPhysicalProperties_h 33 #include "PhysicalProperties.h" 40 template<
class ElasticSection>
49 void Print(std::ostream &s,
int)
const;
53 template<
class ElasticSection>
57 const ElasticSection section;
58 for(
size_t i= 0;i<nMat;i++)
59 this->theMaterial[i]= dynamic_cast<ElasticSection *>(section.getCopy());
63 template <
class ElasticSection>
66 const size_t numMaterials= this->theMaterial.size();
68 for(
size_t i=0; i<numMaterials; i++)
70 if(this->theMaterial[i]->getRho() != 0.0)
80 template <
class ElasticSection>
83 const size_t numMaterials= this->theMaterial.size();
84 Vector retval(numMaterials);
85 for(
size_t i=0; i<numMaterials; i++)
86 retval[i]= this->theMaterial[i]->getRho();
91 template <
class ElasticSection>
96 s << this->getClassName()
97 <<
"\t" << this->theMaterial.size() <<
"\t" << std::endl;
101 int counter= (flag + 1) * -1;
102 for(
size_t i= 0;i < this->theMaterial.size();i++)
104 const Vector &stress= this->theMaterial[i]->getStressResultant();
105 s <<
"STRESS\t" << counter <<
"\t" << i <<
"\tTOP";
106 for(
int j=0; j<6; j++)
107 s <<
"\t" << stress(j);
114 s <<
"Material Information : \n ";
115 this->theMaterial[0]->Print( s, flag );
Base class for element's physical properties.
Definition: PhysicalProperties.h:48
Float vector abstraction.
Definition: Vector.h:94
Three-dimensional elastic section physical properties.
Definition: ElasticSectionPhysicalProperties.h:41
ElasticSectionPhysicalProperties(const size_t &nMat=0)
Constructor.
Definition: ElasticSectionPhysicalProperties.h:54
bool haveRho(void) const
check to see if have mass
Definition: ElasticSectionPhysicalProperties.h:64
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
Vector getRhoi(void) const
Returns densities for each position.
Definition: ElasticSectionPhysicalProperties.h:81
void Print(std::ostream &s, int) const
print out element data
Definition: ElasticSectionPhysicalProperties.h:92