UDMGEVO2 允许您指定单向复合材料的损坏演变。
可在成分级别(纤维和基体)或复合材料级别定义损坏演变。此例程将在每次平衡迭代时针对单向复合材料(您为其请求用户损坏演变例程)的积分点进行调用。下面是 UDMGEVO2 界面的样板。
SUBROUTINE UDMGEVO2(HMAT, HPROP, NPROPS, PROPS, NSDV, SDV, STRAIN, STRESS, DFGRD, DELT, LE, &
EC, EF, EM, AC, AF, AM, IFAIL, MSTATE, REASON, CCREQD)
USE HELIUS
IMPLICIT NONE
INTEGER(HANDLE), INTENT(IN) :: HMAT
INTEGER(HANDLE), INTENT(IN) :: HPROP
INTEGER, INTENT(IN) :: NPROPS
INTEGER, INTENT(IN) :: NSDV
INTEGER, INTENT(IN) :: IFAIL(3)
INTEGER, INTENT(IN) :: MSTATE
INTEGER, INTENT(IN) :: REASON
INTEGER, INTENT(IN) :: CCREQD
REAL(8), INTENT(IN) :: PROPS(NPROPS)
REAL(8), INTENT(IN) :: STRAIN(6,8)
REAL(8), INTENT(IN) :: STRESS(6,8)
REAL(8), INTENT(IN) :: DFGRD(3,3)
REAL(8), INTENT(IN) :: DELT
REAL(8), INTENT(IN) :: LE
REAL(8), INTENT(OUT) :: EC(6,6)
REAL(8), INTENT(OUT) :: EF(6,6)
REAL(8), INTENT(OUT) :: EM(6,6)
REAL(8), INTENT(OUT) :: AC(6)
REAL(8), INTENT(OUT) :: AF(6)
REAL(8), INTENT(OUT) :: AM(6)
REAL(8), INTENT(INOUT) :: SDV(NSDV)
... user coding to update EC, EF, EM, AC, AF, AM, and SDV here ...
RETURN
ENDSUBROUTINE
HMAT:
一个指向当前材料的句柄。这将传递到信息例程,以便访问材料的相关信息。
HPROPR:
一个指向当前材料特性的句柄。这将传递到信息例程,以便访问材料特性的相关信息。
NPROPS:
HIN 文件中的“*USER PROPERTIES”关键字指定的用户特性数。
NSDV:
HIN 文件中“*DEPVAR, NUM=<NSDV>”请求的用户状态变量数。
IFAIL:
复合材料、基体和纤维失效的当前状态。请参见 UDMGINI2 页面上对 IFAIL 的描述,以了解每个值表示的损伤状态。
MSTATE:
材料的当前总体状态。这包括当前材料模型中存在的所有非线性形式。此值应仅用于传递至信息例程,以便获取有关材料的详细信息,例如当前材料特性。
REASON:
确定 UDMGEVO2 子例程是在迭代开始时调用还是在应力已计算后调用的限定符。
CCREQD:
指示是否需要成分刚度和成分热膨胀系数的标记。在某个给定积分点发生纤维失效后,CCREQD 将恢复为零并且成分刚度将不再更新。
PROPS:
HIN 文件中“*USER PROPERTIES”关键字指定的用户特性。
STRAIN:
复合材料、基体和纤维的当前总应变(力学和热应变)。第一列 (STRAIN(:,1)) 包含复合材料应变,第二列和第三列分别包含基体应变和纤维应变。应变的排列顺序如下:ε11、ε22、ε33、γ12、γ13、γ23。应变根据纤维坐标系进行定向(1 - 轴平行于纤维长度)。材料定义中指定的纤维方向不会影响应变(和应力)的方向。
STRESS:
复合材料、基体和纤维的当前总应力。此二维阵列的值采用与 STRAIN 阵列相同的方式进行排列。
DFGRD:
变形梯度。这仅在非线性几何效应处于启用状态时才有用。项的排列形式如下所示。
DELT:
无应力温度和当前温度之间的温差。这包括粘弹性冷却近似值(如果适用)。
LE:
特征单元长度。此数值在整个分析中保持不变,不考虑单元的任何变形。对于 ANSYS 用户,该数值始终为 1。
EC:
复合材料割线刚度矩阵。
EF:
纤维割线刚度矩阵。仅当 CCREQD = 1 时需要。
EM:
基体割线刚度矩阵。仅当 CCREQD = 1 时需要。
AC:
复合材料 CTE 矢量。
AF:
纤维 CTE 矢量。仅当 CCREQD = 1 时需要。
AM:
基体 CTE 矢量。仅当 CCREQD = 1 时需要。
SDV:
HIN 文件中“*DEPVAR, NUM=”关键字请求的用户状态变量。