Itasca C++ Interface
Loading...
Searching...
No Matches
ireinforcementthing.h
Go to the documentation of this file.
1#pragma once
2// ireinforcementthing.h
3
4#include "iblockdef.h"
5
14namespace itasca
15{
16 class IThing;
17}
18
19namespace block
20{
24
25 class IBlockThing;
26 class IContactThing;
27 class IFaceThing;
28
30 {
31 public:
32
34 inline static const TType type_ = 0x52b3460a;
36 virtual const itasca::IThing * getIThing() const=0;
40 virtual quint64 getReinforcementID() const=0;
42 virtual quint64 getSELCollectionID() const=0;
44 virtual FInt getFortranOffset() const=0;
46 virtual DVect3 getLocation() const=0;
48 virtual const IBlockThing * getBlock1() const=0;
50 virtual const IBlockThing * getBlock2() const=0;
52 virtual const IFaceThing * getFace1() const=0;
54 virtual const IFaceThing * getFace2() const=0;
56 virtual const IContactThing *getContact() const=0;
58 virtual int getMaterial() const=0;
60 virtual DVect3 getShearDisplacement() const=0;
62 virtual DVect3 getShearForce() const=0;
64 virtual double getShearStrain() const = 0;
66 virtual double getAxialDisplacement() const=0;
68 virtual double getAxialForce() const=0;
70 virtual double getAxialStrain() const = 0;
72 virtual DVect3 getNormal() const=0;
74 virtual QString getStateString() const=0;
76 // 1 yield in past
77 // 2 shear yield
78 // 3 axial yield
79 // 4 axial rupture
80 // 5 shear rupture
81 virtual int getState() const = 0;
83 virtual double getHalfLength() const=0;
84 // other properties
85 virtual double getAxialStiffness() const=0;
86 virtual double getShearStiffness() const=0;
87 virtual double getAxialYield() const=0;
88 virtual double getShearYield() const=0;
89 virtual double getAxialRuptureStrain() const=0;
90 virtual double getShearRuptureStrain() const=0;
91 // get axial and shear force as a percentage of strength
92 virtual double getShearForcePcStrength() const=0;
93 virtual double getAxialForcePcStrength() const=0;
94 };
95
96} // end namespace block
97// EOF
This is the interface for BlockThing, a class that holds extra data not in the fortran arrays....
Definition iblockthing.h:32
Definition icontactthing.h:31
This is the interface for FaceThing, a class that holds extra data not in the fortran arrays....
Definition ifacething.h:33
Definition ireinforcementthing.h:30
virtual double getShearStrain() const =0
Return the shear strain.
virtual DVect3 getNormal() const =0
Return the normal vector.
virtual const IFaceThing * getFace1() const =0
Return first face connected.
virtual const IBlockThing * getBlock1() const =0
Return first block connected.
virtual quint64 getReinforcementID() const =0
Get ID of element in C++ container (not Fortran offset)
virtual FInt getFortranOffset() const =0
Return element fortran offset.
virtual DVect3 getShearDisplacement() const =0
Return the shear displacement vector.
virtual DVect3 getLocation() const =0
Returns element position.
virtual const IBlockThing * getBlock2() const =0
Return second block connected.
static const TType type_
type used in IThing typing system
Definition ireinforcementthing.h:34
virtual double getHalfLength() const =0
Return the half-length ("active" length) of the element (from property)
virtual DVect3 getShearForce() const =0
Return the shear force vector.
virtual const IFaceThing * getFace2() const =0
Return second face connected.
virtual const itasca::IThing * getIThing() const =0
Returns a const IThing pointer.
virtual quint64 getSELCollectionID() const =0
Return ID of collection of reinforcement elements.
virtual QString getStateString() const =0
return reinforcement state string
virtual int getMaterial() const =0
Return material number.
virtual double getAxialDisplacement() const =0
Return the normal displacement.
virtual double getAxialStrain() const =0
Return the axial strain.
virtual int getState() const =0
return reinforcement state integer
virtual itasca::IThing * getIThing()=0
Returns a IThing pointer.
virtual const IContactThing * getContact() const =0
Return contact associated with reinforcement element.
virtual double getAxialForce() const =0
Return the normal force.
Base class for items that will be stored in containers.
Definition ithing.h:30
uint32 TType
class type indicator
Definition basedef.h:46
int32 FInt
Interface to provide access to 3DEC modules, global data, list of 3DEC entities, etc.
Definition iblockdef.h:19
Fortran to C++ type declarations.
namespace Itasca
Definition basememory.cpp:10