SEISGAMA: a Free C# Based Seismic Data Processing Software Platform
Total Page:16
File Type:pdf, Size:1020Kb
Hindawi International Journal of Geophysics Volume 2018, Article ID 2913591, 8 pages https://doi.org/10.1155/2018/2913591 Research Article SEISGAMA: A Free C# Based Seismic Data Processing Software Platform Theodosius Marwan Irnaka, Wahyudi Wahyudi, Eddy Hartantyo, Adien Akhmad Mufaqih, Ade Anggraini, and Wiwit Suryanto Seismology Research Group, Physics Department, Faculty of Mathematics and Natural Sciences, Universitas Gadjah Mada, Sekip Utara Bulaksumur, Yogyakarta 55281, Indonesia Correspondence should be addressed to Wiwit Suryanto; [email protected] Received 4 July 2017; Accepted 24 December 2017; Published 30 January 2018 Academic Editor: Filippos Vallianatos Copyright © 2018 Teodosius Marwan Irnaka et al. Tis is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Seismic refection is one of the most popular methods in geophysical prospecting. Nevertheless, obtaining high resolution and accurate results requires a sophisticated processing stage. Tere are many open-source seismic refection data processing sofware programs available; however, they ofen use a high-level programming language that decreases its overall performance, lacks intuitive user-interfaces, and is limited to a small set of tasks. Tese shortcomings reveal the need to develop new sofware using a programming language that is natively supported by Windows5 operating systems, which uses a relatively medium-level programming language (such as C#) and can be enhanced by an intuitive user interface. SEISGAMA was designed to address this need and employs a modular concept, where each processing group is combined into one module to ensure continuous and easy development and documentation. SEISGAMA can perform basic seismic refection processes. Tis ability is very useful, especially for educational purposes or during a quality control process (in the acquisition stage). Tose processes can be easily carried out by users via specifc menus on SEISGAMA’s main user interface. SEISGAMA has been tested, and its results have been verifed using available theoretical frameworks and by comparison to similar commercial sofware. 1. Introduction Recently,alargenumberofopen-sourcesofwarepro- gramshaveemergedthatcanbeusedtoprocessseismic Geophysics is a branch of physics that studies physical refection data; however, each program has its own dis- properties of the earth, such as mass density, seismic wave advantages. For example, Seismic Un∗x[6]hasareally speed, electrical resistance, and magnetic properties [1–3] good ability to process seismic refection data, but it has from surface measurements. Tese physical properties can be no intuitive user interface and depends on a command-line further used to image subsurface geological conditions of the interface. Templeton and Gough [7] developed a web-based earth. One of the most popular methods in geophysics is the seismicdataprocessingtoolbasedontheSeismicUn∗x seismic refection method. Tis method is very sensitive to platform.Troughthiswebservice,userscanfll-outtheform a rock’s acoustic impedance variation, which is characterized provided by the server, and the input data will be queued by seismic waves refected in each interface of the subsurface on a parallel processing scheduler application. In this sense, layer or structure. Acoustic impedance is denoted by the the online service is a good concept, but the performance product of rock density and seismic wave speed within a is limited to user interaction via a form-based input with certain medium. Seismic refection is very popular, especially limited resources on the server side. DSISof, which was in the oil and gas industry, because this method yields high developedbyBeatyetal.[8],isaverticalseismicproflingdata resolution subsurface images of geological structures [4]. processor based on the MATLAB5 programming language. Te seismic refection method is also useful in engineering, MATLAB is a popular as programming language because environmental, geohazard, and ground-water exploration, as it has a library of common mathematical and engineering discussed by Steeples and Miller [5]. functions. Unfortunately, it has a large computational cost 2 International Journal of Geophysics as data size increases and is thus inefcient compared to a developed in this research consists of amplitude correction, lower level programming language (e.g., C, Fortran, and C#). muting, �-� and �-� domain transform, velocity analysis, A comparison between MATLAB and C, made by Andrews normal moveout (NMO) correction, and traces stacking. [9], shows signifcant speed diferences; He determines that a Tese processing steps combine into one trace with a high C program is up to 546 times faster than a MATLAB program. signal to noise ratio (SNR). A more comprehensive seismic refection data processing A more detailed explanation of the processing steps implementation in MATLAB was developed by Mousa and follows. Al-Shuhail, [10]. Another example is SEISPRHO [11], sof- ware developed in Lazarus Pascal Language, which can be 2.1. Amplitude Correction. Amplitude correction was per- used to interpret seismic refection and is enhanced with formed to compensate seismic signal weakening, which simple processing tools. Tis sofware is mainly developed for decreases exponentially as a function of time due to attenua- interpretation purposes. tion and geometrical spreading. Campillo et al. [20] explains Te recent popularity of Python, another high-level that this phenomenon ofen holds in some regional seismic programming language that is free and reliable, has many phases. Te phenomenon is also described by geometrical features to handle numerical problems and has high quality spreading [21]. Amplitude attenuation may be exploited via graphics. It is increasingly being used to develop geophysical an exponential or oscillatory equation; therefore, the ampli- data processing sofware [12, 13]. One of the advantages of tude correction can be formulated as an exponential equation Python is its ability to be installed on a server so that the appli- (1). �AGC is seismic data afer amplitude correction, �(�) is cation can be accessed remotely (e.g., [14]). Schwehr [15] has thedatabeforeamplitudecorrection,and� is an exponential developedanapplicationcalledseismic-py, which provides constant. Tis equation is an example of amplitude correction an infrastructure for creating and managing a Python library for a data-independent method. Afer amplitude correction, for each seismic data format. Rizvandi et al. [16] detailed the thesignalhasamplitudewithnoattenuationastherecording performance of an implementation of the Prestack Kirchhof time is increased. Time Migration in Python. Tere is currently no complete �� application that is built entirely with Python (i.e., ready to use �AGC (�) =�(�) � . (1) without combining the Python library to another library), as this would require specialized Python programming skills, at 2.2. Muting. Te muting process removes unused parts of least the basic ability to program in Python. the seismic recording. Tis process is very important because To the best of our knowledge, there is no other free in the seismic refection method, only the refection signal seismic refection data processing sofware program built will be considered, and other signals, such as those from with the C# programming language that has a complete direct waves, ground-roll, or refraction, must be removed. seismic processing toolbox, can process raw data from feld Te muting process is carried out by defning the area to be recordings, and includes an intuitive and appealing user removed frst, and then, SEISGAMA will automatically make interface. Te C# programming language was considered the amplitude of that region equal to zero. due to its native compatibility with the most popular oper- ating system, that is, Windows. Netmarketshare states that 2.3. �-� and �-� Transformation. Seismicdataistypically approximately 81% of desktop users have a Windows XP or represented in time-domain versus (range or) distance (�- newer operating system installed on their computers [17]. �). Te �-� transformation is carried out by using a 1D Te C# programming language is ofcially supported and Fourier transform and is applied to the transformation for periodically updated by Windows and included on a .NET each seismic trace in the data. Tis will transform the time (dot NET) platform [18, 19]. Developing applications natively series data into frequency domain data. Te results are then supported on Windows operating systems ensures long-term displayed in terms of distance (�-axis) and frequency (�- and continuous sofware development. Enhanced with an axis). Te Fourier transformation is expressed by intuitive user interface, SEISGAMA can easily be used by ∞ beginner or advanced users, and it is particularly useful −��� � (�) = ∫ � (�) � �� = �� (� (�)) . (2) for undergraduate geophysics students as they are learning −∞ processes. Te need for reliable and free seismic processing � � sofware has long been awaited, especially since the price Te - transform utilizes the 2D Fourier transformation to transform a time-domain version of each seismic trace of oil became variable. Tis sofware may ensure that oil 1/� explorationcanberesumedwithlowerassociatedcosts. into the frequency domain in andtransformthespatial domain of data into wave number (1/�). In this transfor- mation, seismic data in time (�) versus