Wolfram Mathematica Geofisikan

Eskerrik asko blogaren egileari Anton Ekimenko bere txostenagatik

Sarrera

Konferentziaren harira idatzi zen ohar hau Wolfram Errusiako Teknologia Konferentzia eta nik emandako txostenaren laburpena jasotzen du. Ekitaldia ekainean izan zen San Petersburgon. Konferentzia gunetik bloke bat egiten dudala kontuan hartuta, ezin izan nuen ekitaldi honetara joatea saihestu. 2016an eta 2017an, hitzaldien txostenak entzun nituen, eta aurten aurkezpena egin nuen. Lehenik eta behin, (iruditzen zait) gai interesgarri bat agertu da, eta horrekin garatzen ari garen Kirill Belov, eta bigarrenik, Errusiar Federazioaren legedia zigor politikari buruz luze aztertu ondoren, lan egiten dudan enpresan, bi lizentzia agertu ziren. Wolfram Mathematica.

Nire hitzaldiaren gaiari ekin baino lehen, ekitaldiaren antolaketa ona dela nabarmendu nahi dut. Jardunaldiaren bisita orrialdeak Kazango katedralaren irudi bat erabiltzen du. Katedrala San Petersburgoko erakargarri nagusietako bat da eta oso argi ikusten da hitzaldia egin zen aretotik.

Wolfram Mathematica Geofisikan

San Petersburgoko Estatuko Unibertsitate Ekonomikoaren sarreran, ikasleen arteko laguntzaileek ezagutu zituzten parte hartzaileek - ez zieten galtzen utzi. Izena emateko garaian, oroigarri txikiak banatu ziren (jostailu bat - keinukaria, boligrafoa, Wolfram ikurrak dituzten eranskailuak). Bazkaria eta kafe-atsedenaldiak ere sartu ziren hitzaldiaren egitarauan. Dagoeneko adierazi nuen kafe goxoa eta tarta taldearen horman - sukaldariak bikainak dira. Sarrera atal honekin azpimarratu nahi dut ekitaldia bera, bere formatua eta kokapena dagoeneko emozio positiboak ekartzen ari direla.

Nik eta Kirill Belov-ek prestatu genuen txostena "Using Wolfram Mathematica to solve problems in aplicated geophysics". Datu sismikoen analisi espektrala edo "antzinako ibaiak nondik zihoazen". Txostenaren edukiak bi atal ditu: batetik, eskuragarri dauden algoritmoen erabilera Wolfram Mathematica datu geofisikoak aztertzeko, eta, bigarrenik, Wolfram Mathematica-n datu geofisikoak nola jarri behar dira.

Esplorazio sismikoa

Lehenik eta behin geofisikan txango labur bat egin behar duzu. Geofisika arroken propietate fisikoak aztertzen dituen zientzia da. Bada, arrokek propietate desberdinak dituztenez: elektrikoak, magnetikoak, elastikoak, dagozkien geofisikaren metodoak daude: prospekzio elektrikoa, prospekzio magnetikoa, prospekzio sismikoa... Artikulu honen testuinguruan, prospekzio sismikoa baino ez dugu zehatzago hitz egingo. Esplorazio sismikoa petrolioa eta gasa bilatzeko metodo nagusia da. Metodoa bibrazio elastikoen kitzikazioan eta ondoren azterketa-eremua osatzen duten arroken erantzunaren erregistroan oinarritzen da. Bibrazioak lehorrean (dinamita edo bibrazio elastikoen bibrazio iturri ez-lehergarriekin) edo itsasoan (aire-pistolekin) kitzikatzen dira. Bibrazio elastikoak arroka-masan zehar hedatzen dira, propietate desberdinak dituzten geruzen mugetan errefraktatu eta islatzen dira. Islatutako uhinak lurrazalera itzultzen dira eta lehorreko geofonoek (normalean bobina batean esekita dagoen iman baten mugimenduan oinarritutako gailu elektrodinamikoak) edo itsasoko hidrofonoek (efektu piezoelektrikoan oinarrituta) erregistratzen dituzte. Olatuak iristen direnerako, geruza geologikoen sakonera epai daiteke.

Ontzi sismikoak eramateko ekipoak
Wolfram Mathematica Geofisikan

Aire-pistolak bibrazio elastikoak kitzikatzen ditu
Wolfram Mathematica Geofisikan

Uhinak harkaitz-masatik igarotzen dira eta hidrofonoek erregistratzen dituzte
Wolfram Mathematica Geofisikan

"Ivan Gubkin" ikerketa geofisikorako ontzia San Petersburgoko Blagoveshchensky zubitik gertu dagoen kaian
Wolfram Mathematica Geofisikan

Seinale sismikoen eredua

Arrokek propietate fisiko desberdinak dituzte. Esplorazio sismikorako, propietate elastikoak dira batez ere garrantzitsuak: bibrazio elastikoen hedapen-abiadura eta dentsitatea. Bi geruzek propietate berdinak edo antzekoak badituzte, orduan uhinak "ez du nabarituko" haien arteko mugaz. Geruzetan uhin-abiadurak desberdinak badira, geruzen mugan islapena gertatuko da. Propietateen aldea zenbat eta handiagoa izan, orduan eta biziagoa da isla. Bere intentsitatea islapen koefizientearen (rc) arabera zehaztuko da:

