00001 #ifndef ELEMPARTICLE_H
00002 #define ELEMPARTICLE_H
00003
00004 #include "alias.h"
00005 struct matrix;
00006 struct vector;
00007 struct ivector;
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 class elemparticle
00018 {
00019 public:
00020 elemparticle (long cnne,long cdim);
00021 ~elemparticle (void);
00022
00023 void direction_vector_1d (long eid,long i,long j,vector &s,vector &x,vector &u);
00024 void direction_vector_2d (long eid,long i,long j,vector &s,
00025 vector &x,vector &y,vector &u,vector &v);
00026 void direction_vector_3d (long eid,long i,long j,vector &s,
00027 vector &x,vector &y,vector &z,
00028 vector &u,vector &v,vector &w);
00029 void stiffmat_1d_kii (long ipp,matrix &k,vector &s);
00030 void stiffmat_1d_kij (long ipp,matrix &k,vector &s);
00031 void stiffness_matrix_1d (long eid,matrix &sm);
00032
00033 void stiffmat_2d_kii (long ipp,matrix &k,vector &s);
00034 void stiffmat_2d_kij (long ipp,matrix &k,vector &s);
00035 void stiffness_matrix_2d (long eid,matrix &sm);
00036
00037 void stiffmat_3d_kii (long ipp,matrix &k,vector &s);
00038 void stiffmat_3d_kij (long ipp,matrix &k,vector &s);
00039 void stiffness_matrix_3d (long eid,matrix &sm);
00040
00041 void res_stiffness_matrix (long eid,matrix &sm);
00042
00043 void forces_1d (long ipp,vector &fij,vector &s);
00044 void inter_forces_1d (long eid,vector &f);
00045 void forces_2d (long ipp,vector &fij,vector &s);
00046 void inter_forces_2d (long eid,vector &f);
00047 void forces_3d (long ipp,vector &fij,vector &s);
00048 void inter_forces_3d (long eid,vector &f);
00049 void res_internal_forces (long eid,vector &ifor);
00050
00051
00052 long dim;
00053
00054 long nne;
00055
00056 long ndofe;
00057
00058 long nb;
00059
00060 long tnip;
00061
00062
00063 long **nip;
00064
00065 };
00066
00067 #endif