- 积分
- 0
- 注册时间
- 2006-11-30
- 仿真币
-
- 最后登录
- 1970-1-1
|
本帖最后由 hup0321 于 2010-5-31 10:53 编辑
我是将某一个odb文件的积分点应力输出到rpt文件,然后在子程序中用open和read命令读取相关的应力,发现总是出现错误。
子程序里面相关读取命令如下:
OPEN (UNIT=10,FILE="E:\abaquswork\residual stress\Progress test
1\ABAQUS.RPT")
READ (10,"(I16,I16,F16.3)",IOSTAT=NSTATUS)NEL,NNOD,S
WRITE(6,"(3A16)")'NOEL','NPT','S'
WRITE(6,"(I16,I16,F16.3)")NEL,NNOD,S
RPT文件里面某几行是这样的
24 1 8.75786 3.91448 -1.15541 0.
24 2 13.4044 -1.43178 -11.5089 0.
24 3 52.0834 45.651 -2.64068 0.
24 4 25.4364 -12.7433 -667.252E-03 0.
然后程序运行之后dat文件可以读取到数据,如下:
NOEL NPT SMISES
24 1 8.758
NOEL NPT SMISES
24 2 13.404
NOEL NPT SMISES
24 3 52.083
NOEL NPT SMISES
24 4 25.436
其中NEL,NNOD,S分别代表单元号,积分点号,积分点应力
可以看出,这些参数都正确的读取到了,但是最后程序总是报错,msg文件里面有如下错误信息:
***ERROR: DIRECT ACCESS I/O ERROR ON UNIT 10. OUT OF DISK SPACE OR DISK QUOTA EXCEEDED.
我看了下,发现每次读取完毕之后,那个rpt文件都被自动删除了,数据是读到了,但是我的原文件被删除了,导致错误,这是怎么回事呢? |
|