xc
|
Base class for cross sections with linear elastic material. More...
#include <BaseElasticSection.h>
Public Member Functions | |
BaseElasticSection (int tag, int classTag, const size_t &dim, MaterialHandler *mat_ldr=nullptr) | |
Constructor. More... | |
int | commitState (void) |
Commits the section state. | |
int | revertToLastCommit (void) |
Revert to the last committed state. | |
int | revertToStart (void) |
Revert to the initial state. | |
virtual void | sectionGeometry (const std::string &)=0 |
int | setTrialSectionDeformation (const Vector &) |
Set the trial (generalized) deformation of the section. More... | |
Vector & | getTrialSectionDeformation (void) |
int | setInitialSectionDeformation (const Vector &) |
Set the initial (generalized) deformation of the section. | |
const Vector & | getInitialSectionDeformation (void) const |
void | zeroInitialSectionDeformation (void) |
const Vector & | getSectionDeformation (void) const |
Returns the current value of the (generalized) deformation. | |
virtual double | getRho (void) const =0 |
Returns the density (mass per unit length/area/volume) of the section. More... | |
virtual void | setRho (const double &)=0 |
void | Print (std::ostream &s, int flag=0) const |
Printing. | |
Public Member Functions inherited from XC::PrismaticBarCrossSection | |
PrismaticBarCrossSection (int tag, int classTag, MaterialHandler *mat_ldr=nullptr) | |
Constructor. | |
int | setTrialDeformationPlane (const DeformationPlane &) |
Sets the deformation plane of the section. | |
int | setInitialDeformationPlane (const DeformationPlane &) |
Sets the plane that defines initial strains of the section. | |
virtual const Vector & | getGeneralizedStrainVector (const DeformationPlane &) const |
Return the generalized strains vector that corresponds to the given deformation plane. More... | |
DeformationPlane | getDeformationPlane (void) const |
Returns the deformation plane of this section. | |
DeformationPlane | getInitialDeformationPlane (void) const |
Returns initial strain plane. | |
virtual double | getStrain (const double &y, const double &z=0) const |
Returns strain at position being passed as parameter. | |
double | getN (void) const |
Returns internal axial force. | |
double | getMy (void) const |
Returns internal bending moment around y axis. | |
double | getMz (void) const |
Returns internal bending moment around z axis. | |
virtual double | getCenterOfMassY (void) const |
Returns the y coordinate of the center of gravity of the cross-section. | |
virtual double | getCenterOfMassZ (void) const |
Returns the z coordinate of the center of gravity of the cross-section. | |
Pos2d | getCenterOfMass (void) const |
Returns the position of the cross-section centroid. | |
Line2d | getNeutralAxis (void) const |
Returns the neutral axis. | |
Line2d | getInternalForcesAxis (void) const |
Returns the axis that is aligned with the cross-section internal forces. More... | |
Pos2d | getPointOnTensionedHalfPlane (void) const |
Returns (if possible) a point in the tensioned region. | |
Pos2d | getPointOnCompressedHalfPlane (void) const |
Returns (if possible) a point in the compressed region. | |
HalfPlane2d | getTensionedHalfPlane (void) const |
Returns the tensioned half-plane. | |
HalfPlane2d | getTensionedHalfPlane (const Line2d &) const |
Returns the tensioned half-plane defined by the edge being passed as parameter. More... | |
HalfPlane2d | getCompressedHalfPlane (void) const |
Returns the compressed half-plane. | |
HalfPlane2d | getCompressedHalfPlane (const Line2d &) const |
Returns the compressed half-plane defined by the edge being passed as parameter. More... | |
const double & | EA (void) const |
Returns the section axial stiffness. | |
const double & | EIz (void) const |
Returns the bending stiffness of the cross-section en torno the z axis. | |
const double & | EIy (void) const |
Returns the bending stiffness of the cross-section en torno the y axis. | |
const double & | EIyz (void) const |
Returns the product of inertia multiplied by the Young modulus. | |
const double & | GJ (void) const |
Returns the torsional stiffness. | |
double | getTheta (void) const |
Returns the angle that defines the principal axis of inertia. | |
double | getEI1 (void) const |
Returns the bending stiffness around the major principal axis of inertia. More... | |
double | getEI2 (void) const |
Returns the bending stiffness en torno al principal axis of inertia menor. More... | |
PrincipalAxesOfInertia2D | getInertiaAxes (void) const |
Returns the principal axes of inertia of the cross-section. | |
Vector2d | getAxis1VDir (void) const |
Returns the vector of the principal axis I. | |
Vector2d | getVDirStrongAxis (void) const |
Returns the vector of the principal axis I. | |
Vector2d | getAxis2VDir (void) const |
Returns the vector of the principal axis II. | |
Vector2d | getVDirWeakAxis (void) const |
Returns the vector of the principal axis II. | |
bool | hayAxil (const double &tol=1e-4) const |
Returns true if the section is subjected to an axial force. | |
bool | isSubjectedToShear (const double &tol=1e-4) const |
Returns true if the section is subjected to a shearing force. | |
bool | isSubjectedToBending (const double &tol=1e-4) const |
Returns true if the section is subjected to a bending moment. | |
bool | hayTorsor (const double &tol=1e-4) const |
Returns true if the section is subjected to a torsional force. | |
Public Member Functions inherited from XC::SectionForceDeformation | |
SectionForceDeformation (int tag, int classTag, MaterialHandler *mat_ldr=nullptr) | |
Constructor. More... | |
MaterialHandler * | getMaterialHandler (void) |
virtual int | incrementInitialSectionDeformation (const Vector &) |
Adds to the generalized initial strains vector inicial the vector being passed as parameter. More... | |
void | setInitialGeneralizedStrain (const Vector &iS) |
const Vector & | getInitialGeneralizedStrain (void) const |
Vector | getTrialSectionDeformation (void) const |
Return the trial section deformation vector, \(e_{trial}\). More... | |
double | getSectionDeformation (const int &) const |
Returns 'defID' component of the generalized strain vector. | |
double | getSectionDeformationByName (const std::string &) const |
Returns section's trial deformation component by its name. | |
virtual const Vector & | getStressResultant (void) const =0 |
Return the section resisting forces, \(ssec\), at the current trial state. More... | |
double | getStressResultant (const int &) const |
Returns 'defID' component of the generalized stress vector. | |
double | getStressResultantByName (const std::string &) const |
Returns the esfuerzos de la placa. | |
virtual const Matrix & | getSectionTangent (void) const =0 |
Return the section tangent stiffness matrix, \(ksec\), at the current trial state. More... | |
virtual const Matrix & | getInitialTangent (void) const =0 |
virtual const Matrix & | getSectionFlexibility (void) const |
Returns the tangent flexibility matrix of the section. More... | |
virtual const Matrix & | getInitialFlexibility (void) const |
Returns the initial flexibility matrix of the section. | |
const Vector & | getGeneralizedStress (void) const |
Return generalized stress. | |
virtual const Vector & | getGeneralizedStrain (void) const |
Return generalized strain. | |
virtual Matrix | getValues (const std::string &, bool silent=false) const |
Return values of internal forces, deformations... More... | |
virtual double | getLinearRho (void) const |
Returns the mass per unit length of the section. | |
virtual double | getArealRho (void) const |
Returns the mass per unit area of the section. | |
virtual double | getVolumetricRho (void) const |
Returns the mass per unit volume of the section. | |
virtual SectionForceDeformation * | getCopy (void) const =0 |
Virtual constructor. | |
virtual const ResponseId & | getResponseType (void) const =0 |
Return the ordering and type of response quantities returned by this object. More... | |
std::string | getResponseTypeString (void) const |
Comma separated internal forces names to with the section contributes with stiffness. | |
virtual int | getOrder (void) const =0 |
Return the number of response quantities provided by the section. | |
virtual Response * | setResponse (const std::vector< std::string > &argv, Information &info) |
Returns the respuesta of the section. | |
virtual int | getResponse (int responseID, Information &info) |
Returns section response. | |
virtual int | setParameter (const std::vector< std::string > &argv, Parameter ¶m) |
Sets the value param to the parameter argv . | |
virtual int | updateParameter (int parameterID, Information &info) |
Updates the parameter identified by parameterID with info . | |
virtual int | activateParameter (int parameterID) |
Activates the parameter identified by parameterID . | |
virtual const Vector & | getStressResultantSensitivity (int gradNumber, bool conditional) |
virtual const Vector & | getSectionDeformationSensitivity (int gradNumber) |
virtual const Matrix & | getSectionTangentSensitivity (int gradNumber) |
virtual const Matrix & | getSectionFlexibilitySensitivity (int gradIndex) |
virtual const Matrix & | getInitialTangentSensitivity (int gradIndex) |
virtual const Matrix & | getInitialFlexibilitySensitivity (int gradIndex) |
virtual double | getRhoSensitivity (int gradNumber) |
virtual int | commitSensitivity (const Vector §ionDeformationGradient, int gradNumber, int numGrads) |
virtual double | getEnergy (void) const |
Return the energy stored in the material. | |
Public Member Functions inherited from XC::Material | |
Material (int tag, int classTag) | |
Constructor. More... | |
const MaterialHandler * | getMaterialHandler (void) const |
Returns (if possible) a pointer to the material handler (owner). | |
MaterialHandler * | getMaterialHandler (void) |
Returns a pointer to the material handler (if possible). | |
const Domain * | getDomain (void) const |
Returns (if possible) a pointer to the material handler (owner). | |
Domain * | getDomain (void) |
Returns a pointer to the material handler (if possible). | |
std::string | getName (void) const |
Returns the name of the material. | |
const Material * | getMaterialByName (const std::string &) const |
virtual int | setVariable (const std::string &argv) |
virtual int | getVariable (int variableID, double &info) |
virtual void | update (void) |
Update state variables for the material according to the new values of the parameters. More... | |
virtual void | incrementInitialGeneralizedStrain (const Vector &) |
Increments generalized strain. More... | |
virtual void | zeroInitialGeneralizedStrain (void) |
zeroes initial generalized strain | |
Public Member Functions inherited from XC::TaggedObject | |
TaggedObject (int tag, CommandEntity *owr=nullptr) | |
Constructor. More... | |
void | assignTag (int newTag) |
Set tag (to be called from Python interface). | |
int | getTag (void) const |
Returns the tag associated with the object. | |
boost::python::dict | getPyDict (void) const |
Return a Python dictionary with the object members values. | |
void | setPyDict (const boost::python::dict &) |
Set the values of the object members from a Python dictionary. | |
Public Member Functions inherited from CommandEntity | |
CommandEntity (CommandEntity *owr=nullptr) | |
Default constructor. | |
CommandEntity * | Owner (void) |
Return a pointer to the object owner. | |
const CommandEntity * | Owner (void) const |
Return un puntero al objeto propietario de ESTE. | |
const StandardOutputWrapper & | getStandardOutputWrapper (void) const |
Return the regular output stream wrapper. | |
StandardOutputWrapper & | getStandardOutputWrapper (void) |
Return the regular output stream wrapper. | |
const std::string & | getLogFileName (void) const |
Returns log file name. | |
void | setLogFileName (const std::string &) |
Sets log file name. | |
const std::string & | getErrFileName (void) const |
Returns err file name. | |
void | setErrFileName (const std::string &) |
Sets error file name. | |
const std::string & | getOutputFileName (void) const |
Returns regular output file name. | |
void | setOutputFileName (const std::string &) |
Sets regular output file name. | |
boost::python::object | evalPy (boost::python::object dict, const std::string &) |
Return the Python object that results from evaluating the argument. | |
boost::python::object | execPy (boost::python::object dict, const std::string &) |
Return the Python objects that results from executing the code in the string argument. | |
boost::python::object | execFilePy (boost::python::object dict, const std::string &) |
Return the Python object that results from executing the code in the file. | |
Public Member Functions inherited from EntityWithProperties | |
EntityWithProperties (EntityWithProperties *owr=nullptr) | |
Default constructor. | |
virtual bool | operator== (const EntityWithProperties &) const |
Comparison operator. | |
void | clearPyProps (void) |
Clear python properties map. | |
bool | hasPyProp (const std::string &) |
Returns true if property exists. | |
boost::python::object | getPyProp (const std::string &str) |
Return the Python object with the name being passed as parameter. | |
void | setPyProp (std::string str, boost::python::object val) |
Sets/appends a value tho the Python object's dictionary. | |
void | copyPropsFrom (const EntityWithProperties &) |
Copy the properties from the argument. | |
boost::python::list | getPropNames (void) const |
Return the names of the object properties weightings. | |
const PythonDict & | getPropertiesDict (void) const |
Return a std::map container with the properties of the object. | |
Public Member Functions inherited from EntityWithOwner | |
EntityWithOwner (EntityWithOwner *owr=nullptr) | |
Default constructor. | |
EntityWithOwner (const EntityWithOwner &) | |
Copy constructor. | |
EntityWithOwner & | operator= (const EntityWithOwner &) |
Assignment operator. | |
virtual bool | operator== (const EntityWithOwner &) const |
Comparison operator. | |
virtual | ~EntityWithOwner (void) |
Virtual destructor. | |
virtual std::string | getClassName (void) const |
Returns demangled class name. | |
void | set_owner (EntityWithOwner *owr) |
Assigns the owner of the object. | |
EntityWithOwner * | Owner (void) |
const EntityWithOwner * | Owner (void) const |
Public Member Functions inherited from XC::MovableObject | |
MovableObject (int classTag, int dbTag) | |
Constructor. More... | |
MovableObject (int classTag) | |
Constructor. More... | |
MovableObject (const MovableObject &) | |
Copy constructor. Doesn't copy the dbTag. | |
MovableObject & | operator= (const MovableObject &) |
Assignment operator. Doesn't copy the dbTag. | |
int | getClassTag (void) const |
Return the class identifier. | |
int | getDbTag (void) const |
Return the object identifier in the database. | |
int | getDbTag (Communicator &) |
Return the object identifier in the database. | |
void | setDbTag (int dbTag) |
Sets the object identifier in the database. | |
void | setDbTag (Communicator &) |
Sets the object identifier in the database if not already set. More... | |
virtual int | sendSelf (Communicator &comm)=0 |
Send the object. More... | |
virtual int | recvSelf (const Communicator &comm)=0 |
Receive the object. More... | |
virtual int | setVariable (const std::string &variable, Information &) |
Set the value of the variable idenfified by var . | |
virtual int | getVariable (const std::string &variable, Information &) |
Return the value of the variable idenfified by var . | |
Public Member Functions inherited from XC::DistributedBase | |
DistributedBase (void) | |
Constructor. | |
virtual | ~DistributedBase (void) |
Destructor. | |
virtual DbTagData & | getDbTagData (void) const |
Returns a vector to store class dbTags. | |
const int & | getDbTagDataPos (const int &i) const |
Returns the data at the i-th position. | |
void | setDbTagDataPos (const int &i, const int &v) |
Sets the data at the i-th position. | |
void | inicComm (const int &dataSize) const |
Initializes communication. | |
Protected Member Functions | |
int | sendData (Communicator &) |
Send object members through the communicator argument. | |
int | recvData (const Communicator &) |
Receives object members through the communicator argument. | |
Protected Member Functions inherited from XC::SectionForceDeformation | |
int | sendData (Communicator &comm) |
Send object members through the communicator argument. | |
int | recvData (const Communicator &comm) |
Receives object members through the communicator argument. | |
Protected Member Functions inherited from XC::TaggedObject | |
void | setTag (int newTag) |
Set tag. More... | |
Protected Member Functions inherited from CommandEntity | |
template<class T > | |
void | string_to (T &, const std::string &) const |
Protected Attributes | |
Vector | eTrial |
section trial deformations | |
Vector | eInic |
section initial deformations | |
Vector | eCommit |
section committed deformations | |
Protected Attributes inherited from XC::SectionForceDeformation | |
Matrix | fDefault |
Default flexibility matrix. | |
MaterialHandler * | material_handler |
Material definition handler (search,...). | |
Additional Inherited Members | |
Public Types inherited from EntityWithProperties | |
typedef std::map< std::string, boost::python::object > | PythonDict |
Static Public Member Functions inherited from CommandEntity | |
static void | resetStandardOutput (void) |
Reset the standard output streams to its defaults buffers. | |
Static Public Member Functions inherited from EntityWithOwner | |
static int | getVerbosityLevel (void) |
Get the value of the verbosity level. | |
static void | setVerbosityLevel (const int &) |
Set the value of the verbosity level. | |
Static Protected Member Functions inherited from CommandEntity | |
static CommandEntity * | entcmd_cast (boost::any &data) |
Static Protected Attributes inherited from EntityWithOwner | |
static int | verbosity = 1 |
Object that owns THIS ONE. More... | |
Base class for cross sections with linear elastic material.
XC::BaseElasticSection::BaseElasticSection | ( | int | tag, |
int | classTag, | ||
const size_t & | dim, | ||
MaterialHandler * | mat_ldr = nullptr |
||
) |
Constructor.
tag | identifier for the object. |
classTag | identifier for the object class. |
dim | dimension (2 or 3). |
mat_ldr | manager of the material objects. |
|
pure virtual |
Returns the density (mass per unit length/area/volume) of the section.
Reimplemented from XC::SectionForceDeformation.
Implemented in XC::BaseElasticSection3d, XC::BaseElasticSection1d, and XC::BaseElasticSection2d.
|
virtual |
Set the trial (generalized) deformation of the section.
Sets the value of the section deformation vector, \(esec\) to be {def}. The section deformation vector, \(esec\), is defined by
\[ esec := \left[ \begin{array}{c} \epsilon_a\\ \kappa_z\\ \gamma_y \end{array} \right] \]
where \(\epsilon_a\) is the axial strain, \(\kappa_z\) is the curvature about the local z-axis, and \(\gamma_y\) is the shear strain along the local y-axis.
Implements XC::SectionForceDeformation.