📄 plate.h
字号:
//---------------------------------------------------------------------------
#ifndef PlateH
#define PlateH
//---------------------------------------------------------------------------
class TPlate{
public:
TPlate(int no, int el, int dof, int q,
double e, double pr, double th, int s);
TPlate(const TPlate& p);
~TPlate();
//-----------------------------------------------------------------------
void setNodes(const int no) {Nodes = no;}
int getNodes()const {return Nodes;}
void setElements(const int el) {Elements = el;}
int getElements()const {return Elements;}
void setDOF(const int dof) {DOF = dof;}
int getDOF()const {return DOF;}
void setQuad(const int q) {Quad = q;}
int getQuad()const {return Quad;}
void setSolver(const int s) {Solver = s;}
int getSolver()const {return Solver;}
//-----------------------------------------------------------------------
void setE(const double e) {E = e;}
double getE()const {return E;}
void setv(const double pr) {v = pr;}
double getv()const {return v;}
void sett(const double th) {t = th;}
double gett()const {return t;}
//-----------------------------------------------------------------------
void setXYZ(double** xyz) {XYZ = xyz;}
double** getXYZ()const {return XYZ;}
void setConnect(double** con) {Connect = con;}
double** getConnect()const {return Connect;}
void setFreedom(double** free) {Freedom = free;}
double** getFreedom()const {return Freedom;}
void setForce(double** force) {Force = force;}
double** getForce()const {return Force;}
//-----------------------------------------------------------------------
void setID(double** id) {ID = id;}
double** getID()const {return ID;}
void setS(double** s) {S = s;}
double** getS()const {return S;}
//-----------------------------------------------------------------------
void setaa(const double AA) {aa = AA;}
double getaa()const {return aa;}
void setbb(const double BB) {bb = BB;}
double getbb()const {return bb;}
//-----------------------------------------------------------------------
void setR(double* r) {R = r;}
double* getR()const {return R;}
void setU(double* u) {U = u;}
double* getU()const {return U;}
void setDXYZ(double* dxyz) {DXYZ = dxyz;}
double* getDXYZ()const {return DXYZ;}
//-----------------------------------------------------------------------
void setsa(double* SA) {sa = SA;}
double* getsa()const {return sa;}
void setb(double* B) {b = B;}
double* getsb()const {return b;}
void setx(double* X) {x = X;}
double* getx()const {return x;}
void setija(int* IJA) {ija = IJA;}
int* getija()const {return ija;}
//-----------------------------------------------------------------------
void setNEQ(const int neq) {NEQ = neq;}
int getNEQ()const {return NEQ;}
void setMBAND(const int mband) {MBAND = mband;}
int getMBAND()const {return MBAND;}
void setnmax(const int NMAX) {nmax = NMAX;}
int getnmax()const {return nmax;}
//-----------------------------------------------------------------------
void setENStress_x(double* ensx) {ENStress_x = ensx;}
double* getENStress_x()const {return ENStress_x;}
void setENStress_y(double* ensy) {ENStress_y = ensy;}
double* getENStress_y()const {return ENStress_y;}
void setESStress(double* esstress) {ESStress = esstress;}
double* getESStress()const {return ESStress;}
void setENStrain_x(double* enstx) {ENStrain_x = enstx;}
double* getENStrain_x()const {return ENStrain_x;}
void setENStrain_y(double* ensty) {ENStrain_y = ensty;}
double* getENStrain_y()const {return ENStrain_y;}
void setESStrain(double* esstrain) {ESStrain = esstrain;}
double* getESStrain()const {return ESStrain;}
//-----------------------------------------------------------------------
void setNNStress_x(double* nnsx) {NNStress_x = nnsx;}
double* getNNStress_x()const {return NNStress_x;}
void setNNStress_y(double* nnsy) {NNStress_y = nnsy;}
double* getNNStress_y()const {return NNStress_y;}
void setNSStress(double* nsstress) {NSStress = nsstress;}
double* getNSStress()const {return NSStress;}
void setNNStrain_x(double* nnstx) {NNStrain_x = nnstx;}
double* getNNStrain_x()const {return NNStrain_x;}
void setNNStrain_y(double* nnsty) {NNStrain_y = nnsty;}
double* getNNStrain_y()const {return NNStrain_y;}
void setNSStrain(double* nsstrain) {NSStrain = nsstrain;}
double* getNSStrain()const {return NSStrain;}
//-----------------------------------------------------------------------
// Source Code in Arrays.cpp
int* Allocate_1D_Matrix(int* Data, int Rows);
int* SetZero_1D_Matrix(int* Data, int Rows);
void De_Allocate_1D_Matrix(int* Data);
void Matrix_1D_Display(int* Data, int Rows, char* Name);
//-----------------------------------------------------------------------
// Source Code in Arrays.cpp
double* Allocate_1D_Matrix(double* Data, int Rows);
double* SetZero_1D_Matrix(double* Data, int Rows);
void De_Allocate_1D_Matrix(double* Data);
void Matrix_1D_Display(double* Data, int Rows, char* Name);
//-----------------------------------------------------------------------
// Source Code in Arrays.cpp
double** Allocate_2D_Matrix(double** Data, int Rows, int Columns);
double** SetZero_2D_Matrix(double** Data, int Rows, int Columns);
void De_Allocate_2D_Matrix(double** Data, int Rows);
void Matrix_2D_Display(double** Data, int Rows, int Columns, char* Name);
//-----------------------------------------------------------------------
double** ID_Matrix();
double** Convert_ID();
int Count_MBAND();
double** Banded_Stiffness_Matrix();
double* Banded_Force();
double* Cal_R();
//-----------------------------------------------------------------------
double* Cal_GESolver();
int MIN(int x, int y);
//-----------------------------------------------------------------------
double* Cal_CGSolver();
int count_nmax();
void dsprsin(double *sa, int NEQ, int MBAND, double **S, int *ija);
void linbcg();
void atimes(double *x, double *r, const int itrnsp);
double snrm(double *sx, const int itol);
void asolve(double *b, double *x, const int itrnsp);
void dsprsax(double *sa, int *ija, double *x, double *b);
void dsprstx(double *sa, int *ija, double *x, double *b);
//-----------------------------------------------------------------------
void Calculation();
double* Cal_DXYZ();
void Stress();
void El_Stress_Strain(int i, double x, double y, double MP, double NQ,
double ta1, double ta2, double ta3, double ta4,
double tb1, double tb2, double tb3, double tb4,
double u1, double u2, double u3, double u4,
double v1, double v2, double v3, double v4);
void No_Stress_Strain(int *d, int i, int j,
int *countNStress_x, int *countNStress_y, int *countSStress,
int *countNStrain_x, int *countNStrain_y, int *countSStrain);
//-----------------------------------------------------------------------
void Display();
void Matrix_Check();
protected:
int Nodes, Elements, DOF, Quad, Solver;
double E, v, t;
double **XYZ, **Connect, **Freedom, **Force;
double **ID, **S;
int *d;
double aa, bb;
double *R, *U, *DXYZ;
double *sa, *b, *x;
int *ija;
int NEQ, MBAND, nmax;
double *ENStress_x, *ENStress_y, *ESStress;
double *ENStrain_x, *ENStrain_y, *ESStrain;
double *NNStress_x, *NNStress_y, *NSStress;
double *NNStrain_x, *NNStrain_y, *NSStrain;
private:
};
//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -