Itasca C++ Interface
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
iselbeam.h
Go to the documentation of this file.
1 #pragma once
2 
8 #include "isel.h"
9 
10 namespace itasca {
11  class IThing;
12 }
13 
14 namespace sel {
16 
19  class ISELBeam {
20  public:
22  inline static const TType type_ = 0x4c815a09;
24  virtual const IThing *getIThing() const=0;
26  virtual IThing * getIThing()=0;
28  virtual const ISEL *getISEL() const=0;
30  virtual ISEL * getISEL()=0;
32  virtual double getPropE()const=0;
34  virtual double getPropNu()const=0;
36  virtual double getPropXCArea()const=0;
38  virtual double getPropXCPolMom()const=0;
40  virtual double getPropXCIy()const=0;
42  virtual double getPropXCIz()const=0;
44  virtual DVect3 getMOI() const { return DVect3(getPropXCPolMom(),getPropXCIy(),getPropXCIz()); }
46  virtual DVect3 getPropLsys()const=0;
48  virtual double getPropPlasticMoment() const=0;
49  virtual double getPropPlasticMomentY() const=0;
50  virtual double getPropPlasticMomentZ() const=0;
52  virtual double getAppYPress()const=0;
54  virtual double getAppZPress()const=0;
56  virtual double getLength()const=0;
58  virtual double getArea()const=0;
60  virtual double getVolume()const=0;
64  virtual double getRespForce2(quint32 dof, quint32 end) const=0;
67  virtual DVect3 getRespForce2(quint32 end) const=0;
70  virtual DVect3 getRespMoment2(quint32 end) const=0;
72  virtual double getDensity()const=0;
74  virtual double getThExp()const=0;
76  virtual double getFactorTimo() const = 0;
77 
79  virtual void setAppYPress(const double &d)=0;
81  virtual void setAppZPress(const double &d)=0;
83  virtual void setPropXCPolMom(const double& pmom)=0;
85  virtual void setPropE(const double &e)=0;
87  virtual void setPropNu(const double &e)=0;
89  virtual void setPropXCArea(const double &d)=0;
91  virtual void setPropXCIy(const double &d)=0;
93  virtual void setPropXCIz(const double &d)=0;
95  virtual void setMOI(const DVect3 &v) { setPropXCPolMom(v.x()); setPropXCIy(v.y()); setPropXCIz(v.z()); }
97  virtual void setPropLsys(const DVect3& d)=0;
99  virtual void setPropPlasticMoment(const double &d)=0;
100  virtual void setPropPlasticMomentY(const double &d)=0;
101  virtual void setPropPlasticMomentZ(const double &d)=0;
103  virtual void setFactorTimo(double d) = 0;
104  };
105 } // namespace sel
106 // EoF
virtual double getPropPlasticMoment() const =0
Returns the plastic moment capacity for the beam, see setPropPMom()
Interface to the structural elements base class.
Definition: imodulesel.h:5
virtual double getArea() const =0
Returns the beam area,.
virtual double getLength() const =0
Returns the length of the beam.
virtual double getPropXCIz() const =0
Returns the second moment with respect to the beamSel z-axis, see setPropXCIz()
Interface to the structural elements base class.
Definition: isel.h:22
virtual const IThing * getIThing() const =0
Returns a const IThing pointer.
virtual double getThExp() const =0
Returns the beam thermal expansion coefficient, see ISEL::setThExp()
virtual double getPropXCIy() const =0
Returns the second moment with respect to the beamSel y-axis, setPropXCIy()
namespace Itasca
Definition: basememory.cpp:9
virtual void setPropXCIz(const double &d)=0
Sets the second moment with respect to the beamSel z-axis, getPropXCIz()
virtual void setAppZPress(const double &d)=0
Sets the applied pressure (positive in z'-direction), see getAppZPress()
virtual double getAppYPress() const =0
Returns the applied pressure (positive in y'-direction), see setAppYPress()
virtual void setPropLsys(const DVect3 &d)=0
Sets the Y-Direction of the local element system.
Base class for items that will be stored in containers.
Definition: ithing.h:31
virtual double getPropXCArea() const =0
Returns the cross-sectional area for the beam, setPropXCArea()
virtual DVect3 getPropLsys() const =0
Returns the Y-Axis of the local system.
virtual const ISEL * getISEL() const =0
Returns a const pointer to object base class, ISEL.
virtual double getPropNu() const =0
Returns the Poisson's ratio for the beam, see setPropNu()
static const TType type_
The type identification number for this class, for use in convert_cast() and convert_getcast().
Definition: iselbeam.h:22
virtual double getFactorTimo() const =0
Returns the beam Timoshenko factor, which is teh inverse of shear coefficient.
virtual double getAppZPress() const =0
Returns the applied pressure (positive in z'-direction), see setAppZPress()
virtual void setPropXCArea(const double &d)=0
Sets the cross-sectional area for the beam, getPropXCArea()
unsigned int TType
class type indicator
Definition: basedef.h:41
virtual DVect3 getRespMoment2(quint32 end) const =0
virtual void setPropPlasticMoment(const double &d)=0
Sets the plastic moment capacity for the beam, see getPropPMom()
virtual void setPropXCPolMom(const double &pmom)=0
Sets the polar moment of inertia for the beam, see getPropXCPolMom()
virtual void setAppYPress(const double &d)=0
Sets the applied pressure (positive in y'-direction), see getAppYPress()
virtual void setPropNu(const double &e)=0
Sets the Poisson's ratio for the beam, see getPropNu()
Interface to beam structural elements.
Definition: iselbeam.h:19
virtual double getPropXCPolMom() const =0
Returns the polar moment of inertia for the beam, see setPropXCPolMom()
virtual double getDensity() const =0
Returns the structural element density, see ISEL::setDensity()
virtual double getVolume() const =0
Returns the volume of the beam.
virtual void setPropE(const double &e)=0
Sets the Young's modulus for the beam, see getPropE()
virtual double getPropE() const =0
Returns the Young's modulus for the beam, see setPropE()
virtual double getRespForce2(quint32 dof, quint32 end) const =0
virtual DVect3 getMOI() const
Returns the moments of inertia was a vector (J,Y,Z)
Definition: iselbeam.h:44
virtual void setMOI(const DVect3 &v)
Sets the moments of inertia as a vector (J,Y,Z)
Definition: iselbeam.h:95
virtual void setFactorTimo(double d)=0
Sets beam Timoshenko factor.
virtual void setPropXCIy(const double &d)=0
Sets the second moment with respect to the beamSel y-axis, getPropXCIy()
Interface to the structural elements base class.