Wolfram Mathematica Geofisikan

non ρ arrokaren dentsitatea den, ν uhinaren abiadura, 1 eta 2-k goiko eta beheko geruzak adierazten dituzte.

Seinale sismikoen eredu sinple eta erabilienetako bat konboluzio eredua da, grabatutako arrasto sismikoa zundaketa-pultsu batekin islapen-koefizienteen sekuentzia baten konboluzioaren emaitza gisa adierazten denean:

Wolfram Mathematica Geofisikan

non s(t) β€” arrasto sismikoa, hau da. Hidrofono edo geofono batek grabazio denbora finko batean grabatutako guztia, w(t) - aire-pistolak sortutako seinalea, n(t) - ausazko zarata.

Kalkula dezagun traza sismiko sintetiko bat adibide gisa. Esplorazio sismikoan oso erabilia den Ricker pultsua erabiliko dugu hasierako seinale gisa.

length=0.050; (*Signal lenght*)
dt=0.001;(*Sample rate of signal*)
t=Range[-length/2,(length)/2,dt];(*Signal time*)
f=35;(*Central frequency*)
wavelet=(1.0-2.0*(Pi^2)*(f^2)*(t^2))*Exp[-(Pi^2)*(f^2)*(t^2)];
ListLinePlot[wavelet, Frame->True,PlotRange->Full,Filling->Axis,PlotStyle->Black,
PlotLabel->Style["Initial wavelet",Black,20],
LabelStyle->Directive[Black,Italic],
FillingStyle->{White,Black},ImageSize->Large,InterpolationOrder->2]

Hasierako bulkada sismikoa
Wolfram Mathematica Geofisikan

Bi muga ezarriko ditugu 300 ms eta 600 ms-ko sakoneran, eta islapen koefizienteak ausazko zenbakiak izango dira.

rcExample=ConstantArray[0,1000];
rcExample[[300]]=RandomReal[{-1,0}];
rcExample[[600]]=RandomReal[{0,1}];
ListPlot[rcExample,Filling->0,Frame->True,Axes->False,PlotStyle->Black,
PlotLabel->Style["Reflection Coefficients",Black,20],
LabelStyle->Directive[Black,Italic]]

Hausnarketa-koefizienteen sekuentzia
Wolfram Mathematica Geofisikan

Kalkulatu eta bistaratu dezagun arrasto sismikoa. Hausnarketa koefizienteek zeinu desberdinak dituztenez, txandakako bi isla lortzen ditugu arrasto sismikoan.

traceExamle=ListConvolve[wavelet[[1;;;;1]],rcExample];
ListPlot[traceExamle,
PlotStyle->Black,Filling->0,Frame->True,Axes->False,
PlotLabel->Style["Seismic trace",Black,20],
LabelStyle->Directive[Black,Italic]]

Pista simulatua
Wolfram Mathematica Geofisikan

Adibide honetarako, beharrezkoa da erreserba bat egitea - errealitatean, geruzen sakonera zehazten da, noski, metrotan, eta traza sismikoaren kalkulua denbora-domeinurako gertatzen da. Zuzenagoa litzateke sakonerak metrotan ezartzea eta geruzen abiadurak jakinda iriste-denborak kalkulatzea. Kasu honetan, berehala ezarri ditut geruzak denbora ardatzean.

Eremuko ikerketei buruz hitz egiten badugu, behaketa horien ondorioz antzeko denbora-serie kopuru handia (arrasto sismikoak) erregistratzen da. Esaterako, 25 km-ko luzera eta 15 km-ko zabalera duen gune bat aztertzean, non, lanaren ondorioz, arrasto bakoitzak 25x25 metroko gelaxka bat ezaugarritzen duen (zelula horri bin deitzen zaio), azken datu-matrizeak 600000 arrasto izango ditu. 1 ms-ko laginketa-denborarekin eta 5 segundoko grabazio-denborarekin, azken datu-fitxategia 11 GB baino gehiagokoa izango da, eta jatorrizko "lehenengo" materialaren bolumena ehunka gigabytekoa izan daiteke.

Haiekin nola lan egin Wolfram Mathematica?

pakete GeologiaIO

Paketearen garapena hasi zen Galdera errusiera hiztunen laguntza taldearen VK horman. Komunitatearen erantzunei esker, oso azkar aurkitu zen irtenbidea. Eta, ondorioz, garapen serioa bihurtu zen. Dagokiona Wolfram Community horma-argitalpena Moderatzaileek ere markatu zuten. Gaur egun, paketeak industria geologikoan aktiboki erabiltzen diren datu mota hauekin lan egitea onartzen du:

  1. mapa-datuen inportazioa ZMAP eta IRAP formatuetan
  2. LAS formatuko putzuetan neurketak inportatzea
  3. fitxategi sismikoen formatuaren sarrera eta irteera SEGY

