arrowzero 发表于 2023-7-14 12:55:49

abaqus计算,文件读取,fortran语法save

以下 是我abaqus dflux子程序的一段,想要实现对文件的一次读写,使用了data ii/1/, 并进行保存,然后再最后一句使用print打ii输出结果,在log文件里发现输出的i全是以下结果:
Run standard.exe
         2411076423557
         2411076423557
         2411076423557
         2411076423557
         2411076423557
         2411076423557
         ....
         241 1076423557
而且我的分析步只进行了一次增量步,但是输出的ii有三十万行。这个abaqus的计算步骤是怎么进行的啊。   
子程序语言:   
      data ii /1/
      save ii
      save TT
      save WENDU

      if(ii.eq.1) then
      !读入温度数据
      ii =2
      call ReadDate(TT,WENDU,ntime)
      end if
      ! 对应时间步长
      do 100 j = 1,ntime
      if (TIME(2).ge.TT(j).and.TIME(2).lt.TT(j+1)) then
          SINK = WENDU(j)+(TIME(2)-TT(j))/(TT(j+1)-TT(j))*(WENDU(j+1)-
   1WENDU(j))
          PRINT*,ntime,ii


arrowzero 发表于 2023-7-14 12:58:08

SUBROUTINE ReadDate(TT,WENDU,ntime)
C
      INCLUDE 'ABA_PARAM.INC'
C
      DIMENSION TT(ntime),WENDU(ntime)
      
      open(12,file='D:\abaqusworks\abaqus\temperature.txt')
      do 10 i=1,ntime
          read(12,*) TT(i),WENDU(i)
10      continue
          close(12)
      RETURN
      END

arrowzero 发表于 2023-7-14 12:58:45

parameter(ntime=241)
页: [1]
查看完整版本: abaqus计算,文件读取,fortran语法save