00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _ELCDSHH9_H
00019 #define _ELCDSHH9_H
00020
00021 #include "gbldefs.h"
00022 #include "elcdsh3d.h"
00023 #include "shape.h"
00024
00025
00026
00027
00028
00029 class cElcDegShellHH9 : public cElcDegShell3D
00030 {
00031 private:
00032 sNatCoord *SamplingPts;
00033 double **CoordSys;
00034
00035 public:
00036 cElcDegShellHH9 ( eShapeType );
00037 virtual ~cElcDegShellHH9 ( void );
00038 void Stiffness ( double * ) ;
00039 void CalcIntPtStress ( void );
00040 void CalcIntPtStress ( cIntPt *, sTensor * );
00041 void CalcPtStress ( sNatCoord *, sTensor * );
00042 int InternalForce ( double * );
00043 virtual void SPRMatrixTen ( cNode *, double **,
00044 double ** );
00045 virtual void LocalSystem ( sNatCoord *,double ** );
00046
00047 protected:
00048 void EvalHFuncs ( double, double * );
00049 void EvalLFuncs ( double, double * );
00050 void SubstShpFunc ( int, sNatCoord *, double * );
00051 void InterpMatrices ( sNatCoord *, int,
00052 double **, double **, double **,
00053 double **, double **, double **,
00054 double *, double *,double *,
00055 double *,double *, double *);
00056 void ModBMatrix ( int,int,sNatCoord *,double **,
00057 double **,double *,sDerivNat *,
00058 double *, double *, double **,
00059 double **);
00060 void CalcBSamp ( double **, double **, double **,
00061 double **, double **, double **);
00062 void EvalScissorsVectors ( sVector *, sVector *,
00063 sVector *, sVector * );
00064 void EvalCoordSystem ( sVector[2],sVector[3] );
00065 void TransfBMatrix ( double **, double **, double **);
00066
00067
00068
00069 };
00070
00071 #endif
00072