Paketea instalatzeko, muntatutako paketearen deskarga orrialdeko argibideak jarraitu behar dituzu, hau da. exekutatu hurrengo kodea edozeinetan Matematika koadernoa:

If[PacletInformation["GeologyIO"] === {}, PacletInstall[URLDownload[
    "https://wolfr.am/FiQ5oFih", 
    FileNameJoin[{CreateDirectory[], "GeologyIO-0.2.2.paclet"}]
]]]

Horren ondoren, paketea karpeta lehenetsian instalatuko da, zeinaren bidea honela lor daiteke:

FileNameJoin[{$UserBasePacletsDirectory, "Repository"}]

Adibide gisa, paketearen gaitasun nagusiak erakutsiko ditugu. Deia Wolfram hizkuntzako paketeetarako egiten da tradizionalki:

Get["GeologyIO`"]

Paketea erabiliz garatzen da Wolfram Lantokia. Horri esker, paketearen funtzionalitate nagusia dokumentazioarekin batera eramateko aukera ematen dizu, aurkezpen formatuari dagokionez, Wolfram Mathematica-ren dokumentaziotik bertatik ezberdintzen ez dena, eta paketea proba-fitxategiak eskaintzea lehen ezagutzen duenarentzat.

Wolfram Mathematica Geofisikan

Wolfram Mathematica Geofisikan

Fitxategi hori, bereziki, "Marmousi.segy" fitxategia da - sekzio geologikoaren eredu sintetikoa da, Frantziako Petrolioaren Institutuak garatu zuena. Eredu hau erabiliz, garatzaileek beren algoritmoak probatzen dituzte uhin-eremuen modelizaziorako, datuak prozesatzeko, arrasto sismikoen inbertsiorako, etab. Marmousi eredua bera paketea deskargatu den biltegian gordetzen da. Fitxategia lortzeko, exekutatu kode hau:

If[Not[FileExistsQ["Marmousi.segy"]], 
URLDownload["https://wolfr.am/FiQGh7rk", "Marmousi.segy"];]
marmousi = SEGYImport["Marmousi.segy"]

Inportatu emaitza - SEGYData objektua
Wolfram Mathematica Geofisikan

SEGY formatuak behaketei buruzko hainbat informazio gordetzea dakar. Lehenik eta behin, testu-iruzkinak dira. Bertan, obraren kokapenari buruzko informazioa, neurketak egin dituzten enpresen izenak, etab. Gure kasuan, goiburu hau TextHeader gakoarekin eskaera baten bidez deitzen da. Hona hemen testu-goiburu laburtua:

Short[marmousi["TextHeader"]]

"Marmousi datu-multzoa Institutuan sortu zen ... gutxieneko abiadura 1500 m/s eta gehienez 5500 m/s)"

Benetako eredu geologikoa bistaratu dezakezu aztarna sismikoetara sartuz "arrastoak" tekla erabiliz (paketearen ezaugarrietako bat gakoek maiuskulak eta minuskulak bereizten dituztela da):

ArrayPlot[Transpose[marmousi["traces"]], PlotTheme -> "Detailed"]

Marmousi eredua
Wolfram Mathematica Geofisikan

Gaur egun, paketeak fitxategi handietako datuak zatika kargatzeko aukera ematen du, eta horren tamaina hamarnaka gigabyteraino iritsi daitekeen fitxategiak prozesatzeko aukera ematen du. Paketearen funtzioek datuak .segy-ra esportatzeko eta fitxategiaren amaierari partzialki eransteko funtzioak ere barne hartzen dituzte.

Bereiz, .segy fitxategien egitura konplexuarekin lan egitean paketearen funtzionaltasuna nabarmentzea merezi du. Gakoak eta indizeak erabiliz aztarna eta goiburu indibidualak atzitzeaz gain, aldatzeko eta fitxategi batean idazteko aukera ematen baitu. GeologyIO-ren ezarpenaren xehetasun tekniko asko artikulu honen esparrutik kanpo daude eta ziurrenik aparteko deskribapena merezi dute.

Analisi espektralaren garrantzia esplorazio sismikoan

Wolfram Mathematica-ra datu sismikoak inportatzeko gaitasunak seinaleak prozesatzeko funtzionaltasuna erabiltzeko aukera ematen du datu esperimentaletarako. Aztarna sismiko bakoitzak denbora serie bat adierazten duenez, horiek aztertzeko tresna nagusietako bat analisi espektrala da. Datu sismikoen maiztasun-konposizioa aztertzeko aurrebaldintzen artean, honako hauek aipa ditzakegu, adibidez:

  1. Uhin-mota desberdinak maiztasun-konposizio desberdinak dituzte. Horrek uhin erabilgarriak nabarmentzeko eta interferentzia-uhinak kentzeko aukera ematen du.
  2. Porositatea eta saturazioa bezalako arrokaren propietateek maiztasunaren konposizioan eragin dezakete. Horrek propietate onenak dituzten arrokak identifikatzea ahalbidetzen du.
  3. Lodiera ezberdineko geruzek anomaliak eragiten dituzte maiztasun-tarte desberdinetan.

