⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 plelemlq.h

📁 Finite element program for mechanical problem. It can solve various problem in solid problem
💻 H
字号:
#ifndef PLELEMLQ_H#define PLELEMLQ_H#include "alias.h"struct matrix;struct vector;struct ivector;struct atsel;/**   class planeelemlq defines plane quadrilateral element with   bi-linear approximation functions      basic data   nne = 4 - number nodes on element   ndofe = 8 - number of DOFs on element   ncomp = 3 - number of strain (stress) tensor components   napfun = 2 - number of approximated functions   intordmm = 2 - order of numerical integration of mass matrix (2x2)      nsip - number of sets of integration points   there are two sets,    nip - number of integration points in sets   intordsm - array containing orders of numerical integration      JK*/class planeelemlq{ public:  planeelemlq (void);  ~planeelemlq (void);  void eleminit (long eid);  double approx (double xi,double eta,vector &nodval);  void ipcoord (long eid,long ipp,long ri,long ci,vector &coord);  void ipcoordblock (long eid,long ri,long ci,double **coord);  void bf_matrix (matrix &n,double xi,double eta);  void geom_matrix (matrix &gm,vector &x,vector &y,double xi,double eta,double &jac);  void geom_matrix_block (matrix &gm,long ri,vector &x,vector &y,double xi,double eta,double &jac);  void bvectors (vector &x,vector &y,double xi,double eta,double &jac,		 vector &b11,vector &b12,vector &b21,vector &b22);  void gngeom_matrix (matrix &gm,vector &r,vector &x,vector &y,double xi,double eta,double &jac);  void gnl_grmatrix (matrix &grm,vector &x,vector &y,double xi,double eta,double &jac);  void dmatblock (long ri,long ci,matrix &d, matrix &dd);  void transf_matrix (ivector &nod,matrix &tmat);  void gl_stiffness_matrix (long eid,long ri,long ci,matrix &sm,vector &x,vector &y);  void gnl_stiffness_matrix (long lcid,long eid,long ri,long ci,matrix &sm,vector &x,vector &y);  void res_stiffness_matrix (long lcid,long eid,matrix &sm);  void mass_matrix (long eid,matrix &mm,vector &x,vector &y);  void res_mass_matrix (long eid,matrix &mm);    void res_ip_strains (long lcid,long eid);  void gl_ip_strains (long lcid,long eid,long ri,long ci,vector &x,vector &y,vector &r);  void gnl_ip_strains (long lcid,long eid,long ri,long ci,vector &x,vector &y,vector &r);  void nod_strains_ip (long lcid,long eid,long ri,long ci);  void nod_strains_comp (long lcid,long eid,double **stra);  //void elem_strains (double **stra,long lcid,long eid,long ri,long ci);  //void appstrain (long lcid,long eid,double xi,double eta,long fi,long ncomp,vector &eps);  void strains (long lcid,long eid,long ri,long ci);  void nodecoord (vector &xi,vector &eta);  void nodipnum (long eid,long ri,long ci,ivector &ipnum);  //void appval (double xi,double eta,long fi,long nc,vector &eps,double **val);  void res_ip_stresses (long lcid,long eid);  void ip_stresses (long lcid,long eid,long ri,long ci);  void ip_elast_stresses (long lcid,long eid,long ri,long ci);  void nod_stresses_ip (long lcid,long eid,long ri,long ci);  void nod_stresses_comp (long lcid,long eid,long ri,long ci,double **stra,double **stre);    //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,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 nod_eqother_ip (long lcid,long eid,long ri,long ci);    void load_matrix (long eid,matrix &lm,vector &x,vector &y);  void res_load_matrix (long eid,matrix &lm);      void compute_nlstress (long lcid,long eid,long ri,long ci);  void compute_nonloc_nlstress (long lcid,long eid,long ri,long ci);  void compute_eigstress (long lcid,long eid,long ri,long ci);  void elem_integration (integratedquant iq,long lcid,long eid,long ri,long ci,vector &nv,vector &x,vector &y);      void res_eigstrain_forces (long lcid,long eid,vector &nfor);  void eigstrain_forces (long lcid,long eid,long ri,long ci,vector &nfor,vector &x,vector &y);  void gl_internal_forces (long lcid,long eid,long ri,long ci,vector &ifor,vector &x,vector &y);  void gnl_internal_forces (long lcid,long eid,long ri,long ci,vector &ifor,vector &x,vector &y);  void res_internal_forces (long lcid,long eid,vector &ifor);  void nodeforces (long eid,long *le,double *nv,vector &nf);  void inicipval(long eid, long ri, long ci, matrix &nodval, inictype *ictn);  void ipvolume (long eid,long ri,long ci);  void intpointval (long eid,vector &nodval,vector &ipval);    void define_meaning (long eid);      /* 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 */  void extract (atsel &at,vector &val);  ///  number of DOFs on the element  long ndofe;  ///  number of nodes on one element  long nne;  ///  total number of components of stress and strain tensors  long tncomp;  ///  total number of integration points on element  long tnip;  ///  array containing numbers of components of stress and strain tensors  long *ncomp;  ///  array containing cumulative numbers of components of stress and strain tensors  long *cncomp;  ///  number of approximated functions on the element  long napfun;  ///  number of edges  long ned;  ///  number of nodes on one edge  long nned;  ///  array containing orders of numerical integration of stiffness matrix  long **intordsm;  ///  order of integration of mass matrix  long intordmm;  ///  order of integration on edges  long intordb;  ///  array of numbers of integration points in sets  long **nip;  ///  number of blocks  long nb;  ///  stress/strain state  strastrestate ssst;};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -