B_S模式SEGY格式地震數(shù)據(jù)的讀取與演示_第1頁
B_S模式SEGY格式地震數(shù)據(jù)的讀取與演示_第2頁
B_S模式SEGY格式地震數(shù)據(jù)的讀取與演示_第3頁
B_S模式SEGY格式地震數(shù)據(jù)的讀取與演示_第4頁
B_S模式SEGY格式地震數(shù)據(jù)的讀取與演示_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

B_S模式SEG-Y格式地震數(shù)據(jù)的讀取與演示【摘要】本文詳細(xì)介紹SEG-Y文件的組成,在對SEG-Y詳細(xì)研究的基礎(chǔ)上,研究B/S模式下,用戶遠(yuǎn)程對服務(wù)器提供的SEG-Y資源文件進(jìn)行讀取與演示。研究主要基于.NET平臺,使用ASP.NET動態(tài)網(wǎng)站開發(fā)技術(shù),代碼主要由C#編寫,最終實現(xiàn)用戶對SEG-Y的讀取,完成地震剖面圖的繪制?!娟P(guān)鍵詞】B/S;剖面圖;遠(yuǎn)程演示;SEG-Y中圖分類號:P315文獻(xiàn)標(biāo)識碼:A文章編號:1緒論SEG-Y地震數(shù)據(jù)是地球物理領(lǐng)域運用很廣泛的一種數(shù)據(jù)存儲格式,本文從理論和實踐兩個角度出發(fā),通過設(shè)計和實現(xiàn)一個基于.NET的SEG-Y瀏覽系統(tǒng),深入探討和了解B/S模式結(jié)構(gòu),ASP.NET在動態(tài)網(wǎng)站建設(shè)方面的優(yōu)勢和SEG-Y文件的分析讀取與演示。2開發(fā)技術(shù)本文主要使用ASP.NET動態(tài)網(wǎng)頁開發(fā)技術(shù),網(wǎng)頁后臺程序由C#語言編寫,前臺使用HTML+CSS實現(xiàn),客戶端動態(tài)數(shù)據(jù)驗證使用js。3SEG-Y文件分析3.1SEG-Y文件組成3.1.1組成簡介SEG-Y文件由文件頭文件和數(shù)據(jù)體兩部分組成。文件頭記錄了此文件的各項參數(shù),為文件的進(jìn)一步讀取給出必要信息。數(shù)據(jù)體則是文件的主體部分,它記錄了主要的地震數(shù)據(jù),是繪圖的依據(jù)。3.1.2文件頭文件介紹與分析文件頭總長度為3600字節(jié),分兩部分:第一部分為字符型文件頭,文件頭第二部分為二進(jìn)制文件頭。3.1.3數(shù)據(jù)體部分介紹與分析數(shù)據(jù)體由多個數(shù)據(jù)道組成,每道數(shù)據(jù)分兩部分:道頭和采樣數(shù)據(jù)。3.2SEG-Y文件處理及實現(xiàn)3.2.1SEG-Y文件字符型文件頭(TextualFileHeader)處理及實現(xiàn)字符型文件頭數(shù)據(jù)由EBCDIC代碼組成,所以,必須將其轉(zhuǎn)換為ASCII代碼才可以正確顯示。具體方法是建立兩種代碼關(guān)系對應(yīng)表,每次讀入一個字節(jié)EBCDIC代碼,循環(huán)查找EBCDIC代碼表,找出它在EBCDIC表中的位置,在返回ASCII代碼表中對應(yīng)位置的ASCII代碼。3.2.2SEG-Y文件二進(jìn)制文件頭(BinaryFileHeader)處理及實現(xiàn)二進(jìn)制文件頭由16位和32位二進(jìn)制數(shù)據(jù)構(gòu)成,但在讀取其中的各參數(shù)值時就要注意,SEG-Y文件以工作站的存儲格式存儲。工作站中的二進(jìn)制數(shù)據(jù)是高字節(jié)在前,低字節(jié)在后面;而微機中的數(shù)據(jù)則是低字節(jié)在前,高字節(jié)在后。我們采用先通過FileStream將400個字節(jié)的文件信息讀入內(nèi)存,400字節(jié)數(shù)據(jù)按從低地址到高地址的順序存放在一個數(shù)組中,然后根據(jù)數(shù)據(jù)的存儲位數(shù),決定轉(zhuǎn)換字節(jié)數(shù),如讀取16位數(shù)據(jù),先讀取第一個字節(jié)放入一個16位臨時整型數(shù)中,將整型數(shù)據(jù)左移8位,然后,再讀入下一字節(jié),將其放入另一個16位臨時整型數(shù)中,最后,將臨時16位數(shù)按位或,得到16位微機格式的地震數(shù)據(jù)。3.2.3SEG-Y文件道頭文件(TraceHeader)的處理及實現(xiàn)道頭與二進(jìn)制文件頭數(shù)據(jù)存儲相同,所以,可以采用相同的數(shù)據(jù)處理方式,這里不再贅述。3.2.4SEG-Y文件道數(shù)據(jù)(TraceData)的處理及實現(xiàn)道數(shù)據(jù)格式與二進(jìn)制頭文件的控制位有關(guān),長度由道采樣點數(shù)及采樣點格式共同決定。二進(jìn)制頭文件3225-3226字節(jié)標(biāo)志了采樣點數(shù)據(jù)(道數(shù)據(jù))采用的數(shù)據(jù)格式,采樣點數(shù)由道頭115-116字節(jié)給出,若二進(jìn)制文件頭3503-3504字節(jié)標(biāo)志為0,則該文件道長一致,可以根據(jù)二進(jìn)制文件頭3221-3222字節(jié)得出,無需分別讀出每道采樣點數(shù)。若采樣點使用32位數(shù)據(jù)記錄(如:IBM浮點型,IEEE浮點型,4字節(jié)整型),道長則為采樣點數(shù)4字節(jié),若采樣點使用16位數(shù)據(jù)記錄(如:2字節(jié)整型),道長則為采樣點數(shù)2字節(jié)。道數(shù)據(jù)依然是以工作站存儲方式存儲數(shù)據(jù),所以,首先要進(jìn)行高低位轉(zhuǎn)換,然后根據(jù)數(shù)據(jù)類型,轉(zhuǎn)換為微機存儲格式以便讀出。SEG-Y道數(shù)據(jù)主要用IBM浮點型數(shù)據(jù)記錄,后來也常用IEEE浮點型數(shù)據(jù)記錄。這里主要介紹IBM浮點數(shù)的存儲格式和轉(zhuǎn)換方法。IBM浮點數(shù)分三部分:符號位(sign)占1位,指數(shù)部分(e)占7位,尾數(shù)部分(m)占24位。所得數(shù)值result=(-1)sign*(m/(224)*16(e-64)。讀取IBM浮點數(shù)具體方法為,先順序讀入道數(shù)據(jù)至數(shù)組,逐個讀出4字節(jié)數(shù)據(jù),每個數(shù)據(jù)先高低位換位(方法同二進(jìn)制文件頭處理方法)。將32位數(shù)右移31位,所剩為符號位,取出保存;將32位數(shù)與0x7f000000按位與,獲得浮點數(shù)指數(shù)部分,保存;將32位數(shù)與0x00ffffff按位與,獲得浮點數(shù)位數(shù)部分,保存。IBM浮點數(shù)符號位0表示正數(shù),1表示負(fù)數(shù),指數(shù)部分使用移碼存儲,底數(shù)為16,尾數(shù)部分為實數(shù)小數(shù)點后數(shù)據(jù)。根據(jù)之前提供計算公式,算出IBM浮點數(shù)微機中表示值。3.3讀取SEG-Y文件整體設(shè)計3.3.1SEG-Y文件整體分析綜合分析,設(shè)計制作字符型文件頭類,二進(jìn)制文件頭類,地震道道數(shù)據(jù)類,SEGY文件類,前三各類分別負(fù)責(zé)各中數(shù)據(jù)文件的讀取,SEGY文件類有前三類組成。3.3.2SEG-Y文件字符型文件頭類設(shè)計字符型文件頭3200個字節(jié),由EBCDIC編碼,只包含對文件的字符描述信息,所以,此類主要負(fù)責(zé)讀出3200字節(jié)的字符信息,將其轉(zhuǎn)換為ASCII后返回。3.3.3SEG-Y文件二進(jìn)制文件頭類設(shè)計二進(jìn)制文件頭包含對SEG-Y整個文件的描述信息,對后續(xù)文件的處理有重要作用。它緊接在3200字節(jié)字符型文件頭之后,所以,從3201開始讀入文件,經(jīng)逐個轉(zhuǎn)換,得到二進(jìn)制文件頭數(shù)據(jù),存儲在類私有變量中,通過公共屬性供前臺使用。3.3.4SEG-Y文件地震道道數(shù)據(jù)類設(shè)計道數(shù)據(jù)分為道頭數(shù)據(jù)和道地震數(shù)據(jù),道頭按存儲位置存儲有道各種信息,道地震數(shù)據(jù)則是緊密排列的地震采樣點數(shù)據(jù)。讀取地震道數(shù)據(jù)時,首先判斷該文件是否存在附加字符文件頭文件,設(shè)長度為length(若不存在,則長度為零),然后,根據(jù)讀取的道數(shù),設(shè)為tracenum(從1開始計數(shù)),讀取第x道數(shù)據(jù),若道長一定,文件從3600+length+tracenum(采樣點數(shù)采樣點存儲長度+240)讀取,若道長不定,則要逐個讀取,讀取起始位置逐個計算得出。每讀一道數(shù)據(jù),先讀取道頭數(shù)據(jù),讀取方法與讀取二進(jìn)制文件頭相同,不再贅述。讀取道數(shù)據(jù)先判斷數(shù)據(jù)格式,不同格式讀取不同長度數(shù)據(jù),處理也不同。若數(shù)據(jù)格式為IBM浮點型,則道長為采樣點數(shù)4字節(jié),再將IBM浮點型數(shù)據(jù)換算為微機浮點數(shù);若數(shù)據(jù)格式為4字節(jié)整形,則道長為采樣點數(shù)4字節(jié),再將四字節(jié)整型數(shù)據(jù)換算為微機整數(shù);若數(shù)據(jù)格式為2字節(jié)整形,則道長為采樣點數(shù)2字節(jié),再將2字節(jié)整型數(shù)據(jù)換算為微機整數(shù);若數(shù)據(jù)格式為4字節(jié)IEEE浮點型數(shù)據(jù),則道長為采樣點數(shù)4字節(jié),再將四字節(jié)IEEE浮點型型數(shù)據(jù)換算為微機整數(shù)。3.3.5SEG-Y文件類設(shè)計SEG-Y文件類是前三個類的集合,通過它可以初始化和訪問指定SEG-Y文件。4B/S模式SEG-Y格式地震數(shù)據(jù)讀取演示系統(tǒng)設(shè)計實現(xiàn)主要介紹基于B/S模式的SEG-Y格式地震數(shù)據(jù)的讀取演示系統(tǒng)的具體實現(xiàn)過程,并給出一些系統(tǒng)成果展示。4.1設(shè)計方案該系統(tǒng)采用B/S模式設(shè)計,分為前后臺兩個部分:4.1.1前臺設(shè)計前臺是面向用戶提供服務(wù)的系統(tǒng)部分:(1)用戶登錄(2)首頁(3)文件目錄(4)詳細(xì)信息(5)個人中心。4.1.2后臺設(shè)計后臺是系統(tǒng)管理部分,它包括以下部分:(1)管理員登錄(2)首頁(3)文件管理(4)用戶管理。4.2剖面圖繪制實現(xiàn)剖面圖繪制使用了ASP.NET的GDI+,GDI+是圖形設(shè)備接口(GDI)的高級版,它提供了各種豐富的圖形圖像處理功能,主要有二維矢量圖形,圖像處理和版式3部分組

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論