Hirugarren puntua da artikulu honen testuinguruan nagusia. Jarraian, lodiera ezberdineko geruza baten kasuan, arrasto sismikoak kalkulatzeko kode zati bat dago - ziri eredua. Eredu hau, tradizioz, esplorazio sismikoan aztertzen da, geruza askotatik islatutako uhinak elkarren gainean jartzen direnean interferentzia-efektuak aztertzeko.

nx=200;(* Number of grid points in X direction*)
ny=200;(* Number of grid points in Y direction*)
T=2;(*Total propagation time*)
(*Velocity and density*)
modellv=Table[4000,{i,1,ny},{j,1,nx}];(* P-wave velocity in m/s*)
rho=Table[2200,{i,1,ny},{j,1,nx}];(* Density in g/cm^3, used constant density*)
Table[modellv[[150-Round[i*0.5];;,i]]=4500;,{i,1,200}];
Table[modellv[[;;70,i]]=4500;,{i,1,200}];
(*Plotting model*)
MatrixPlot[modellv,PlotLabel->Style["Model of layer",Black,20],
LabelStyle->Directive[Black,Italic]]

Pinch-out formazio baten eredua
Wolfram Mathematica Geofisikan

Ziriaren barruko uhinen abiadura 4500 m/s-koa da, ziriaren kanpoaldean 4000 m/s-koa, eta dentsitatea 2200 g/cmΒ³ konstantea dela suposatzen da. Eredu horretarako, islapen koefizienteak eta arrasto sismikoak kalkulatzen ditugu.

rc=Table[N[(modellv[[All,i]]-PadLeft[modellv[[All,i]],201,4000][[1;;200]])/(modellv[[All,i]]+PadLeft[modellv[[All,i]],201,4500][[1;;200]])],{i,1,200}];
traces=Table[ListConvolve[wavelet[[1;;;;1]],rc[[i]]],{i,1,200}];
starttrace=10;
endtrace=200;
steptrace=10;
trasenum=Range[starttrace,endtrace,steptrace];
traserenum=Range[Length@trasenum];
tracedist=0.5;
Rotate[Show[
Reverse[Table[
	ListLinePlot[traces[[trasenum[[i]]]]*50+trasenum[[i]]*tracedist,Filling->{1->{trasenum[[i]]*tracedist,{RGBColor[0.97,0.93,0.68],Black}}},PlotStyle->Directive[Gray,Thin],PlotRange->Full,InterpolationOrder->2,Axes->False,Background->RGBColor[0.97,0.93,0.68]],
		{i,1,Length@trasenum}]],ListLinePlot[Transpose[{ConstantArray[45,80],Range[80]}],PlotStyle->Red],PlotRange->All,Frame->True],270Degree]

Ziri eredurako aztarna sismikoak
Wolfram Mathematica Geofisikan

Irudi honetan ageri den arrasto sismikoen sekuentziari sekzio sismiko deritzo. Ikusten denez, bere interpretazioa maila intuitiboan ere egin daiteke, islatutako uhinen geometria lehen zehaztutako ereduarekin bat dator eta argi eta garbi. Aztarnak zehatzago aztertzen badituzu, ohartuko zara 1etik 30era gutxi gorabeherako arrastoak ez direla desberdinak; eraketaren teilatuaren eta behealdearen isla ez dira elkarren gainjartzen. 31. arrastotik abiatuta, islak oztopatzen hasten dira. Eta, ereduan, islapen koefizienteak horizontalki aldatzen ez diren arren, arrasto sismikoek intentsitatea aldatzen dute formazioaren lodiera aldatzen den heinean.

Demagun formazioaren goiko mugatik islapenaren anplitudea. 60. ibilbidetik hasita, hausnarketaren intentsitatea handitzen hasten da eta 70. ibilbidean maximo bihurtzen da. Horrela agertzen da geruzen estalkitik eta behetik datozen uhinen interferentziak, kasu batzuetan erregistro sismikoan anomalia nabarmenak eraginez.

ListLinePlot[GaussianFilter[Abs[traces[[All,46]]],3][[;;;;2]],
InterpolationOrder->2,Frame->True,PlotStyle->Black,
PlotLabel->Style["Amplitude of reflection",Black,20],
LabelStyle->Directive[Black,Italic],
PlotRange->All]

Ziriaren goiko ertzetik islatutako uhinaren anplitudearen grafikoa
Wolfram Mathematica Geofisikan

Logikoa da seinalea maiztasun baxukoa denean, eraketa-lodiera handietan interferentziak agertzen hastea, eta maiztasun handiko seinalearen kasuan, lodiera txikiagoetan interferentziak agertzea. Hurrengo kode zati honek 35 Hz, 55 Hz eta 85 Hz-ko maiztasunekin seinale bat sortzen du.

