- 积分
- 1
- 注册时间
- 2007-7-27
- 仿真币
-
- 最后登录
- 1970-1-1
|
本帖最后由 junl06 于 2009-4-20 20:34 编辑
我在编制UMAT的时候,需要用到递归,递归的次数由增量数(KINC)决定,但是最后子程序老是通不过,说出现The executable C:\ABAQUS\6.5-1\exec\standard.exe aborted with system error code 253. ....的错误,
子程序的框架如下:
SUBROUTINE UMAT(STRESS.....)
.......
DO k1=1,NTENS
DSTRES(k1)=0.0
STRESS(K1)=0.0
END DO
s1(kinc)=....
.......
end
recursive real function s1(kinc) result(ans1)
if (kinc<=0)then
ans1=0.0
return
else if (kinc==1)then
ans1=......
return
else
ans1=8*s1(kinc-1)......
return
end if
ans1=s1(kinc)
return
end
请高手指点
还有就是上面的子程序在 UMAT中,若没有:
DO k1=1,NTENS
DSTRES(k1)=0.0
STRESS(K1)=0.0
END DO
则程序不能运行,但是这样是否使得每次调用UMAT的时候应力和应力增量都变成0了?前面的计算没有保存呢?不知道为啥?
s1是递归函数 |
|