67 return mat->giveRealStressVector_ShellStressControl(strain, strainControl, gp, tStep);
146 auto elasticStrain = strain;
150 auto e0 = mat->giveThermalDilatationVector(gp, tStep);
152 elasticStrain.at(1) -= e0.at(1) * ( et.
at(1) - mat->giveReferenceTemperature() );
154 elasticStrain.at(2) -= e0.at(1) * et.
at(2) / thick;
158 auto answer =
dot(tangent, elasticStrain);
162 status->letTempStressVectorBe(answer);
177 auto elasticStrain = strain;
183 auto e0 = mat->giveThermalDilatationVector(gp, tStep);
184 elasticStrain.at(1) -= e0.at(1) * ( et.
at(1) - mat->giveReferenceTemperature() );
186 elasticStrain.at(5) -= e0.at(1) * et.
at(2) / thick;
188 elasticStrain.at(6) -= e0.at(1) * et.
at(3) / width;
193 auto answer =
dot(tangent, elasticStrain);
197 status->letTempStressVectorBe(answer);
213 auto elasticStrain = strain;
218 auto e0 = mat->giveThermalDilatationVector(gp, tStep);
220 elasticStrain.at(1) -= e0.at(1) * et.
at(2) / thick;
221 elasticStrain.at(2) -= e0.at(2) * et.
at(2) / thick;
225 auto answer =
dot(tangent, elasticStrain);
229 status->letTempStressVectorBe(answer);
245 auto elasticStrain = strain;
250 auto e0 = mat->giveThermalDilatationVector(gp, tStep);
251 elasticStrain.at(1) -= e0.at(1) * ( et.
at(1) - mat->giveReferenceTemperature() );
252 elasticStrain.at(2) -= e0.at(2) * ( et.
at(1) - mat->giveReferenceTemperature() );
254 elasticStrain.at(4) -= e0.at(1) * et.
at(2) / thick;
255 elasticStrain.at(5) -= e0.at(2) * et.
at(2) / thick;
259 auto answer =
dot(tangent, elasticStrain);
263 status->letTempStressVectorBe(answer);
281 for (
int i = 1; i <= 8; i++ ) {
282 rstrain.
at(i) = strain.
at(i);
285 for (
int i = 1; i <= 8; i++ ) {
286 answer.
at(i) = ra.
at(i);
293 status->letTempStressVectorBe(answer);
303 auto answer =
dot(tangent, strain);
307 status->letTempStressVectorBe(answer);
326 if ( mode == _2dBeam ) {
328 }
else if ( mode == _3dBeam ) {
330 }
else if ( mode == _2dPlate ) {
332 }
else if ( mode == _3dShell ) {
334 }
else if ( mode == _3dDegeneratedShell ) {
339 if ( mode == _3dMat ) {
340 answer = mat->give3dMaterialStiffnessMatrix(rMode, gp, tStep);
341 }
else if ( mode == _PlaneStress ) {
342 answer = mat->givePlaneStressStiffMtrx(rMode, gp, tStep);
343 }
else if ( mode == _PlaneStrain ) {
344 answer = mat->givePlaneStrainStiffMtrx(rMode, gp, tStep);
345 }
else if ( mode == _1dMat ) {
346 answer = mat->give1dStressStiffMtrx(rMode, gp, tStep);
348 mat->giveStiffnessMatrix(answer, rMode, gp, tStep);
365 answer.
at(1, 1) = mat1d.at(1, 1) * area;
366 answer.
at(2, 2) = mat1d.at(1, 1) * Iy;
367 answer.
at(3, 3) = shearAreaz * mat->give(
'G', gp);
378 double E = mat1d.at(1, 1);
379 double G = mat->give(
'G', gp);
391 answer.
at(1, 1) =
E * area;
393 answer.
at(2, 2) = shearAreay * G;
394 answer.
at(3, 3) = shearAreaz * G;
397 answer.
at(4, 4) = G * Ik;
398 answer.
at(5, 5) =
E * Iy;
399 answer.
at(6, 6) =
E * Iz;
411 double thickness3 = thickness * thickness * thickness;
415 for (
int i = 1; i <= 2; i++ ) {
416 for (
int j = 1; j <= 2; j++ ) {
417 answer.
at(i, j) = mat2d.at(i, j) * thickness3 / 12.;
421 answer.
at(3, 3) = mat2d.at(3, 3) * thickness3 / 12.;
422 answer.
at(4, 4) = mat2d.at(3, 3) * thickness * ( 5. / 6. );
423 answer.
at(5, 5) = answer.
at(4, 4);
434 double thickness3 = thickness * thickness * thickness;
436 auto mat2d = mat->givePlaneStressStiffMtrx(rMode, gp, tStep);
440 for (
int i = 1; i <= 3; i++ ) {
441 for (
int j = 1; j <= 3; j++ ) {
442 answer.
at(i, j) = mat2d.at(i, j) * thickness;
445 for (
int i = 1; i <= 3; i++ ) {
446 for (
int j = 1; j <= 3; j++ ) {
447 answer.
at(i + 3, j + 3) = mat2d.at(i, j) * thickness3 / 12.0;
451 answer.
at(8, 8) = answer.
at(7, 7) = mat2d.at(3, 3) * thickness * ( 5. / 6. );
463 answer.
assemble(d, { 1, 2, 3, 4, 5, 6, 7, 8 });
475 answer.
at(1, 1) -= answer.at(1, 3) * answer.at(3, 1) / answer.at(3, 3);
476 answer.at(2, 1) -= answer.at(2, 3) * answer.at(3, 1) / answer.at(3, 3);
477 answer.at(1, 2) -= answer.at(1, 3) * answer.at(3, 2) / answer.at(3, 3);
478 answer.at(2, 2) -= answer.at(2, 3) * answer.at(3, 2) / answer.at(3, 3);
480 answer.at(3, 1) = 0.0;
481 answer.at(3, 2) = 0.0;
482 answer.at(3, 3) = 0.0;
483 answer.at(2, 3) = 0.0;
484 answer.at(1, 3) = 0.0;
529 area = thick * width;
545 double beamshearcoeff = 0.0;
551 if ( value == 0.0 ) {
552 value = beamshearcoeff * area;
558 if ( value == 0.0 ) {
559 value = beamshearcoeff * area;
690 if ( type == IST_CrossSectionNumber ) {
739 if ( mode == _3dMat ) {
741 }
else if ( mode == _PlaneStrain ) {
743 }
else if ( mode == _PlaneStress ) {
745 }
else if ( mode == _1dMat ) {
756 if ( mode == _3dMat ) {
758 }
else if ( mode == _PlaneStrain ) {
760 }
else if ( mode == _PlaneStress ) {
762 }
else if ( mode == _1dMat ) {
808 if ( mode == _3dMat ) {
809 answer = mat->give3dMaterialStiffnessMatrix_dPdF(rMode, gp, tStep);
810 }
else if ( mode == _PlaneStress ) {
811 answer = mat->givePlaneStressStiffnessMatrix_dPdF(rMode, gp, tStep);
812 }
else if ( mode == _PlaneStrain ) {
813 answer = mat->givePlaneStrainStiffnessMatrix_dPdF(rMode, gp, tStep);
814 }
else if ( mode == _1dMat ) {
815 answer = mat->give1dStressStiffnessMatrix_dPdF(rMode, gp, tStep);
817 OOFEM_ERROR(
"Unsupported material mode for large strain analysis");
865 if ( mode == _3dMat ) {
867 }
else if ( mode == _PlaneStress ) {
869 }
else if ( mode == _PlaneStrain ) {
871 }
else if ( mode == _1dMat ) {
874 OOFEM_ERROR(
"unknown mode (%s)", __MaterialModeToString(mode) );
892 if ( ( tf = fm->
giveField(FT_Temperature) ) ) {
897 if ( ( err = tf->evaluateAt(et2, gcoords, VM_Total, tStep) ) ) {
904 answer.
at(1) += et2.
at(1);
#define REGISTER_CrossSection(class)
void giveInputRecord(DynamicInputRecord &input) override
Dictionary propertyDictionary
void restoreContext(DataStream &stream, ContextMode mode) override
void saveContext(DataStream &stream, ContextMode mode) override
void initializeFrom(InputRecord &ir) override
virtual int read(int *data, std::size_t count)=0
Reads count integer values into array pointed by data.
virtual int write(const int *data, std::size_t count)=0
Writes count integer values from array pointed by data.
Material * giveMaterial(int n)
virtual int computeGlobalCoordinates(FloatArray &answer, const FloatArray &lcoords)
virtual Material * giveMaterial()
Domain * giveDomain() const
virtual Interface * giveInterface(InterfaceType t)
Domain * domain
Link to domain object, useful for communicating with other FEM components.
virtual const char * giveClassName() const =0
FieldPtr giveField(FieldType key)
double & at(std::size_t i)
Index giveSize() const
Returns the size of receiver.
bool isEmpty() const
Returns true if receiver is empty.
bool isNotEmpty() const
Returns true if receiver is not empty.
double at(std::size_t i, std::size_t j) const
void resize(Index rows, Index cols)
void zero()
Zeroes all coefficient of receiver.
void assemble(const FloatMatrix &src, const IntArray &loc)
double at(std::size_t i, std::size_t j) const
IntegrationPointStatus * setMaterialStatus(std::unique_ptr< IntegrationPointStatus > ptr, IntegrationPointStatusIDType key=IPSID_Default)
const FloatArray & giveNaturalCoordinates() const
Returns coordinate array of receiver.
MaterialMode giveMaterialMode()
Returns corresponding material mode of receiver.
Element * giveElement()
Returns corresponding element to receiver.
virtual std::unique_ptr< MaterialStatus > CreateStatus(GaussPoint *gp) const
virtual int estimatePackSize(DataStream &buff, GaussPoint *ip)
virtual MaterialStatus * giveStatus(GaussPoint *gp) const
virtual int unpackAndUpdateUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *ip)
virtual double give(int aProperty, GaussPoint *gp) const
virtual int giveIPValue(FloatArray &answer, GaussPoint *gp, InternalStateType type, TimeStep *tStep)
virtual int packUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *ip)
Interface * giveMaterialInterface(InterfaceType t, IntegrationPoint *ip) override
void giveCharMaterialStiffnessMatrix_dPdF(FloatMatrix &answer, MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) override
FloatMatrixF< 4, 4 > giveStiffnessMatrix_dPdF_PlaneStress(MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override
int estimatePackSize(DataStream &buff, GaussPoint *gp) override
void saveContext(DataStream &stream, ContextMode mode) override
int materialNumber
Material number.
virtual FloatArrayF< 9 > giveFirstPKStress_3d(const FloatArrayF< 9 > &reducedF, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 6 > giveRealStress_3d(const FloatArrayF< 6 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 6, 6 > giveStiffnessMatrix_3d(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
int czMaterialNumber
Cohesive zone material number.
FloatMatrixF< 4, 4 > giveStiffnessMatrix_PlaneStrain(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
Material * giveMaterial(IntegrationPoint *ip) const override
hidden by virtual oofem::Material* TransportCrossSection::giveMaterial() const
void giveInputRecord(DynamicInputRecord &input) override
int packUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *gp) override
void initializeFrom(InputRecord &ir) override
FloatArrayF< 6 > giveGeneralizedStress_Beam3d(const FloatArrayF< 6 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
virtual FloatArrayF< 1 > giveFirstPKStress_1d(const FloatArrayF< 1 > &reducedF, GaussPoint *gp, TimeStep *tStep) const override
int giveIPValue(FloatArray &answer, GaussPoint *ip, InternalStateType type, TimeStep *tStep) override
FloatArrayF< 8 > giveGeneralizedStress_Shell(const FloatArrayF< 8 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 5 > giveGeneralizedStress_Plate(const FloatArrayF< 5 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 9, 9 > give3dShellRotStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 6 > giveRealStress_3dDegeneratedShell(const FloatArrayF< 6 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 5, 5 > give2dPlateStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 5, 5 > giveStiffnessMatrix_dPdF_PlaneStrain(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 9, 9 > giveStiffnessMatrix_dPdF_3d(MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override
int giveMaterialNumber() const
virtual FloatArrayF< 4 > giveFirstPKStress_PlaneStress(const FloatArrayF< 4 > &reducedF, GaussPoint *gp, TimeStep *tStep) const override
double give(int aProperty, GaussPoint *gp) const override
FloatMatrixF< 1, 1 > giveStiffnessMatrix_dPdF_1d(MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 2 > giveRealStress_Warping(const FloatArrayF< 2 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
void giveTemperatureVector(FloatArray &answer, GaussPoint *gp, TimeStep *tStep) const
void giveCharMaterialStiffnessMatrix(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) override
FloatMatrixF< 3, 3 > give2dBeamStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 1, 1 > giveStiffnessMatrix_1d(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
int unpackAndUpdateUnknowns(DataStream &buff, TimeStep *tStep, GaussPoint *gp) override
FloatMatrixF< 6, 6 > give3dBeamStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
void createMaterialStatus(GaussPoint &iGP) override
int checkConsistency() override
FloatArrayF< 4 > giveGeneralizedStress_MembraneRot(const FloatArrayF< 4 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 3 > giveGeneralizedStress_PlateSubSoil(const FloatArrayF< 3 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
void giveStiffnessMatrix_dCde(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) override
FloatArrayF< 9 > giveGeneralizedStress_ShellRot(const FloatArrayF< 9 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 3 > giveGeneralizedStress_Beam2d(const FloatArrayF< 3 > &generalizedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 3, 3 > giveStiffnessMatrix_PlaneStress(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
void giveEshelbyStresses(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedvF, TimeStep *tStep) override
FloatArrayF< 1 > giveRealStress_1d(const FloatArrayF< 1 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 4, 4 > giveMembraneRotStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 8, 8 > give3dShellStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
FloatMatrixF< 6, 6 > give3dDegeneratedShellStiffMtrx(MatResponseMode rMode, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 4 > giveRealStress_PlaneStrain(const FloatArrayF< 4 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
void restoreContext(DataStream &stream, ContextMode mode) override
bool isCharacteristicMtrxSymmetric(MatResponseMode mode) const override
FloatMatrixF< 3, 3 > give2dPlateSubSoilStiffMtrx(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const override
void giveCauchyStresses(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedFIncrement, TimeStep *tStep) override
virtual FloatArrayF< 5 > giveFirstPKStress_PlaneStrain(const FloatArrayF< 5 > &reducedF, GaussPoint *gp, TimeStep *tStep) const override
FloatArrayF< 3 > giveRealStress_PlaneStress(const FloatArrayF< 3 > &reducedStrain, GaussPoint *gp, TimeStep *tStep) const override
virtual void computeResultingIPTemperatureAt(FloatArray &answer, TimeStep *tStep, GaussPoint *gp, ValueModeType mode)
void letTempStrainVectorBe(const FloatArray &v)
Assigns tempStrainVector to given vector v.
virtual void give1dStressStiffMtrx_dCde(FloatMatrix &answer, MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep)
virtual FloatMatrixF< 3, 3 > givePlaneStressStiffMtrx(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual FloatArrayF< 3 > giveRealStressVector_2dPlateSubSoil(const FloatArrayF< 3 > &reducedE, GaussPoint *gp, TimeStep *tStep) const
Default implementation is not provided.
virtual void giveCauchyStressVector_PlaneStress(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedF, TimeStep *tStep)
virtual void giveEshelbyStressVector_PlaneStrain(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedF, TimeStep *tStep)
virtual FloatArrayF< 1 > giveRealStressVector_1d(const FloatArrayF< 1 > &reducedE, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveRealStressVector_StressControl.
virtual FloatArrayF< 1 > giveFirstPKStressVector_1d(const FloatArrayF< 1 > &vF, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveFirstPKStressVector_StressControl.
virtual FloatArrayF< 2 > giveRealStressVector_Warping(const FloatArrayF< 2 > &reducedE, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveRealStressVector_StressControl.
virtual FloatMatrixF< 6, 6 > give3dMaterialStiffnessMatrix(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const
virtual FloatMatrixF< 3, 3 > give2dPlateSubSoilStiffMtrx(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual FloatMatrixF< 1, 1 > give1dStressStiffnessMatrix_dPdF(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual void give3dMaterialStiffnessMatrix_dCde(FloatMatrix &answer, MatResponseMode mode, GaussPoint *gp, TimeStep *tStep)
virtual void givePlaneStrainStiffMtrx_dCde(FloatMatrix &answer, MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep)
virtual FloatMatrixF< 5, 5 > givePlaneStrainStiffnessMatrix_dPdF(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual FloatMatrixF< 4, 4 > givePlaneStrainStiffMtrx(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual void giveCauchyStressVector_1d(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedF, TimeStep *tStep)
virtual FloatArrayF< 4 > giveRealStressVector_PlaneStrain(const FloatArrayF< 4 > &strain, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveRealStressVector_3d.
virtual FloatArrayF< 5 > giveFirstPKStressVector_PlaneStrain(const FloatArrayF< 5 > &vF, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveFirstPKStressVector_3d.
virtual void giveCauchyStressVector_PlaneStrain(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedF, TimeStep *tStep)
virtual FloatArrayF< 6 > giveRealStressVector_3d(const FloatArrayF< 6 > &strain, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
virtual FloatMatrixF< 4, 4 > givePlaneStressStiffnessMatrix_dPdF(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual void giveCauchyStressVector_3d(FloatArray &answer, GaussPoint *gp, const FloatArray &reducedF, TimeStep *tStep)
virtual FloatMatrixF< 1, 1 > give1dStressStiffMtrx(MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep) const
virtual FloatArrayF< 4 > giveFirstPKStressVector_PlaneStress(const FloatArrayF< 4 > &vF, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveFirstPKStressVector_StressControl.
virtual FloatArrayF< 3 > giveRealStressVector_PlaneStress(const FloatArrayF< 3 > &reducedE, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveRealStressVector_StressControl.
virtual FloatMatrixF< 9, 9 > give3dMaterialStiffnessMatrix_dPdF(MatResponseMode mode, GaussPoint *gp, TimeStep *tStep) const
virtual FloatArrayF< 9 > giveFirstPKStressVector_3d(const FloatArrayF< 9 > &vF, GaussPoint *gp, TimeStep *tStep) const
Default implementation relies on giveRealStressVector for second Piola-Kirchoff stress.
virtual void givePlaneStressStiffMtrx_dCde(FloatMatrix &answer, MatResponseMode mmode, GaussPoint *gp, TimeStep *tStep)
#define OOFEM_WARNING(...)
@ CS_ShearAreaY
Shear area in y direction.
@ CS_DrillingType
Type of artificially added drilling stiffness for drilling DOFs.
@ CS_InertiaMomentZ
Moment of inertia around z-axis.
@ CS_DirectorVectorY
Director vector component in y-axis.
@ CS_DrillingStiffness
Penalty stiffness for drilling DOFs.
@ CS_TorsionConstantX
Saint-Venant torsional constant (J).
@ CS_RelDrillingStiffness
Relative penalty stiffness for drilling DOFs.
@ CS_BeamShearCoeff
Shear coefficient of beam.
@ CS_DirectorVectorX
Director vector component in x-axis.
@ CS_InertiaMomentY
Moment of inertia around y-axis.
@ CS_ShearAreaZ
Shear area in z direction.
@ CS_DirectorVectorZ
Director vector component in z-axis.
GaussPoint IntegrationPoint
FloatArrayF< N > assemble(const FloatArrayF< M > &x, int const (&c)[M])
Assemble components into zero matrix.
double dot(const FloatArray &x, const FloatArray &y)
std::shared_ptr< Field > FieldPtr
@ CIO_IOERR
General IO error.
#define _IFT_SimpleCrossSection_iz
Inertia moment z.
#define _IFT_SimpleCrossSection_thick
#define _IFT_SimpleCrossSection_drillType
Type of artificially added stiffnes for drilling DOFs.
#define _IFT_SimpleCrossSection_directorx
#define _IFT_SimpleCrossSection_shearareaz
Shear area z direction.
#define _IFT_SimpleCrossSection_shearcoeff
#define _IFT_SimpleCrossSection_area
#define _IFT_SimpleCrossSection_relDrillStiffness
Relative penalty term for drilling stiffness.
#define _IFT_SimpleCrossSection_width
#define _IFT_SimpleCrossSection_iy
Inertia moment y.
#define _IFT_SimpleCrossSection_directorz
#define _IFT_SimpleCrossSection_MaterialNumber
Material number for the bulk material.
#define _IFT_SimpleCrossSection_ik
Saint-Venant torsional constant.
#define _IFT_SimpleCrossSection_directory
#define _IFT_SimpleCrossSection_drillStiffness
Penalty term for drilling stiffness.
#define _IFT_SimpleCrossSection_shearareay
Shear area y direction.