waveletSet=Table[(1.0-2.0*(Pi^2)*(f^2)*(t^2))*Exp[-(Pi^2)*(f^2)*(t^2)],
{f,{35,55,85}}];
ListLinePlot[waveletSet,PlotRange->Full,PlotStyle->Black,Frame->True,
PlotLabel->Style["Set of wavelets",Black,20],
LabelStyle->Directive[Black,Italic],
ImageSize->Large,InterpolationOrder->2]

35 Hz, 55Hz, 85Hz-ko maiztasunak dituzten iturri-seinale multzoa
Wolfram Mathematica Geofisikan

Traza sismikoak kalkulatuz eta islatutako uhin-anplitudeen grafikoak marraztuz, maiztasun desberdinetarako formazio-lodiera desberdinetan anomalia bat ikusten dela ikus dezakegu.

tracesSet=Table[ListConvolve[waveletSet[[j]][[1;;;;1]],rc[[i]]],{j,1,3},{i,1,200}];

lowFreq=ListLinePlot[GaussianFilter[Abs[tracesSet[[1]][[All,46]]],3][[;;;;2]],InterpolationOrder->2,PlotStyle->Black,PlotRange->All];
medFreq=ListLinePlot[GaussianFilter[Abs[tracesSet[[2]][[All,46]]],3][[;;;;2]],InterpolationOrder->2,PlotStyle->Black,PlotRange->All];
highFreq=ListLinePlot[GaussianFilter[Abs[tracesSet[[3]][[All,46]]],3][[;;;;2]],InterpolationOrder->2,PlotStyle->Black,PlotRange->All];

Show[lowFreq,medFreq,highFreq,PlotRange->{{0,100},All},
PlotLabel->Style["Amplitudes of reflection",Black,20],
LabelStyle->Directive[Black,Italic],
Frame->True]

Ziriaren goiko ertzetik islatutako uhinaren anplitudeen grafikoak maiztasun desberdinetarako
Wolfram Mathematica Geofisikan

Behaketa sismikoen emaitzetatik eraketaren lodierari buruzko ondorioak ateratzeko gaitasuna oso erabilgarria da, izan ere, petrolio-esplorazioaren zeregin nagusietako bat putzu bat jartzeko punturik itxaropentsuenak (hau da, eraketa dagoen eremuak) baloratzea baita. lodiagoa). Gainera, atal geologikoan sorrerak eraketaren lodieran aldaketa nabarmena eragiten duten objektuak egon daitezke. Horrek analisi espektrala tresna eraginkorra bihurtzen du haiek aztertzeko. Artikuluaren hurrengo zatian horrelako objektu geologikoak aztertuko ditugu zehatzago.

Datu esperimentalak. Non lortu dituzu eta zer bilatu haietan?

Artikuluan aztertutako materialak Mendebaldeko Siberian lortu ziren. Eskualdea, salbuespenik gabe denek dakiten bezala, gure herrialdeko petrolio-eskualde nagusia da. Gordailuen garapen aktiboa eskualdean joan den mendeko 60ko hamarkadan hasi zen. Petrolio-biltegiak bilatzeko metodo nagusia esplorazio sismikoa da. Interesgarria da lurralde honetako satelite-irudiak ikustea. Eskala txikian, zingira eta aintzira ugari ikus ditzakezu; mapa handituz, kluster putzuak zulatzeko guneak ikus ditzakezu, eta mapa mugaraino handituz, sismikoak diren profilen soilak ere bereiz ditzakezu. behaketak egin ziren.

Yandex mapen satelite bidezko irudia - Noyabrsk hiriaren eremua
Wolfram Mathematica Geofisikan

Soroetako batean putzuen sarea
Wolfram Mathematica Geofisikan

Mendebaldeko Siberiako petrolioa duten arrokak sakonera zabalean gertatzen dira: 1 km-tik 5 km-ra. Petrolioa duten arroken bolumen nagusia Jurasiko eta Kretazeoko garaietan sortu zen. Jurasiko garaia ziurrenik askorentzat ezaguna da izen bereko pelikulatik. Klima jurasikoa modernoarekiko nabarmen ezberdina zen. Encyclopedia Britannica-k aro helogiko bakoitza ezaugarritzen duten paleomapa sorta bat du.

gaur
Wolfram Mathematica Geofisikan
Jurasiko garaia
Wolfram Mathematica Geofisikan

Kontuan izan Jurasiko garaian, Mendebaldeko Siberiako lurraldea itsas kostaldea zela (ibaiek eta sakonera gutxiko itsasoa zeharkatzen zuten lurra). Klima erosoa zenez, garai hartako paisaia tipiko batek honelako itxura zuela pentsa dezakegu:

Siberia jurasikoa
Wolfram Mathematica Geofisikan

