📄 lintet.h
字号:
#ifndef LINTET_H#define LINTET_H#include "alias.h"struct matrix;struct vector;struct ivector;/** class lintet defines tetrahedral elements with linear approximation functions JK*/class lintet{ public: lintet (void); ~lintet (void); void eleminit (long eid); double approx (vector &volcoord,vector &nodval); double approx_nat (double xi,double eta,double zeta,vector &nodval); void bf_matrix (matrix &n,vector &volcoord); void bf_matrix (matrix &n,double xi,double eta,double zeta); void geom_matrix (matrix &gm,vector &x,vector &y,vector &z); void transf_matrix (ivector &nodes,matrix &tmat); void stiffness_matrix (long eid,long ri,long ci,matrix &sm); void res_stiffness_matrix (long eid,matrix &sm); void mass_matrix (long eid,matrix &mm); void load_matrix (long eid,matrix &lm); void res_mainip_strains (long lcid,long eid); void mainip_strains (long lcid,long eid,long ri,long ci); void nod_strains (long lcid,long eid,long ri,long ci); void elem_strains (double **stra,long lcid,long eid,long ri,long ci); void appstrain (long lcid,long eid,double xi,double eta,double zeta,long fi,long ncomp,vector &eps); void allip_strains (double **stra,long lcid,long eid,long ri,long ci); void strains (long lcid,long eid,long ri,long ci); void nodecoord (vector &xi,vector &eta,vector &zeta); void appval (double xi,double eta,double zeta,long fi,long nc,vector &eps,double **val); void mainip_stresses (long lcid,long eid,long ri,long ci); void nod_stresses (long lcid,long eid,long ri,long ci); void elem_stresses (double **stra,double **stre,long lcid,long eid,long ri,long ci); void appstress (long lcid,long eid,double xi,double eta,double zeta,long fi,long ncomp,vector &sig); void allip_stresses (double **stre,long lcid,long eid,long ri,long ci); void stresses (long lcid,long eid,long ri,long ci); void internal_forces (long lcid,long eid,vector &ifor); void res_internal_forces (long lcid,long eid,vector &ifor); void local_values (long lcid,long eid,long ri,long ci); void nonloc_internal_forces (long lcid,long eid,long ri,long ci,vector &ifor); void ipcoord (long eid,long ipp,long ri,long ci,vector &coord); void inicipval(long eid, long ri, long ci, matrix &nodval, inictype *ictn); void ipvolume (long eid,long ri,long ci); void nod_eqother_ip (long lcid,long eid); void node_forces_surf (long lcid,long eid,long *is,double *nv,vector &nf); void node_forces_surf_old (long lcid,long eid,long *is,double *nv,vector &nf); void locglob_nodeval (long is,vector &nv,double *tnv,vector &x,vector &y,vector &z); void intpointval (long eid,vector &nodval,vector &ipval); void res_eigstrain_forces (long eid,vector &nfor); void eigstrain_forces (long eid,vector &nfor); /* termitovo */ void ntdbr_vector (long eid,vector &ntdbr); void ntn_matrix (long eid,matrix &ntn); void compute_error (long eid,double &volume,double &e2,double &u2,double &sizel,double *rsigfull); void elchar (long eid,double *&spsig); /* termitovo */ /// number of DOFs on the element long ndofe; /// number of nodes on one element long nne; /// total number of components of the strain and stress tensors long tncomp; /// total number of integration points on element long tnip; /// number of approximated functions on the element long napfun; /// number of edges on one element long ned; /// number of nodes on one edge long nned; /// number of surfaces long nsurf; /// number of nodes on one surface long nnsurf; /// array of orders of integration of stiffness matrix long **intordsm; /// order of integration of mass matrix long intordmm; /// order of numerical interation on surfaces long intordb; /// array of numbers of integration points in sets long **nip; /// number of blocks long nb; /// array of numbers of components of blocks long *ncomp; /// cumulative array of numbers of components of blocks long *cncomp; /// stress/strain state strastrestate ssst;};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -