运行一下fortran安装文件夹中的 \Intel\Compiler\111\038\bin\ia32\ifortvars_ia32bat
或者ifortvars_ia64bat先,设置一下fortran环境。
首先介绍几个子程序:
一.SUBROUTINE DLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS, JLTYP,SNAME)
参数:
1. F为用户定义的是每个积分点所作用的荷载的大小;
2. KSTEP,KINC为ABAQUS传到用户子程序当前的STEP和INCREMENT值;
3. TIME(1),TIME(2)为当前STEP TIME和INCREMENT TIME的值;
4. NOEL,NPT为积分点所在单元的编号和积分点的编号;
5. COORDS为当前积分点的坐标;
6. 除F外,所有参数的值都是ABAQUS传到用户子程序中的。
功能:
1. 荷载可以被定义为积分点坐标、时间、单元编号和单元节点编号的函数。
2. 用户可以从其他程序的结果文件中进行相关 *** 作来定义积分点F的大小。
例1:这个例子在每个积分点施加的荷载不仅是坐标的函数,而且是随STEP变化而变化的。
SUBROUTINE DLOAD(P,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS,
1 JLTYP,SNAME)
INCLUDE 'ABA_PARAMINC' C
DIMENSION TIME(2),COORDS(3)
CHARACTER80 SNAME
PARAMETER (PLOAD=100E4)
IF (KSTEPEQ1) THEN !当STEP=1时的荷载大小
P=PLOAD
ELSE IF (KSTEPEQ2) THEN !当STEP=2时的荷载大小
P=COORDS(1)PLOAD !施加在积分点的荷载P是坐标的函数
ELSE IF (KSTEPEQ3) THEN !当STEP=3时的荷载大小
P=COORDS(1)2PLOAD
ELSE IF (KSTEPEQ4) THEN !当STEP=4时的荷载大小
P=COORDS(1)3PLOAD
ELSE IF (KSTEPEQ5) THEN !当STEP=5时的荷载大小
P=COORDS(1)4PLOAD
END IF
RETURN
END
说明:
输入变量
分段数组x
分段点一般在集中力,集中力偶作用出和分布载荷的起末端。
载荷数组MPQ
若梁上的外载荷总数为PN,则用PN行四列的数组MPQ储存载荷,数组MPQ第一列代表载荷的类型:1为集中力偶,2为集中力,3为分布载荷,第二列代表载荷的大小,第三列代表集中力,集中力偶或者分布载荷左端与简支梁左端的距离,第四列代表均匀载荷右端与简支梁左端的距离,当载荷为集中力或者集中力偶时,第四列为0
符号规定
集中力和均匀载荷向下为正,向上为负,集中力偶顺时针为正,逆时针为负。
输出变量
内力数组XQM
如果梁被分为NN-1段,则内力数组XQM为NN行,三列的数组,第一列代表梁的横截面的位置,第二列代表剪力,第三列代表弯矩。
剪力极值及位置QDX
QDX是一个二行二列的数组,第一列代表极值所在的位置,第二列代表极值
弯矩极值及位置MDX
MDX是一个二行二列的数组,第一列代表极值所在的位置,第二列代表极值
子程序
集中力偶对弯矩贡献的子函数QMM
集中力对剪力和弯矩贡献的子函数QMP
分布载荷对剪力和弯矩贡献的子函数QMQ
求剪力和弯矩极值的子函数MAX_MIN
绘制剪力图和弯矩图的子函数TU_QM
计算分析程序
简支梁QMDJ
左端固定悬臂梁QMDXZ
右端固定悬臂梁QMDXY
左端外伸梁QMDWZ
右端外伸梁QMDWY
两端外伸梁QMDWL
以上就是关于求助ABAQUS子程序运行错误全部的内容,包括:求助ABAQUS子程序运行错误、如何用matlab 绘制简支梁剪力图弯矩图、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)