计算化学公社

标题: fortran建立文件夹并按序建立文件的程序。 [打印本页]

作者
Author:
didi_dudu    时间: 2018-10-16 11:10
标题: fortran建立文件夹并按序建立文件的程序。
最近测试CCD(coupled cluster doubles approximation)计算效率时候发现双电子积分矩阵太大时(四个空轨道的双电子积分,在硬盘上大概有60个G),使用了‘direct’在硬盘上存储双电子积分,读取速度会变的很慢。也不知道是什么原因。。。
然后自己想尝试下在存储双电子积分时候直接多开一点文件。 在网上搜了搜教程之后自己凑了个代码,能实现创建文件夹并且在文件夹下按序列创建程序。但是能力有限,感觉写的特别丑。求大神指导怎样改进能写的漂亮点!
附上代码
==================
     program creat
      implicit none
      integer i
      character(len=50) folder, opt
      character(len=13) filename
      character(len=5) tmpc
      character(len=100) pathname
      folder= 'storage_'
      opt(1:9)='mkdir -p '
      opt(10:17)=folder
      filename(1:8)='test____'
      call system(adjustl(trim(opt)))  ! to create folder
      pathname(1:2)='./'
      pathname(3:10)=folder
      pathname(11:11)='/'
      write(6,*)'pathname', trim(pathname)
      do i = 1,100
         write(tmpc,'(i5.5)') i
         filename(1:8)='test____'
         filename(9:13)=tmpc
         write(6,*)'index of file', tmpc
         pathname(12:24)=filename
         open(unit=i+100,file=trim(pathname), form='unformatted',
     &          access='direct', recl=10000)
         close(i+100)
      enddo

      opt(1:6)='rm -r '
      opt(7:15)=folder
      call system(adjustl(trim(opt)))  ! to rm -r folder
      end


作者
Author:
万里云    时间: 2018-10-16 19:30
要不试试HDF或者NetCDF库?
作者
Author:
didi_dudu    时间: 2018-10-17 07:59
万里云 发表于 2018-10-16 19:30
要不试试HDF或者NetCDF库?

谢谢!下载下来学习下。
----------------------------------
https://www.hdfgroup.org/




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3