1

Fortran を使用して、多くのファイルに分割された巨大なデータ セットの計算を行っています。ファイルの名前は次のとおりです。

maltoLyo12per-reimage-set1.traj
maltoLyo12per-reimage-set2.traj
maltoLyo12per-reimage-set3.traj

計算を行うために私が書いたコードは次のとおりです。

fileLoop: do j = 31, 34

 OPEN(unit=31,status='old',file=fileplace//'maltoLyo12per-reimage-set1.traj')
 OPEN(unit=32,status='old',file=fileplace//'maltoLyo12per-reimage-set2.traj')
 OPEN(unit=33,status='old',file=fileplace//'maltoLyo12per-reimage-set3.traj')
 OPEN(unit=34,status='old',file=fileplace//'maltoLyo12per-reimage-set4.traj')

 ... operation....

close (j)
end do fileLoop

実行中、コードで一度に各ファイルを開き、計算が終了したら閉じるようにします。ただし、上記のコードはすべてのファイルを一度に開き、計算が終了すると 1 つずつ閉じます。

だから私は以下のようなコードを変更しようとしました:

fileLoop: do j = 31, 34

 OPEN(unit=j,status='old',file=fileplace//'maltoLyo12per-reimage-set1.traj')

close (j)
end do fileLoop

しかし、ここでファイル名の問題に直面しています。ループが実行されるたびに、ファイル名に「set1」という語句が含まれているため、ファイル名は変更されません。ファイル名の番号をset1、set2、set3などのように変更し、その後ファイルユニット番号31、32、33、34などに変更したい.

4

1 に答える 1