前一阵子,遇到修改地震数据道头的问题,很多软件没有这个功能,遂自己动手,查阅了大量文献资料。无奈我自己只会fortran,就写写吧,反正数值处理和计算并不需要很多界面。。。
下面是子程序
!C+-----------------------------------------------------------------------+
!C| Module : SGY文件读写模块(简版) |
!C| Last modified :10-22-2019 |
!C| Written by : LAUQRU |
!C| 主要功能: 1、支持IBM格式、IEEE格式、无卷头PC格式 |
!C| 2、自动判断文件格式 |
!C| 3、自动读取采样长度、采样率及道数 |
!C+-----------------------------------------------------------------------+
|
!C+-----------------------------------------------------------------------+
module SGYmodule
implicit none
contains
!C+-----------------------------------------------------------------------+
!C| Subroutine : GetFileLength |
!C| Last modified : 10-22-2019 |
!C| Written by : LAUQRU |
!C| 主要功能: 1、获得文件大小 |
!C+-----------------------------------------------------------------------+
Subroutine GetFileLength( FileName,Length )
! USE DFPORT
implicit none
character(len=128)::FileName
Integer(kind=4)::Length
INTEGER*4 ierr, statb(13)
ierr = STAT ( FileName, statb )
if ( ierr .ne. 0 ) stop 'stat: error'
Length = statb(8)
End Subroutine
!C+-----------------------------------------------------------------------+
!C| Subroutine : PREREAD |
!C| Last modified : 10-22-2017 |
!C| Writt