Irudi honetan, guretzat garrantzitsua dena ez dira hainbeste animaliak eta txoriak, atzealdean dagoen ibaiaren irudia baizik. Ibaia lehenago gelditu ginen objektu geologiko bera da. Kontua da ibaien jarduerak ondo sailkatutako hareharriak pilatzea ahalbidetzen duela, gero petroliorako biltegi bihurtuko direnak. Urtegi hauek forma bitxia eta konplexua izan dezakete (ibaiaren ohea bezalakoa) eta lodiera aldakorra dute -ertzetatik gertu lodiera txikia da, baina kanalaren erdigunetik hurbilago edo meandro-eremuetan handitzen da. Beraz, Jurasikoan sortutako ibaiak hiru kilometro inguruko sakoneran daude gaur egun eta petrolio-biltegien bilaketaren objektu dira.

Datu esperimentalak. Prozesatzea eta bistaratzea

Artikuluan agertzen diren material sismikoei buruzko erreserba bat egin dezagun berehala -azterketarako erabilitako datu-kopurua esanguratsua delako- artikuluko testuan aztarna sismikoen jatorrizko multzoaren zati bat baino ez da sartzen. Horri esker, edonork erreproduzi ditzake goiko kalkuluak.

Datu sismikoekin lan egiten duenean, geofisikari batek software espezializatua erabiltzen du normalean (hainbat industria lider daude zeinen garapenak aktiboki erabiltzen diren, adibidez Petrel edo Paradigm), eta horrek datu mota desberdinak aztertzeko aukera ematen du eta interfaze grafiko erosoa du. Erosotasuna izan arren, software-mota hauek bere eragozpenak ere badituzte - adibidez, algoritmo modernoak bertsio egonkorretan ezartzeak denbora asko behar du eta kalkuluak automatizatzeko aukerak mugatuak izan ohi dira. Egoera horretan, oso erosoa bihurtzen da informatika-matematika-sistemak eta goi-mailako programazio-lengoaiak erabiltzea, oinarri algoritmiko zabala erabiltzeko aukera ematen dutenak eta, aldi berean, errutina handia hartzen dutenak. Hau da Wolfram Mathematica-n datu sismikoekin lan egiteko erabiltzen den printzipioa. Ez da egokia datuekin lan interaktiborako funtzionalitate aberatsa idaztea; garrantzitsuagoa da orokorrean onartutako formatu batetik kargatzea, nahi diren algoritmoak aplikatuz eta kanpoko formatu batera kargatzea.

Proposatutako eskemari jarraituz, jatorrizko datu sismikoak kargatu eta bertan erakutsiko ditugu Wolfram Mathematica:

Get["GeologyIO`"]
seismic3DZipPath = "seismic3D.zip";
seismic3DSEGYPath = "seismic3D.sgy";
If[FileExistsQ[seismic3DZipPath], DeleteFile[seismic3DZipPath]];
If[FileExistsQ[seismic3DSEGYPath], DeleteFile[seismic3DSEGYPath]];
URLDownload["https://wolfr.am/FiQIuZuH", seismic3DZipPath];
ExtractArchive[seismic3DZipPath];
seismic3DSEGY = SEGYImport[seismic3DSEGYPath]

Horrela deskargatu eta inportatutako datuak 10 x 5 kilometroko eremu batean erregistratutako ibilbideak dira. Datuak hiru dimentsioko azterketa sismiko metodo bat erabiliz lortzen badira (uhinak ez dira profil geofisiko indibidualetan erregistratzen, baizik eta eremu osoan aldi berean), datu sismikoen kuboak lor daitezke. Hiru dimentsioko objektuak dira, eta horien atal bertikalak eta horizontalak ingurune geologikoa zehatz-mehatz aztertzeko aukera ematen dute. Kontuan hartutako adibidean hiru dimentsioko datuez ari gara. Testuaren goiburutik informazio batzuk lor ditzakegu, honela

StringPartition[seismic3DSEGY["textheader"], 80] // TableForm

C 1 HAU GEOLOGYIO PAKETEEN PROBAREN DEMO-FITXEA DA
C 2
C 3
C 4
C 5 DATA ERABILTZAILE IZENA: WOLFRAM ERABILTZAILEA
C 6 INKESTA IZENA: SIBERIAKO NONBAIT
C 7 FITXA MOTA 3D BOLUMEN SISMIKOA
C 8
C 9
C10 Z BARRUA: LEHEN 2200M AZKEN 2400M

Datu multzo hau nahikoa izango da datuen analisiaren fase nagusiak erakusteko. Fitxategiko aztarnak sekuentzialki grabatzen dira eta horietako bakoitzak hurrengo irudiaren antzeko zerbait du - hau da islatutako uhinen anplitudeen banaketa ardatz bertikalean (sakoneraren ardatza).

ListLinePlot[seismic3DSEGY["traces"][[100]], InterpolationOrder -> 2, 
 PlotStyle -> Black, PlotLabel -> Style["Seismic trace", Black, 20],
 LabelStyle -> Directive[Black, Italic], PlotRange -> All, 
 Frame -> True, ImageSize -> 1200, AspectRatio -> 1/5]

Sekzio sismikoko arrastoetako bat
Wolfram Mathematica Geofisikan

