版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1.2.4VFRIC Abaqus User Subroutines Reference ManualUser subroutine to define frictional behavior for contact surfacesOverviewUser subroutine VFRIC: can be used to define the frictional behavior between contact pair surfaces;能够用来定义接触对表面间的摩擦行为; can be used when the classical Coulomb friction model is
2、too restrictive and a more complex definition of shear transmission between contacting surfaces is required;能够在经典的库伦摩擦模型太具限制性,并且接触表面之间需要一个更为复杂的剪切传输的定义时使用; must provide the entire definition of shear interaction between the contacting surfaces;必须在接触表面之间提供完整的“交互剪切”的定义; can use and update solution-depe
3、ndent state variables;可以使用并更新基于解的状态变量; cannot be used in conjunction with softened tangential surface behavior; and不能够与软化的切向表面行为一起使用; cannot be used with the general contact algorithm.不能与通用接触算法一块使用。通用接触算法只可以被用于三维表面;Two-dimensional surfaces cannot be used with the general contact algorithm.二维表面不能与通用接
4、触算法一起使用TerminologyThe use of user subroutine VFRIC requires familiarity with the following terminology.使用VFRIC子程序要求熟悉下列术语。Surface node numbers 表面节点编号The “surface node number” refers to the position of a particular node in the list of nodes on the surface. For example, there are nSlvNod nodes on the
5、slave surface. Number n, n=1, 2 . nSlvNod, is the surface node number of the nth node in this list; jSlvUid(n) is the user-defined global number of this node. An Abaqus/Explicit model can be defined in terms of an assembly of part instances (see “Defining an assembly,” Section 2.9.1 of the Abaqus An
6、alysis Users Manual). In such models a node number in jSlvUid is an internally generated node number. If the original node number and part instance name are required, call the utility routine VGETPARTINFO (see “Obtaining part information,” Section 2.1.5). “表面节点编号”指的是表面上节点列表里一个特殊点的位置。例如,在从接触面上有nSlvNo
7、d个节点。编号n,n=1,2, . nSlvNod,是该节点列表里第n个节点的节点编号;jSlvUid(n)是该节点用户自定义的全局编号。Abaqus/Explicit模型可以按照零件实体的安装来定义(see “Defining an assembly,” Section 2.9.1 of the Abaqus Analysis Users Manual)。在这样的模型里,jSlvUid里的节点编号是一个内部生成的节点编号。如果要求原始节点编号和零件实体的名字,则调用实用程序VGETPARTINFO。Contact points 接触点The nodes on the slave surfac
8、e that are in contact in the current time increment are defined as “contact points.” The number of contact points is passed into this subroutine as nContact. The array jConSlvid(nContact) gives the surface node numbers for the contact points. 从接触面上的那些在当前时间增量接触的节点被定义为“接触点”。接触点的数量作为nContact被传到子程序中。数组j
9、ConSlvid(nContact) 给出了接触点的表面节点编号。Local coordinate system 局部坐标系A local coordinate system is defined for each contact point to facilitate specification of frictional forces and incremental slips. The local 1-direction for both two-dimensional and three-dimensional contact is tangential to the master s
10、urface, and it is defined by, where is the incremental slip vector. The incremental slip vector used to define corresponds to the incremental slip in the current time increment for penalty contact and the predicted incremental slip for kinematic contact. The master surface normal direction, n, is th
11、e local 2-direction for two-dimensional contact and the local 3-direction for three-dimensional contact. The local 2-direction for three-dimensional contact is given by, which is also tangent to the master surface. The vectors are shown in Figure 1.2.41 and Figure 1.2.42. The direction cosines for a
12、nd n with respect to the global coordinate system are available in dirCosT1 and dirCosN, respectively. In the case of zero incremental slip () we choose an arbitrary direction for that is orthogonal to the normal direction, n. 为每个接触点都定义一个局部坐标系以促进摩擦力和增量滑移的规范。对二维和三维接触来说,局部1-direction是切向于主接触面的,并且被定为,其中
13、是增量滑移矢量。增量滑移矢量用来定义相当于在当前时间增量下对罚接触的增量滑移和对运动学接触的预测到的增量滑移。主接触面的法线方向,n,对二维接触来说是局部2-direction,对三维接触是局部3-direction。给出了三维接触的局部2-direction的定义,它也相切于主接触面。Figure 1.2.41和 Figure 1.2.42给出了矢量图。的方向余弦和与全局坐标系相关的n分别在dirCosT1和dirCosN里可行。在0增量滑移的情况下(),我们为选择一个任意方向,那就是正交于法线方向,n。Figure 1.2.41 Local coordinate system for tw
14、o-dimensional contact with VFRIC.Figure 1.2.42 Local coordinate system for three-dimensional contact with VFRIC.Frictional forcesYou specify the frictional force, fTangential, at each contact point in local coordinates in this subroutine. The array fTangential is dimensioned such that only the tange
15、ntial components can be specified. Any components of the frictional force that are not specified will remain equal to zero. For three-dimensional contact with isotropic friction, only the first component of the frictional force need be specified since the second component should be zero. A “stick fo
16、rce” at each contact point is provided in the array fStickForce to the assist you in setting appropriate frictional force values. The stick force is the force required to prevent additional “plastic” slipping. The stick force at each contact point is provided as a scalar value(标量) as it would act in
17、 the direction opposite to . The stick force is computed prior to calling user subroutine VFRIC by either the kinematic or the penalty contact algorithm. See “Contact constraint enforcement methods in Abaqus/Explicit,” Section 34.2.3 of the Abaqus Analysis Users Manual, for descriptions of the kinem
18、atic and penalty contact algorithms and the user interface for choosing between them. The first component of the frictional force should be in the range between zero and minus the stick force value. Typically, the stick force will be positive and the first component of the applied frictional force w
19、ill be negative, opposing the incremental slip. Penalty contact includes an elastic slip regime due to finite penalty stiffness, so occasionally, during recovery of elastic slip, the stick force will be negative, indicating that it is appropriate for the first component of the frictional force to be
20、 positive (i.e., acting in the same direction as the incremental slip). A noisy or unstable solution is likely to result if the first component of fTangential is set outside of the range between zero and negative the value of the stick force.在子程序的局部坐标系中的每一个接触点上,你要指定摩擦力,fTangential。ftangential数组被标出,这
21、样只有切线分量能够被标明。任何没有标明的摩擦力分量将仍为0。对三维各向同性的摩擦接触,只有摩擦力的第一个分量需要被表明出来,既然第二个分量为0。在数组fStickForce每个接触点上提供了一个“粘附力”来帮助你设定恰当的摩擦力值。该粘附力是避免额外的“塑性”滑移所需要的力。每一个接触点上的粘附力都是标量,它能够沿着与相反的方向。该粘附力在调用用户子程序之前就被或者动态接触算法或者罚接触算法计算出来。See “Contact constraint enforcement methods in Abaqus/Explicit,” Section 34.2.3 of the Abaqus Anal
22、ysis Users Manual,After user subroutine VFRIC is called, frictional forces that oppose the forces specified at the contact points are distributed to the master nodes. For balanced master-slave contact we then compute weighted averages of the frictional forces for both master-slave orientations. Thes
23、e forces are directly applied if the penalty contact algorithm is being used. If the kinematic contact algorithm is being used, the frictional forces are converted to acceleration corrections by dividing by the nodal masses.User subroutine interface(用户子程序界面)subroutine vfric(C Write only - 1 fTangent
24、ial, C Read/Write - 2 statev,C Read only - 3 kStep, kInc, nContact, nFacNod, nSlvNod, nMstNod, 4 nFricDir, nDir, nStateVar, nProps, nTemp, nPred, numDefTfv, 5 jSlvUid,jMstUid, jConSlvid, jConMstid, timStep, timGlb, 6 dTimCur, surfInt, surfSlv, surfMst, lContType, 7 dSlipFric, fStickForce, fTangPrev,
25、 fNormal, frictionWork, 8 shape, coordSlv, coordMst, dirCosSl, dircosN, props, 9 areaSlv, tempSlv, preDefSlv, tempMst, preDefMst) C include vaba_param.incC character*80 surfInt, surfSlv, surfMstC dimension props(nProps), statev(nStateVar,nSlvNod), 1 dSlipFric(nDir,nContact), 2 fTangential(nFricDir,n
26、Contact), 3 fTangPrev(nDir,nContact), 4 fStickForce(nContact), areaSlv(nSlvNod), 5 fNormal(nContact), shape(nFacNod,nContact), 6 coordSlv(nDir,nSlvNod), coordMst(nDir,nMstNod), 7 dirCosSl(nDir,nContact), dircosN(nDir,nContact), 8 jSlvUid(nSlvNod), jMstUid(nMstNod), 9 jConSlvid(nContact), jConMstid(n
27、FacNod,nContact) 1 tempSlv(nContact), preDefSlv(nContact,nPred), 2 tempMst(numDefTfv), preDefMst(numDefTfv,nPred) user coding to define fTangential and, optionally, statev return endVariable to be definedfTangential(nFricDir, nContact)为摩擦力分量矩阵,不存在摩擦力时,它为零矩阵,一直到人为地更新重设为止;This array must be updated to
28、 the current values of the frictional force components for all contact points in the local tangent directions. See Figure 1.2.41 and Figure 1.2.42 for definition of the local coordinate system. This array will be zero (no friction force) until you reset it.Variable that can be updatedstatev(nstateVa
29、r, nSlvNod):该矩阵包含了从接触面所有节点上用户定义的solution-dependent状态变量;This array contains the user-defined solution-dependent state variables for all the nodes on the slave surface. You define the size of this array (see “Frictional behavior,” Section 33.1.5 of the Abaqus Analysis Users Manual, for more informatio
30、n). This array will be passed in containing the values of these variables prior to the call to user subroutine VFRIC. If any of the solution-dependent state variables is being used in conjunction with the friction behavior, it must be updated in this subroutine. The state variables are available eve
31、n for slave nodes that are not in contact. This may be useful when, for example, the state variables need to be reset for slave nodes that are not in contact.Variables passed in for informationkStep: 为载荷步; Step number.kInc :为增量步; Increment number.nContact:为发生接触的从接触面节点数; Number of contacting slave no
32、des.nFacNod:值等于2时主接触面为二维,等于3时为三维接触,如果把主接触面作为刚性面,则其值为零; Number of nodes on each master surface facet (nFacNod is 2 for two-dimensional surfaces, nFacNod is 4 for three-dimensional surfaces). If the master surface is an analytical rigid surface, this variable is passed in as 0.nSlvNod:为从接触面节点数 Number
33、of slave nodes.nMstNod:为主接触面节点数; Number of master surface nodes, if the master surface is made up of facets. If the master surface is an analytical rigid surface, this variable is passed in as 0.nFricDir:为接触点处的切向数; Number of tangent directions at the contact points (nFricDir = nDir - 1).nDir:为接触点的参考
34、坐标维数; Number of coordinate directions at the contact points. (In a three-dimensional model nDir will be two if the surfaces in the contact pair are two-dimensional analytical rigid surfaces or are formed by two-dimensional elements.)nStateVar:用户定义的状态变量的数目; Number of user-defined state variables.nPro
35、ps:摩擦模型需要调用的用户定义属性值数目; User-specified number of property values associated with this friction model.nTemp:等于1考虑温度影响,等于0不考虑温度的影响; 1 if the temperature is defined and 0 if the temperature is not defined.nPred:为预定义的场变量数; Number of predefined field variables.numDefTfv: Equal to nContact if the master su
36、rface is made up of facets. If the master surface is an analytical rigid surface, this variable is passed in as 1.jSlvUid(nSlvNod):为用户定义的从接触面节点全局坐标矩阵;This array lists the user-defined global node numbers (or internal node numbers for models defined in terms of an assembly of part instances) of the n
37、odes on the slave surface.jMstUid(nMstNod):为用户定义的主接触面节点全局坐标矩阵; This array lists the user-defined global node numbers (or internal node numbers for models defined in terms of an assembly of part instances) of the nodes on the master surface. If the master surface is an analytical rigid surface, this
38、array is passed in as a dummy array.jConSlvid(nContact):为从接触面发生接触的节点号矩阵; This array lists the surface node numbers of the slave surface nodes that are in contact.jConMstid(nFacNod, nContact):为主接触面发生接触的节点号矩; This array lists the surface node numbers of the master surface nodes that make up the facet
39、with which each contact point is in contact. If the master surface is an analytical rigid surface, this array is passed in as a dummy array.timStep:为时间步的大小; Value of step time.timGlb:为所需的总时间; Value of total time.dtimCur:为当前时间增量; Current increment in time from to .surfInt:为用户指定的相互作用表面的名称,向左对齐; User-s
40、pecified surface interaction name, left justified.surfSlv:为从接触面的名称; Slave surface name.surfMst:为主接触面的名称; Master surface name.lContType:为接触类型标志符; Contact type flag. This flag is set based on the type of constraint enforcement method (see “Contact constraint enforcement methods in Abaqus/Explicit,” Se
41、ction 34.2.3 of the Abaqus Analysis Users Manual) being used: 1 for kinematic contact and 2 for penalty contact. Stick conditions are satisfied exactly with the kinematic contact algorithm; they are satisfied only approximately (subject to an automatically chosen penalty stiffness value) with the pe
42、nalty contact algorithm.dSlipFric(nDir, nContact):为当前时间增量步下的局部坐标系中每个接触点的增量摩擦滑动力; This array contains the incremental frictional slip during the current time increment for each contact point in the current local coordinate system. These incremental slips correspond to tangential motion in the time in
43、crement from to . For penalty contact this incremental slip is used to define the local coordinate system at each contact point (see Figure 1.2.41 and Figure 1.2.42) so that only the first component of dSlipFric can be nonzero in the local system. The contact points for kinematic contact are determi
44、ned based on penetrations detected in the predicted configuration (at ), and the predicted incremental slip direction is used to define the local coordinate system at each contact point. If the slip direction changes between increments, dSlipFric may have a nonzero component in the local 2-direction
45、 and, if the surface is faceted and the contact point moves from one facet to another, in the local 3-direction.fStickForce(nContact):为在每个接触点上执行粘着接触时索要求的摩擦力的大小矩阵; This array contains the magnitude of frictional force required to enforce stick conditions at each contact point. For kinematic contact t
46、his force corresponds to no slip; for penalty contact this force depends on the previous frictional force, the value of the penalty stiffness, and the previous incremental slip. The penalty stiffness is assigned automatically. Occasionally, during recovery of elastic slip associated with the penalty
47、 method, the stick force will be assigned a negative value.fTangPrev(nDir, nContact):为之前载荷步计算出的摩擦力组件值矩阵; This array contains the values of the frictional force components calculated in the previous increment but provided in the current local coordinate system (zero for nodes that were not in contact
48、).fNormal(nContact):当前时间步的最后接触点上的正应力的大小矩阵; This array contains the magnitude of the normal force for the contact points applied at the end of current time increment; i.e., at time .frictionWork:为分析过程中整个模型的所有摩擦损耗大小; This variable contains the value of the total frictional dissipation in the entire model from the beginning of the analysis. The units are energy per unit area.shape(nFacNod, nContact):为主接触面上点的形状函数矩阵; For each contact point this array contains the shape functions of the nodes o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年产70.4万吨锰系合金源网荷储一体化项目可行性研究报告模板-立项备案
- 财务职级晋升述职报告(5篇)
- 多重耐药菌培训知识考题及答案
- 高中语文选择性必修上册课内知识点梳理+检测练习含答案详解
- 学校处置突发事件应急预案
- (2026年)安全生产风险分级管控和隐患排查治理考试试题附答案
- 传染病防治监督技能竞赛试卷(含答案)
- 2025年药品管理法知识考核试题附答案
- 2026输血相关法律法规试题考核试题及答案
- 继电保护防三误规定及措施培训
- 2026广东佛山市顺德区(家电)知识产权快速维权中心招聘事业编制人员3人笔试题库(培优)附答案详解
- 《医疗器械经营质量管理规范》培训试题及答案
- 成都市新都区2026年社区网格员招录考试真题库及完整答案
- 2025内蒙古能源集团招聘(114人)笔试历年备考题库附带答案详解
- AI在水利水电设备中的应用
- (2026年第42号)医药代表管理办法课件
- 中国颅内肿瘤诊治指南(2026版)
- CN117855594B 一种固态聚合物电解质的原位制备方法及其回收方法和锂离子电池 (中国科学院长春应用化学研究所)
- 2025年外贸经理面试题详解及案例解析教程
- 铝单板雨棚施工方案(3篇)
- 无缝钢管基础知识培训课件
评论
0/150
提交评论