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

📄 camclay.h

📁 Finite element program for mechanical problem. It can solve various problem in solid problem
💻 H
字号:
#ifndef CAMCLAY_H#define CAMCLAY_H#include "iotools.h"#include "alias.h"#include "strretalg.h"struct matrix;struct vector;struct atsel;/**   This class defines modified cam-clay material model   the material is defined by three material constants :   m - is frictional constant and it depends on the frictional angle phi   lambda - slope of the normal consolidationa line   kappa  - slope of the swelling line      In addition to these material constants several initial values    have to be specified at each integration point in the following order :   v1   - initial specific volume at the reference pressure p1 after unloading from           initial consolidation pressure p_c0 (v_kappa0)   p1   - reference pressure (p_1), it has to be negative value   p_c0 - initial consolidation pressure, it has to be negative value   inisig_1 - inisig_ncompstr - components of initial stresses      Order of the eqother array components   id                | description   ------------------+------------------------------------------------   <0;  ncompstr-1>  | plastic strains     ncompstr         | gamma - consistency parameter     ncompstr+1       | hardening parameter p_c - consolidation pressure    ncompstr+2       | v_pc0 - initial value of consolidation pressure        .            | v_lambda1 - initial value of specific volume on the NCL at reference pressure p1        .            | v_ini - initial specific volume        .            | i1s - mean stress         .            | j2s - the second invariant of stress deviator        .            | epsv - total volume strain     ncompstr+8       | epsvp - plastic volume strain        18.1.2005   TKo*/class camclay{ public:  camclay (void);  ~camclay (void);  void read (XFILE *in);  double cohesion(vector &qtr);  double yieldfunction (matrix &sig, vector &q);  void deryieldfsigma (matrix &sig, vector &q, matrix &dfds);  void dderyieldfsigma (matrix &ddfds);  void derpotsigma (matrix &sig, vector &q, matrix &dgds);  void deryieldfq(matrix &sig, vector &dq);  void deryieldfdqdq(matrix &dfq);  void deryieldfdsdq(matrix &dfdsdqt);  void dqdsigma(matrix &sigt, vector &qt, matrix &dqds);  void dhardfdq(long ipp, long ido, double dgamma, vector &qt, matrix &dqdq);  void der_q_gamma(long ipp, long ido, matrix &sig, vector &qtr, vector &dqdg);  double plasmodscalar(long ipp, long ido, matrix &sig, vector &qtr);  void updateq(long ipp, long ido, vector &eps, vector &epsp, matrix &sig, vector &q);//  void updateq(vector &epsp, strastrestate ssst, vector &q);  void matstiff (matrix &d, long ipp,long ido);  void nlstresses (long ipp,long im,long ido);  void updateval (long ipp,long ido);  void giveirrstrains (long ipp, long ido, vector &epsp);  double give_consparam (long ipp, long ido);  void changeparam (atsel &atm,vector &val);  /// frictional constant  double m;  /// slope of normal consolidation line  double lambda;  /// slope of swelling line  double kappa;  ///  stress return algorithm  strretalg sra;};#endif

⌨️ 快捷键说明

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