Aztertutako eremuaren norabide bakoitzean zenbat aztarna dauden jakinda, hiru dimentsioko datu-matrize bat sor dezakezu eta bistaratu Image3D[] funtzioa erabiliz.

traces=seismic3DSEGY["traces"];
startIL=1050;EndIL=2000;stepIL=2; (*ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° Π₯ Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° ΡΡŠΡ‘ΠΌΠΊΠΈ ΠΈ шаг трасс*)
startXL=1165;EndXL=1615;stepXL=2; (*ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° Y Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° ΡΡŠΡ‘ΠΌΠΊΠΈ ΠΈ шаг трасс*)
numIL=(EndIL-startIL)/stepIL+1;   (*количСство трасс ΠΏΠΎ оис Π₯*)
numXL=(EndXL-startXL)/stepIL+1;   (*количСство трасс ΠΏΠΎ оис Y*)
Image3D[ArrayReshape[Abs[traces/Max[Abs[traces[[All,1;;;;4]]]]],{numIL,numXL,101}],ViewPoint->{-1, 0, 0},Background->RGBColor[0,0,0]]

Datu sismikoen kubo baten 3D irudia (Ardatz bertikala - sakonera)
Wolfram Mathematica Geofisikan

Intereseko ezaugarri geologikoek anomalia sismiko biziak sortzen badituzte, gardentasuna duten bistaratzeko tresnak erabil daitezke. Grabazioaren "garrantzirik gabeko" eremuak ikusezin bihur daitezke, anomaliak soilik ikusgai utziz. Wolfram Mathematica-n hau erabiliz egin daiteke Opakotasuna[] ΠΈ Raster3D[].

data = ArrayReshape[Abs[traces/Max[Abs[traces[[All,1;;;;4]]]]],{numIL,numXL,101}];
Graphics3D[{Opacity[0.1], Raster3D[data, ColorFunction->"RainbowOpacity"]}, 
Boxed->False, SphericalRegion->True, ImageSize->840, Background->None]

Datu sismikoen kuboaren irudia Opacity[] eta Raster3D[] funtzioak erabiliz Wolfram Mathematica Geofisikan

Adibide sintetikoan bezala, jatorrizko kuboaren ataletan erliebe aldakorreko muga geologiko batzuk (geruza) identifikatu daitezke.

Analisi espektrala egiteko tresna nagusia Fourier transformatua da. Bere laguntzarekin, arrasto bakoitzaren edo arrasto-talde bakoitzaren anplitude-maiztasunaren espektroa ebaluatu dezakezu. Hala ere, datuak maiztasun-domeinura transferitu ondoren, maiztasuna zein momentutan (irakur ezazu zein sakoneratan) aldatzen den informazioa galtzen da. Seinale aldaketak denbora (sakonera) ardatzean lokalizatu ahal izateko, leihodun Fourier transformatua eta wavelet deskonposizioa erabiltzen dira. Artikulu honek wavelet deskonposizioa erabiltzen du. Wavelet analisiaren teknologia esplorazio sismikoan aktiboki erabiltzen hasi zen 90eko hamarkadan. Leihozko Fourier transformatuaren abantaila denbora-erresoluzio hobea dela uste da.

Kode zati hau erabiliz, arrasto sismikoetako bat osagai indibidualetan deskonposa dezakezu:

cwd=ContinuousWaveletTransform[seismicSection["traces"][[100]]]
Show[
ListLinePlot[Re[cwd[[1]]],PlotRange->All],
ListLinePlot[seismicSection["traces"][[100]],
PlotStyle->Black,PlotRange->All],ImageSize->{1500,500},AspectRatio->Full,
PlotLabel->Style["Wavelet decomposition",Black,32],
LabelStyle->Directive[Black,Italic],
PlotRange->All,
Frame->True]

Arrasto baten osagaietan deskonposatzea
Wolfram Mathematica Geofisikan

Erreflexio-energia uhinen etorrera-denbora desberdinetan nola banatzen den ebaluatzeko, eskalogramak (espektrograma baten analogoak) erabiltzen dira. Oro har, praktikan ez dago osagai guztiak aztertu beharrik. Normalean, maiztasun baxuko, ertaineko eta altuko osagaiak hautatzen dira.

freq=(500/(#*contWD["Wavelet"]["FourierFactor"]))&/@(Thread[{Range[contWD["Octaves"]],1}]/.contWD["Scales"])//Round;
ticks=Transpose[{Range[Length[freq]],freq}];
WaveletScalogram[contWD,Frame->True,FrameTicks->{{ticks,Automatic},Automatic},FrameTicksStyle->Directive[Orange,12],
FrameLabel->{"Time","Frequency(Hz)"},LabelStyle->Directive[Black,Bold,14],
ColorFunction->"RustTones",ImageSize->Large]

Eskalograma. Funtzioaren emaitza WaveletScalogram[]
Wolfram Mathematica Geofisikan

Wolfram Hizkuntzak uhinen eraldaketarako funtzioa erabiltzen du Etengabeko uhin-eraldaketa[]. Eta funtzio honen aplikazioa arrasto-multzo osora egingo da funtzioa erabiliz Taula[]. Hemen Wolfram Mathematica-ren indarguneetako bat nabarmentzekoa da: paralelizazioa erabiltzeko gaitasuna Taula paraleloa[]. Goiko adibidean, ez dago paralelizazio beharrik - datuen bolumena ez da handia, baina ehunka mila arrasto dituzten datu-multzo esperimentalekin lan egiten denean, hori beharrezkoa da.

tracesCWD=Table[Map[Hilbert[#,0]&,Re[ContinuousWaveletTransform[traces[[i]]][[1]]][[{13,15,18}]]],{i,1,Length@traces}]; 

Funtzioa aplikatu ondoren Etengabeko uhin-eraldaketa[] Aukeratutako maiztasunei dagozkien datu multzo berriak agertzen dira. Goiko adibidean, maiztasun hauek hauek dira: 38Hz, 33Hz, 27Hz. Maiztasunen aukeraketa gehienetan saiakuntzen arabera egiten da - maiztasun-konbinazio desberdinetarako mapa eraginkorrak lortzen dituzte eta geologoaren ikuspuntutik informaziorik handiena hautatzen dute.

Emaitzak lankideekin partekatu edo bezeroari eman behar badituzu, GeologyIO paketearen SEGYExport[] funtzioa erabil dezakezu.

outputdata=seismic3DSEGY;
outputdata["traces",1;;-1]=tracesCWD[[All,3]];
outputdata["textheader"]="Wavelet Decomposition Result";
outputdata["binaryheader","NumberDataTraces"]=Length[tracesCWD[[All,3]]];
SEGYExport["D:result.segy",outputdata];

Kubo horietako hirurekin (maiztasun baxua, maiztasun ertaina eta maiztasun handiko osagaiak), RGB nahasketa erabiltzen da normalean datuak elkarrekin ikusteko. Osagai bakoitzari bere kolorea esleitzen zaio: gorria, berdea, urdina. Wolfram Mathematica-n hau funtzioa erabiliz egin daiteke Kolorea konbinatu[].

Ondorioz, interpretazio geologikoa egin daitekeen irudiak dira. Sekzioan erregistratzen diren meandroek paleokanalak zehaztea ahalbidetzen dute, urtegiak izateko eta petrolio-erreserbak eduki ditzaketenak. Ibai-sistema baten analogo modernoen bilaketak eta azterketak meandroen zatirik itxaropentsuenak zehazteko aukera ematen digu. Kanalak berek ondo sailkatutako hareharrizko geruza lodiak dituzte eta petroliorako biltegi ona dira. "Parpaila" anomalietatik kanpo dauden eremuak uholde-lautada modernoen gordailuen antzekoak dira. Uholde-lautadako gordailuak batez ere arroka buztintsuek adierazten dituzte eta zonalde horietan zulatzea ez da eraginkorra izango.

Datu-kuboaren RGB zatia. Erdialdean (erdigunetik apur bat ezkerrera) meandro-ibaia jarrai dezakezu.
Wolfram Mathematica Geofisikan
Datu-kuboaren RGB zatia. Ezkerreko aldean meandroa dagoen ibaia ikus dezakezu.
Wolfram Mathematica Geofisikan

Zenbait kasutan, datu sismikoen kalitateak irudi nabarmen argiagoak izateko aukera ematen du. Hau landa-lanaren metodologiaren araberakoa da, zarata murrizteko algoritmoak erabiltzen duen ekipoaren araberakoa. Horrelakoetan, ibai-sistemen zatiak ez ezik, hedatutako paleo-ibai osoak ere ikusten dira.

Datu sismikoen kubo baten hiru osagaien RGB nahasketa (xerta horizontala). Sakonera gutxi gorabehera 2 km.
Wolfram Mathematica Geofisikan
Saratov ondoan Volga ibaiaren satelite-irudia
Wolfram Mathematica Geofisikan

Ondorioa

Wolfram Mathematica-k datu sismikoak aztertzeko eta mineralen esplorazioarekin lotutako arazo aplikatuak ebazteko aukera ematen du, eta GeologyIO paketeak prozesu hau erosoagoa egiten du. Datu sismikoen egitura honelakoa da, kalkuluak bizkortzeko metodo integratuak erabiltzea (Taula paraleloa[], Paraleloa[],…) oso eraginkorra da eta datu kopuru handiak prozesatzeko aukera ematen du. Neurri handi batean, GeologyIO paketearen datuak biltegiratzeko eginbideek errazten dute. Bide batez, paketea esplorazio sismiko aplikatuaren eremuan ez ezik, erabil daiteke. Ia datu-mota berdinak erabiltzen dira lur-sarrerako radar eta sismologian. Emaitza hobetzeko iradokizunak badituzu, Wolfram Mathematica arsenaleko seinaleen analisi-algoritmo aplikagarriak diren datu horietarako edo iruzkin kritikorik baduzu, mesedez. utzi iruzkin bat.

Iturria: www.habr.com

Gehitu iruzkin berria