์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

๋ธ”๋กœ๊ทธ ์ž‘์„ฑ์ž์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์•ˆํ†ค ์—ํ‚ค๋ฉ˜์ฝ” ๊ทธ์˜ ๋ณด๊ณ ๋ฅผ ์œ„ํ•ด

์†Œ๊ฐœ

์ด ๋ฉ”๋ชจ๋Š” ํšŒ์˜๊ฐ€ ๋๋‚œ ํ›„ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Wolfram ๋Ÿฌ์‹œ์•„ ๊ธฐ์ˆ  ์ปจํผ๋Ÿฐ์Šค ๊ทธ๋ฆฌ๊ณ  ๋‚ด๊ฐ€ ์ œ๊ณตํ•œ ๋ณด๊ณ ์„œ์˜ ์š”์•ฝ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ–‰์‚ฌ๋Š” 2016์›” ์ƒํŠธํŽ˜ํ…Œ๋ฅด๋ถ€๋ฅดํฌ์—์„œ ์—ด๋ ธ์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์ปจํผ๋Ÿฐ์Šค ํ˜„์žฅ์—์„œ ํ•œ ๋ธ”๋ก ๋–จ์–ด์ง„ ๊ณณ์— ๊ทผ๋ฌดํ•œ๋‹ค๋Š” ์ ์„ ๊ณ ๋ คํ•˜๋ฉด ์ด๋ฒˆ ํ–‰์‚ฌ์—๋Š” ์ฐธ์„ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. 2017๋…„๊ณผ XNUMX๋…„์—๋Š” ์ปจํผ๋Ÿฐ์Šค ๋ณด๊ณ ๋ฅผ ๋“ฃ๊ณ , ์˜ฌํ•ด๋Š” ๋ฐœํ‘œ๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฒซ์งธ, ์šฐ๋ฆฌ๊ฐ€ ๊ฐœ๋ฐœ ์ค‘์ธ ํฅ๋ฏธ๋กœ์šด ์ฃผ์ œ๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ํ‚ค๋ฆด ๋ฒจ๋กœํ”„, ๋‘˜์งธ, ์ œ์žฌ ์ •์ฑ…์— ๊ด€ํ•œ ๋Ÿฌ์‹œ์•„ ์—ฐ๋ฐฉ ๋ฒ•๋ฅ ์— ๋Œ€ํ•œ ์˜ค๋žœ ์—ฐ๊ตฌ ๋์— ์ œ๊ฐ€ ์ผํ•˜๋Š” ๊ธฐ์—…์—์„œ ์ตœ๋Œ€ XNUMX๊ฐœ์˜ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. Wolfram Mathematica.

์—ฐ์„ค ์ฃผ์ œ๋กœ ๋„˜์–ด๊ฐ€๊ธฐ ์ „์—, ํ–‰์‚ฌ์˜ ์ข‹์€ ์กฐ์ง์— ๋Œ€ํ•ด ๋ง์”€๋“œ๋ฆฌ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ํšŒ์˜์˜ ๋ฐฉ๋ฌธ ํŽ˜์ด์ง€๋Š” ์นด์ž” ๋Œ€์„ฑ๋‹น์˜ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์„ฑ๋‹น์€ ์ƒํŠธํŽ˜ํ…Œ๋ฅด๋ถ€๋ฅดํฌ์˜ ์ฃผ์š” ๋ช…์†Œ ์ค‘ ํ•˜๋‚˜์ด๋ฉฐ ํšŒ์˜๊ฐ€ ์—ด๋ ธ๋˜ ํ™€์—์„œ ๋งค์šฐ ๋ช…ํ™•ํ•˜๊ฒŒ ๋ณด์ž…๋‹ˆ๋‹ค.

์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ƒํŠธ ํŽ˜ํ…Œ๋ฅด๋ถ€๋ฅดํฌ ์ฃผ๋ฆฝ ๊ฒฝ์ œ ๋Œ€ํ•™ ์ž…๊ตฌ์—์„œ ์ฐธ๊ฐ€์ž๋“ค์€ ํ•™์ƒ๋“ค ์ค‘ ์กฐ์ˆ˜๋“ค๊ณผ ๋งŒ๋‚ฌ์œผ๋ฉฐ ๊ธธ์„ ์žƒ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋“ฑ๋กํ•˜๋Š” ๋™์•ˆ ์ž‘์€ ๊ธฐ๋…ํ’ˆ์ด ์ œ๊ณต๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์žฅ๋‚œ๊ฐ-๋ฒˆ์ฉ์ด๋Š” ์ŠคํŒŒ์ดํฌ, ํŽœ, Wolfram ๊ธฐํ˜ธ๊ฐ€ ์žˆ๋Š” ์Šคํ‹ฐ์ปค). ์ ์‹ฌ ์‹์‚ฌ์™€ ํœด์‹ ์‹œ๊ฐ„๋„ ํšŒ์˜ ์ผ์ •์— ํฌํ•จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๋ฏธ ๊ทธ๋ฃน ๋ฒฝ์— ๋ง›์žˆ๋Š” ์ปคํ”ผ์™€ ํŒŒ์ด์— ๋Œ€ํ•ด ์–ธ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์š”๋ฆฌ์‚ฌ๋Š” ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ ์†Œ๊ฐœ ๋ถ€๋ถ„์—์„œ๋Š” ํ–‰์‚ฌ ์ž์ฒด์™€ ํ˜•์‹, ์žฅ์†Œ๊ฐ€ ์ด๋ฏธ ๊ธ์ •์ ์ธ ๊ฐ์ •์„ ๋ถˆ๋Ÿฌ์ผ์œผํ‚ค๊ณ  ์žˆ๋‹ค๋Š” ์ ์„ ๊ฐ•์กฐํ•˜๊ณ  ์‹ถ๋‹ค.

๋‚˜์™€ Kirill Belov๊ฐ€ ์ž‘์„ฑํ•œ ๋ณด๊ณ ์„œ๋Š” "Wolfram Mathematica๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‘์šฉ ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ฌธ์ œ ํ•ด๊ฒฐ"์ด๋ผ๋Š” ์ œ๋ชฉ์ž…๋‹ˆ๋‹ค. ์ง€์ง„ ๋ฐ์ดํ„ฐ ๋˜๋Š” "๊ณ ๋Œ€ ๊ฐ•์ด ํ๋ฅด๋˜ ๊ณณ"์— ๋Œ€ํ•œ ์ŠคํŽ™ํŠธ๋Ÿผ ๋ถ„์„. ๋ณด๊ณ ์„œ์˜ ๋‚ด์šฉ์€ ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ฒซ์งธ, ๋‹ค์Œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‚ฌ์šฉ์ž…๋‹ˆ๋‹ค. Wolfram Mathematica ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์  ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋‘ ๋ฒˆ์งธ๋กœ Wolfram Mathematica์— ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์  ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์ง€์ง„ ํƒ์‚ฌ

๋จผ์ € ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์— ๋Œ€ํ•œ ์งง์€ ์—ฌํ–‰์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์€ ์•”์„์˜ ๋ฌผ๋ฆฌ์  ํŠน์„ฑ์„ ์—ฐ๊ตฌํ•˜๋Š” ๊ณผํ•™์ž…๋‹ˆ๋‹ค. ๊ธ€์Ž„์š”, ์•”์„์€ ์ „๊ธฐ์ , ์ž๊ธฐ์ , ํƒ„์„ฑ์  ํŠน์„ฑ์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์—๋Š” ๊ทธ์— ์ƒ์‘ํ•˜๋Š” ์ „๊ธฐ ํƒ์‚ฌ, ์ž๊ธฐ ํƒ์‚ฌ, ์ง€์ง„ ํƒ์‚ฌ ๋“ฑ์˜ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์˜ ๋งฅ๋ฝ์—์„œ๋Š” ์ง€์ง„ ํƒ์‚ฌ์— ๋Œ€ํ•ด์„œ๋งŒ ๋” ์ž์„ธํžˆ ๋…ผ์˜ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ง€์ง„ ํƒ์‚ฌ๋Š” ์„์œ ์™€ ๊ฐ€์Šค๋ฅผ ์ฐพ๋Š” ์ฃผ์š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ ํƒ„์„ฑ ์ง„๋™์˜ ์—ฌ๊ธฐ์™€ ์—ฐ๊ตฌ ์ง€์—ญ์„ ๊ตฌ์„ฑํ•˜๋Š” ์•”์„์˜ ๋ฐ˜์‘์— ๋Œ€ํ•œ ํ›„์† ๊ธฐ๋ก์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ง„๋™์€ ์œก์ง€(๋‹ค์ด๋„ˆ๋งˆ์ดํŠธ ๋˜๋Š” ๋น„ํญ๋ฐœ์„ฑ ํƒ„์„ฑ ์ง„๋™์› ์‚ฌ์šฉ) ๋˜๋Š” ๋ฐ”๋‹ค(๊ณต๊ธฐ์ด ์‚ฌ์šฉ)์—์„œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ํƒ„์„ฑ ์ง„๋™์€ ์•”๋ฐ˜์„ ํ†ตํ•ด ์ „ํŒŒ๋˜๋ฉฐ, ์„œ๋กœ ๋‹ค๋ฅธ ํŠน์„ฑ์„ ๊ฐ–๋Š” ์ธต์˜ ๊ฒฝ๊ณ„์—์„œ ๊ตด์ ˆ ๋ฐ ๋ฐ˜์‚ฌ๋ฉ๋‹ˆ๋‹ค. ๋ฐ˜์‚ฌ๋œ ํŒŒ๋™์€ ํ‘œ๋ฉด์œผ๋กœ ๋Œ์•„์™€ ์œก์ง€์˜ ์ง€์˜คํฐ(๋ณดํ†ต ์ฝ”์ผ์— ๋งค๋‹ฌ๋ฆฐ ์ž์„์˜ ์›€์ง์ž„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์ „๊ธฐ ์—ญํ•™ ์žฅ์น˜) ๋˜๋Š” ๋ฐ”๋‹ค์˜ ์ˆ˜์ค‘์Œ๊ธฐ(์••์ „ ํšจ๊ณผ ๊ธฐ๋ฐ˜)์— ์˜ํ•ด ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค. ํŒŒ๋„๊ฐ€ ๋„๋‹ฌํ•  ๋•Œ์ฏค์ด๋ฉด ์ง€์งˆ์ธต์˜ ๊นŠ์ด๋ฅผ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ๋‹ค.

์ง€์ง„ ์„ ๋ฐ• ๊ฒฌ์ธ ์žฅ๋น„
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์—์–ด๊ฑด์€ ํƒ„์„ฑ ์ง„๋™์„ ์ž๊ทนํ•ฉ๋‹ˆ๋‹ค.
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

ํŒŒ๋„๋Š” ์•”์„ ๋ฉ์–ด๋ฆฌ๋ฅผ ํ†ต๊ณผํ•˜๋ฉฐ ์ˆ˜์ค‘์ŒํŒŒ๋กœ ๋…น์Œ๋ฉ๋‹ˆ๋‹ค.
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ƒํŠธํŽ˜ํ…Œ๋ฅด๋ถ€๋ฅดํฌ ๋ธ”๋ผ๊ณ ๋ฒ ์…ด์Šคํ‚ค ๋‹ค๋ฆฌ ๊ทผ์ฒ˜ ๋ถ€๋‘์— ์žˆ๋Š” ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ์—ฐ๊ตฌ ์„ ๋ฐ• "Ivan Gubkin"
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ง€์ง„ ์‹ ํ˜ธ ๋ชจ๋ธ

์•”์„์€ ๋‹ค์–‘ํ•œ ๋ฌผ๋ฆฌ์  ํŠน์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€์ง„ ํƒ์‚ฌ์—์„œ๋Š” ํƒ„์„ฑ ํŠน์„ฑ, ์ฆ‰ ํƒ„์„ฑ ์ง„๋™์˜ ์ „ํŒŒ ์†๋„์™€ ๋ฐ€๋„๊ฐ€ ์ฃผ๋กœ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๋ ˆ์ด์–ด๊ฐ€ ๋™์ผํ•˜๊ฑฐ๋‚˜ ์œ ์‚ฌํ•œ ์†์„ฑ์„ ๊ฐ–๋Š” ๊ฒฝ์šฐ ํŒŒ๋™์€ ๋‘ ๋ ˆ์ด์–ด ์‚ฌ์ด์˜ ๊ฒฝ๊ณ„๋ฅผ "์•Œ์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค". ์ธต์˜ ํŒŒ๋™ ์†๋„๊ฐ€ ๋‹ค๋ฅด๋ฉด ์ธต์˜ ๊ฒฝ๊ณ„์—์„œ ๋ฐ˜์‚ฌ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์†์„ฑ์˜ ์ฐจ์ด๊ฐ€ ํด์ˆ˜๋ก ๋ฐ˜์‚ฌ๊ฐ€ ๋” ๊ฐ•ํ•ด์ง‘๋‹ˆ๋‹ค. ๊ฐ•๋„๋Š” ๋ฐ˜์‚ฌ ๊ณ„์ˆ˜(rc)์— ์˜ํ•ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์—ฌ๊ธฐ์„œ ฯ๋Š” ์•”์„ ๋ฐ€๋„, ฮฝ๋Š” ํŒŒ๋™ ์†๋„, 1๊ณผ 2๋Š” ์ƒ์ธต๊ณผ ํ•˜์ธต์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๊ฐ„๋‹จํ•˜๊ณ  ๊ฐ€์žฅ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์ง€์ง„ ์‹ ํ˜ธ ๋ชจ๋ธ ์ค‘ ํ•˜๋‚˜๋Š” ๊ธฐ๋ก๋œ ์ง€์ง„ ์ถ”์ ์ด ํ”„๋กœ๋น™ ํŽ„์Šค์™€ ์ผ๋ จ์˜ ๋ฐ˜์‚ฌ ๊ณ„์ˆ˜์˜ ์ปจ๋ณผ๋ฃจ์…˜ ๊ฒฐ๊ณผ๋กœ ํ‘œ์‹œ๋˜๋Š” ์ปจ๋ณผ๋ฃจ์…˜ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค.

์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์–ด๋”” s(t) โ€” ์ง€์ง„ ํ”์ , ์ฆ‰ ์ •ํ•ด์ง„ ๋…น์Œ์‹œ๊ฐ„ ๋™์•ˆ ์ˆ˜์ค‘์ŒํŒŒ๋‚˜ ์ง€์Œ๊ธฐ๋กœ ๋…น์Œํ•œ ๋ชจ๋“  ๊ฒƒ, ์Šน(ํ‹ฐ) - ๊ณต๊ธฐ์ด์— ์˜ํ•ด ์ƒ์„ฑ๋œ ์‹ ํ˜ธ, n(ํ‹ฐ) - ๋ฌด์ž‘์œ„ ์†Œ์Œ.

์˜ˆ๋ฅผ ๋“ค์–ด ํ•ฉ์„ฑ ์ง€์ง„ ํ”์ ์„ ๊ณ„์‚ฐํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ง€์ง„ ํƒ์‚ฌ์— ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋ฆฌ์ปค ํŽ„์Šค(Ricker pulse)๋ฅผ ์ดˆ๊ธฐ ์‹ ํ˜ธ๋กœ ์‚ฌ์šฉํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

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]

์ดˆ๊ธฐ ์ง€์ง„ ์ถฉ๊ฒฉ๋Ÿ‰
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

300ms์™€ 600ms์˜ ๊นŠ์ด์— ๋‘ ๊ฐœ์˜ ๊ฒฝ๊ณ„๋ฅผ ์„ค์ •ํ•˜๊ณ  ๋ฐ˜์‚ฌ ๊ณ„์ˆ˜๋Š” ๋‚œ์ˆ˜์ž…๋‹ˆ๋‹ค.

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]]

๋ฐ˜์‚ฌ ๊ณ„์ˆ˜์˜ ์‹œํ€€์Šค
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ง€์ง„ ํ”์ ์„ ๊ณ„์‚ฐํ•˜์—ฌ ํ‘œ์‹œํ•ด ๋ด…์‹œ๋‹ค. ๋ฐ˜์‚ฌ ๊ณ„์ˆ˜์˜ ๋ถ€ํ˜ธ๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ง€์ง„ ์ถ”์ ์—์„œ ๋‘ ๊ฐœ์˜ ๊ต๋ฒˆ ๋ฐ˜์‚ฌ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.

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]]

์‹œ๋ฎฌ๋ ˆ์ด์…˜๋œ ํŠธ๋ž™
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ด ์˜ˆ์—์„œ๋Š” ์˜ˆ์•ฝ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๋ ˆ์ด์–ด์˜ ๊นŠ์ด๋Š” ๋ฌผ๋ก  ๋ฏธํ„ฐ ๋‹จ์œ„๋กœ ๊ฒฐ์ •๋˜๋ฉฐ ์ง€์ง„ ์ถ”์  ๊ณ„์‚ฐ์€ ์‹œ๊ฐ„ ์˜์—ญ์— ๋Œ€ํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊นŠ์ด๋ฅผ ๋ฏธํ„ฐ ๋‹จ์œ„๋กœ ์„ค์ •ํ•˜๊ณ  ๋ ˆ์ด์–ด์˜ ์†๋„๋ฅผ ์•Œ๊ณ  ๋„์ฐฉ ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์ด ๋” ์ •ํ™•ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ์—๋Š” ์ฆ‰์‹œ ์‹œ๊ฐ„์ถ•์— ๋ ˆ์ด์–ด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฅ ์กฐ์‚ฌ์— ๊ด€ํ•ด ์ด์•ผ๊ธฐํ•˜๋ฉด ๊ทธ๋Ÿฌํ•œ ๊ด€์ฐฐ์˜ ๊ฒฐ๊ณผ๋กœ ์œ ์‚ฌํ•œ ์‹œ๊ณ„์—ด(์ง€์ง„ ํ”์ )์ด ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์ด ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๊ธธ์ด 25km, ๋„ˆ๋น„ 15km์˜ ์‚ฌ์ดํŠธ๋ฅผ ์—ฐ๊ตฌํ•  ๋•Œ ์ž‘์—… ๊ฒฐ๊ณผ ๊ฐ ํŠธ๋ ˆ์ด์Šค๊ฐ€ 25x25๋ฏธํ„ฐ ํฌ๊ธฐ์˜ ์…€(์ด๋Ÿฌํ•œ ์…€์„ ๋นˆ์ด๋ผ๊ณ  ํ•จ)์˜ ํŠน์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋ฉด ์ตœ์ข… ๋ฐ์ดํ„ฐ ๋ฐฐ์—ด์—๋Š” 600000๊ฐœ์˜ ํŠธ๋ ˆ์ด์Šค๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ƒ˜ํ”Œ๋ง ์‹œ๊ฐ„์ด 1ms์ด๊ณ  ๋…น์Œ ์‹œ๊ฐ„์ด 5์ดˆ์ธ ๊ฒฝ์šฐ ์ตœ์ข… ๋ฐ์ดํ„ฐ ํŒŒ์ผ์€ 11GB ์ด์ƒ์ด ๋˜๋ฉฐ ์›๋ณธ "์›์‹œ" ์ž๋ฃŒ์˜ ์šฉ๋Ÿ‰์€ ์ˆ˜๋ฐฑ ๊ธฐ๊ฐ€๋ฐ”์ดํŠธ์— ์ด๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋“ค๊ณผ ํ˜‘๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ• Wolfram Mathematica?

ํŒจํ‚ค์ง€ ์ง€์งˆํ•™IO

ํŒจํ‚ค์ง€ ๊ฐœ๋ฐœ์ด ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค ๋ฌธ์ œ ๋Ÿฌ์‹œ์•„์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ง€์› ๊ทธ๋ฃน์˜ VK ๋ฒฝ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋ฐ˜์‘ ๋•๋ถ„์— ํ•ด๊ฒฐ์ฑ…์ด ๋งค์šฐ ๋นจ๋ฆฌ ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ๊ฒฐ๊ณผ ์‹ฌ๊ฐํ•œ ๋ฐœ์ „์œผ๋กœ ๋ฐœ์ „ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋™ Wolfram ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฒฝ ๊ฒŒ์‹œ๋ฌผ ์‹ฌ์ง€์–ด ์ค‘์žฌ์ž์— ์˜ํ•ด ํ‘œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์ด ํŒจํ‚ค์ง€๋Š” ์ง€์งˆํ•™ ์‚ฐ์—…์—์„œ ํ™œ๋ฐœํžˆ ์‚ฌ์šฉ๋˜๋Š” ๋‹ค์Œ ๋ฐ์ดํ„ฐ ์œ ํ˜• ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  1. ZMAP ๋ฐ IRAP ํ˜•์‹์˜ ์ง€๋„ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ
  2. LAS ํ˜•์‹ ์›ฐ์˜ ์ธก์ • ๊ฐ€์ ธ์˜ค๊ธฐ
  3. ์ง€์ง„ ํŒŒ์ผ ํ˜•์‹์˜ ์ž…๋ ฅ ๋ฐ ์ถœ๋ ฅ SEGY

ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋ ค๋ฉด ์กฐ๋ฆฝ๋œ ํŒจํ‚ค์ง€์˜ ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€์— ์žˆ๋Š” ์ง€์นจ์„ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. Mathematica ๋…ธํŠธ๋ถ:

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

๊ทธ๋Ÿฐ ๋‹ค์Œ ํŒจํ‚ค์ง€๊ฐ€ ๊ธฐ๋ณธ ํด๋”์— ์„ค์น˜๋˜๋ฉฐ ๊ฒฝ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

FileNameJoin[{$UserBasePacletsDirectory, "Repository"}]

์˜ˆ๋ฅผ ๋“ค์–ด ํŒจํ‚ค์ง€์˜ ์ฃผ์š” ๊ธฐ๋Šฅ์„ ๋ณด์—ฌ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ํ˜ธ์ถœ์€ ์ „ํ†ต์ ์œผ๋กœ Wolfram ์–ธ์–ด์˜ ํŒจํ‚ค์ง€์— ๋Œ€ํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

Get["GeologyIO`"]

ํŒจํ‚ค์ง€๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ณผํ”„๋žŒ ์›Œํฌ๋ฒค์น˜. ์ด๋ฅผ ํ†ตํ•ด ํŒจํ‚ค์ง€์˜ ์ฃผ์š” ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ๋ฌธ์„œ ํ˜•์‹์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด ๋ฌธ์„œ๋Š” Wolfram Mathematica ์ž์ฒด ๋ฌธ์„œ์™€ ๋‹ค๋ฅด์ง€ ์•Š์œผ๋ฉฐ, ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ์‚ฌ๋žŒ์„ ์œ„ํ•ด ํŒจํ‚ค์ง€์— ํ…Œ์ŠคํŠธ ํŒŒ์ผ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

ํŠนํžˆ ์ด๋Ÿฌํ•œ ํŒŒ์ผ์€ "Marmousi.segy" ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํ”„๋ž‘์Šค ์„์œ  ์—ฐ๊ตฌ์†Œ์—์„œ ๊ฐœ๋ฐœํ•œ ์ง€์งˆ ๋‹จ๋ฉด์˜ ํ•ฉ์„ฑ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. ์ด ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๋Š” ํŒŒ๋™์žฅ ๋ชจ๋ธ๋ง, ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ์ง€์ง„ ์ถ”์  ์—ญ์ „ ๋“ฑ์— ๋Œ€ํ•œ ์ž์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค. Marmousi ๋ชจ๋ธ ์ž์ฒด๋Š” ํŒจํ‚ค์ง€ ์ž์ฒด๊ฐ€ ๋‹ค์šด๋กœ๋“œ๋œ ์ €์žฅ์†Œ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ์„ ์–ป์œผ๋ ค๋ฉด ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.

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

๊ฐ€์ ธ์˜ค๊ธฐ ๊ฒฐ๊ณผ - SEGYData ๊ฐ์ฒด
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

SEGY ํ˜•์‹์—๋Š” ๊ด€์ฐฐ์— ๋Œ€ํ•œ ๋‹ค์–‘ํ•œ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ฒซ์งธ, ์ด๊ฒƒ์€ ํ…์ŠคํŠธ ์ฃผ์„์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์ž‘์—… ์œ„์น˜, ์ธก์ •์„ ์ˆ˜ํ–‰ํ•œ ํšŒ์‚ฌ ์ด๋ฆ„ ๋“ฑ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ ์ด ํ—ค๋”๋Š” TextHeader ํ‚ค๊ฐ€ ์žˆ๋Š” ์š”์ฒญ์— ์˜ํ•ด ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๋‹จ์ถ•๋œ ํ…์ŠคํŠธ ํ—ค๋”์ž…๋‹ˆ๋‹ค.

Short[marmousi["TextHeader"]]

"Marmousi ๋ฐ์ดํ„ฐ ์„ธํŠธ๋Š” ์—ฐ๊ตฌ์†Œ์—์„œ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ ์†๋„๋Š” 1500m/s์ด๊ณ  ์ตœ๋Œ€ ์†๋„๋Š” 5500m/s์ž…๋‹ˆ๋‹ค."

"trace" ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ง„ ์ถ”์ ์— ์•ก์„ธ์Šคํ•˜์—ฌ ์‹ค์ œ ์ง€์งˆ ๋ชจ๋ธ์„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(ํŒจํ‚ค์ง€์˜ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋Š” ํ‚ค๊ฐ€ ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค).

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

๋ชจ๋ธ ๋งˆ๋ฅด๋ฌด์‹œ
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

ํ˜„์žฌ ์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋Œ€์šฉ๋Ÿ‰ ํŒŒ์ผ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ€๋ถ„์ ์œผ๋กœ ๋กœ๋“œํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํฌ๊ธฐ๊ฐ€ ์ˆ˜์‹ญ ๊ธฐ๊ฐ€๋ฐ”์ดํŠธ์— ๋‹ฌํ•˜๋Š” ํŒŒ์ผ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€์˜ ๊ธฐ๋Šฅ์—๋Š” ๋ฐ์ดํ„ฐ๋ฅผ .segy๋กœ ๋‚ด๋ณด๋‚ด๊ณ  ๋ถ€๋ถ„์ ์œผ๋กœ ํŒŒ์ผ ๋์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ธฐ๋Šฅ๋„ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์™€ ๋ณ„๋„๋กœ .segy ํŒŒ์ผ์˜ ๋ณต์žกํ•œ ๊ตฌ์กฐ๋กœ ์ž‘์—…ํ•  ๋•Œ ํŒจํ‚ค์ง€์˜ ๊ธฐ๋Šฅ์— ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ‚ค์™€ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ณ„ ํŠธ๋ ˆ์ด์Šค์™€ ํ—ค๋”์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด๋ฅผ ๋ณ€๊ฒฝํ•œ ๋‹ค์Œ ํŒŒ์ผ์— ์“ธ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. GeologyIO ๊ตฌํ˜„์— ๋Œ€ํ•œ ๋งŽ์€ ๊ธฐ์ˆ ์  ์„ธ๋ถ€ ์‚ฌํ•ญ์€ ์ด ๊ธฐ์‚ฌ์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๋ฏ€๋กœ ๋ณ„๋„๋กœ ์„ค๋ช…ํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ง€์ง„ ํƒ์‚ฌ์—์„œ ์ŠคํŽ™ํŠธ๋Ÿผ ๋ถ„์„์˜ ๊ด€๋ จ์„ฑ

์ง€์ง„ ๋ฐ์ดํ„ฐ๋ฅผ Wolfram Mathematica๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋‚ด์žฅ๋œ ์‹ ํ˜ธ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ์„ ์‹คํ—˜ ๋ฐ์ดํ„ฐ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ง€์ง„ ์ถ”์ ์€ ์‹œ๊ณ„์—ด์„ ๋‚˜ํƒ€๋‚ด๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ์—ฐ๊ตฌํ•˜๋Š” ์ฃผ์š” ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜๋Š” ์ŠคํŽ™ํŠธ๋Ÿผ ๋ถ„์„์ž…๋‹ˆ๋‹ค. ์ง€์ง„ ๋ฐ์ดํ„ฐ์˜ ์ฃผํŒŒ์ˆ˜ ๊ตฌ์„ฑ์„ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•œ ์ „์ œ ์กฐ๊ฑด ์ค‘ ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ์„ ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ํŒŒ๋™์€ ์„œ๋กœ ๋‹ค๋ฅธ ์ฃผํŒŒ์ˆ˜ ๊ตฌ์„ฑ์„ ํŠน์ง•์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์œ ์šฉํ•œ ํŒŒ๋™์„ ๊ฐ•์กฐํ•˜๊ณ  ๊ฐ„์„ญํŒŒ๋ฅผ ์–ต์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ๋‹ค๊ณต์„ฑ ๋ฐ ํฌํ™”๋„์™€ ๊ฐ™์€ ์•”์„ ํŠน์„ฑ์€ ์ฃผํŒŒ์ˆ˜ ๊ตฌ์„ฑ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ตœ์ƒ์˜ ํŠน์„ฑ์„ ์ง€๋‹Œ ์•”์„์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ๋‘๊ป˜๊ฐ€ ๋‹ค๋ฅธ ๋ ˆ์ด์–ด๋Š” ๋‹ค์–‘ํ•œ ์ฃผํŒŒ์ˆ˜ ๋ฒ”์œ„์—์„œ ์ด์ƒ ํ˜„์ƒ์„ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ์š”์ ์€ ์ด ๊ธฐ์‚ฌ์˜ ๋งฅ๋ฝ์—์„œ ์ฃผ์š”ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๋‘๊ป˜๊ฐ€ ๋‹ค์–‘ํ•œ ๋ ˆ์ด์–ด(์๊ธฐ ๋ชจ๋ธ)์˜ ๊ฒฝ์šฐ ์ง€์ง„ ํ”์ ์„ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์ž…๋‹ˆ๋‹ค. ์ด ๋ชจ๋ธ์€ ์ „ํ†ต์ ์œผ๋กœ ์—ฌ๋Ÿฌ ์ธต์—์„œ ๋ฐ˜์‚ฌ๋œ ํŒŒ๋™์ด ์„œ๋กœ ์ค‘์ฒฉ๋  ๋•Œ ๊ฐ„์„ญ ํšจ๊ณผ๋ฅผ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด ์ง€์ง„ ํƒ์‚ฌ์—์„œ ์—ฐ๊ตฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

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]]

ํ•€์น˜์•„์›ƒ ํ˜•์„ฑ ๋ชจ๋ธ
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์๊ธฐ ๋‚ด๋ถ€์˜ ํŒŒ๋™ ์†๋„๋Š” 4500m/s์ด๊ณ  ์๊ธฐ ์™ธ๋ถ€์˜ ํŒŒ๋™ ์†๋„๋Š” 4000m/s์ด๋ฉฐ ๋ฐ€๋„๋Š” 2200g/cmXNUMX๋กœ ์ผ์ •ํ•˜๋‹ค๊ณ  ๊ฐ€์ •๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋ธ์˜ ๊ฒฝ์šฐ ๋ฐ˜์‚ฌ ๊ณ„์ˆ˜์™€ ์ง€์ง„ ํ”์ ์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

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]

์๊ธฐํ˜• ๋ชจ๋ธ์˜ ์ง€์ง„ ํ”์ 
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ด ๊ทธ๋ฆผ์— ํ‘œ์‹œ๋œ ์ผ๋ จ์˜ ์ง€์ง„ ํ”์ ์„ ์ง€์ง„ ๋‹จ๋ฉด์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ณด์‹œ๋‹ค์‹œํ”ผ, ๋ฐ˜์‚ฌํŒŒ์˜ ๊ธฐํ•˜ํ•™์  ๊ตฌ์กฐ๊ฐ€ ์ด์ „์— ์ง€์ •ํ•œ ๋ชจ๋ธ๊ณผ ๋ช…ํ™•ํ•˜๊ฒŒ ์ผ์น˜ํ•˜๋ฏ€๋กœ ํ•ด์„์€ ์ง๊ด€์ ์ธ ์ˆ˜์ค€์—์„œ ์ˆ˜ํ–‰๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ถ”์ ์„ ๋” ์ž์„ธํžˆ ๋ถ„์„ํ•˜๋ฉด 1์—์„œ ์•ฝ 30๊นŒ์ง€์˜ ์ถ”์ ์ด ๋‹ค๋ฅด์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ์กฐ๋ฌผ์˜ ์ง€๋ถ•๊ณผ ๋ฐ”๋‹ฅ์˜ ๋ฐ˜์‚ฌ๊ฐ€ ์„œ๋กœ ๊ฒน์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 31๋ฒˆ์งธ ํŠธ๋ ˆ์ด์Šค๋ถ€ํ„ฐ ๋ฐ˜์‚ฌ๊ฐ€ ๊ฐ„์„ญํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ชจ๋ธ์—์„œ๋Š” ๋ฐ˜์‚ฌ ๊ณ„์ˆ˜๊ฐ€ ์ˆ˜ํ‰์œผ๋กœ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€์ง„ ํ”์ ์€ ์ง€์ธต์˜ ๋‘๊ป˜๊ฐ€ ๋ณ€๊ฒฝ๋จ์— ๋”ฐ๋ผ ๊ฐ•๋„๊ฐ€ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.

์ง€์ธต์˜ ์ƒ๋ถ€ ๊ฒฝ๊ณ„๋กœ๋ถ€ํ„ฐ์˜ ๋ฐ˜์‚ฌ ์ง„ํญ์„ ๊ณ ๋ คํ•ด ๋ด…์‹œ๋‹ค. 60๋ฒˆ์งธ ๊ฒฝ๋กœ๋ถ€ํ„ฐ ๋ฐ˜์‚ฌ ๊ฐ•๋„๊ฐ€ ์ฆ๊ฐ€ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๊ณ  70๋ฒˆ์งธ ๊ฒฝ๋กœ์—์„œ ์ตœ๋Œ€๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ง€์ธต์˜ ์ง€๋ถ•๊ณผ ๋ฐ”๋‹ฅ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ํŒŒ๋„์˜ ๊ฐ„์„ญ์ด ๋‚˜ํƒ€๋‚˜๋Š” ๋ฐฉ์‹์œผ๋กœ, ์ผ๋ถ€ ๊ฒฝ์šฐ์—๋Š” ์ง€์ง„ ๊ธฐ๋ก์— ์‹ฌ๊ฐํ•œ ์ด์ƒ ํ˜„์ƒ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

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]

์๊ธฐ์˜ ์ƒ๋‹จ ๊ฐ€์žฅ์ž๋ฆฌ์—์„œ ๋ฐ˜์‚ฌํŒŒ์˜ ์ง„ํญ ๊ทธ๋ž˜ํ”„
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์‹ ํ˜ธ์˜ ์ฃผํŒŒ์ˆ˜๊ฐ€ ๋‚ฎ์„์ˆ˜๋ก ํฐ ํ˜•์„ฑ ๋‘๊ป˜์—์„œ ๊ฐ„์„ญ์ด ๋‚˜ํƒ€๋‚˜๊ธฐ ์‹œ์ž‘ํ•˜๊ณ , ๊ณ ์ฃผํŒŒ ์‹ ํ˜ธ์˜ ๊ฒฝ์šฐ ๋” ์ž‘์€ ๋‘๊ป˜์—์„œ ๊ฐ„์„ญ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์ด ๋…ผ๋ฆฌ์ ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ ์ฝ”๋“œ ์กฐ๊ฐ์€ 35Hz, 55Hz, 85Hz ์ฃผํŒŒ์ˆ˜์˜ ์‹ ํ˜ธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

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]

35Hz, 55Hz, 85Hz์˜ ์ฃผํŒŒ์ˆ˜๋ฅผ ๊ฐ–๋Š” ์†Œ์Šค ์‹ ํ˜ธ ์„ธํŠธ
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ง€์ง„ ํ”์ ์„ ๊ณ„์‚ฐํ•˜๊ณ  ๋ฐ˜์‚ฌํŒŒ ์ง„ํญ์˜ ๊ทธ๋ž˜ํ”„๋ฅผ ์ž‘์„ฑํ•จ์œผ๋กœ์จ ์„œ๋กœ ๋‹ค๋ฅธ ์ฃผํŒŒ์ˆ˜์— ๋Œ€ํ•ด ์„œ๋กœ ๋‹ค๋ฅธ ํ˜•์„ฑ ๋‘๊ป˜์—์„œ ์ด์ƒ์ด ๊ด€์ฐฐ๋œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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]

๋‹ค์–‘ํ•œ ์ฃผํŒŒ์ˆ˜์— ๋Œ€ํ•œ ์๊ธฐ์˜ ์ƒ๋‹จ ๊ฐ€์žฅ์ž๋ฆฌ์—์„œ ๋ฐ˜์‚ฌํŒŒ์˜ ์ง„ํญ ๊ทธ๋ž˜ํ”„
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ง€์ง„ ๊ด€์ธก ๊ฒฐ๊ณผ๋กœ๋ถ€ํ„ฐ ์ง€์ธต์˜ ๋‘๊ป˜์— ๋Œ€ํ•œ ๊ฒฐ๋ก ์„ ๋„์ถœํ•˜๋Š” ๋Šฅ๋ ฅ์€ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์„์œ  ํƒ์‚ฌ์˜ ์ฃผ์š” ์ž‘์—… ์ค‘ ํ•˜๋‚˜๋Š” ์œ ์ •์„ ๋†“๊ธฐ ์œ„ํ•œ ๊ฐ€์žฅ ์œ ๋งํ•œ ์ง€์ (์ฆ‰, ์ง€์ธต์ด ์žˆ๋Š” ์ง€์—ญ)์„ ํ‰๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋” ๋‘๊บผ์šด). ๋˜ํ•œ ์ง€์งˆ ๋‹จ๋ฉด์—๋Š” ์ƒ์„ฑ์œผ๋กœ ์ธํ•ด ํ˜•์„ฑ ๋‘๊ป˜๊ฐ€ ๊ธ‰๊ฒฉํžˆ ๋ณ€ํ•˜๋Š” ๋ฌผ์ฒด๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ŠคํŽ™ํŠธ๋Ÿผ ๋ถ„์„์„ ์—ฐ๊ตฌํ•˜๋Š” ๋ฐ ํšจ๊ณผ์ ์ธ ๋„๊ตฌ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๊ธฐ์‚ฌ์˜ ๋‹ค์Œ ๋ถ€๋ถ„์—์„œ๋Š” ๊ทธ๋Ÿฌํ•œ ์ง€์งˆํ•™์  ๋ฌผ์ฒด๋ฅผ ๋” ์ž์„ธํžˆ ๊ณ ๋ คํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์‹คํ—˜ ๋ฐ์ดํ„ฐ. ์–ด๋””์„œ ์–ป์—ˆ์œผ๋ฉฐ ๊ทธ ์•ˆ์—์„œ ๋ฌด์—‡์„ ์ฐพ์•„์•ผ ํ•ฉ๋‹ˆ๊นŒ?

๊ธฐ์‚ฌ์—์„œ ๋ถ„์„๋œ ์ž๋ฃŒ๋Š” ์„œ๋ถ€ ์‹œ๋ฒ ๋ฆฌ์•„์—์„œ ์–ป์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ์ง€์—ญ์€ ๋ˆ„๊ตฌ๋‚˜ ์˜ˆ์™ธ ์—†์ด ์•Œ๊ณ  ์žˆ๋“ฏ์ด ์šฐ๋ฆฌ๋‚˜๋ผ์˜ ์ฃผ์š” ์‚ฐ์œ ์ง€์—ญ์ด๋‹ค. ์ง€๋‚œ ์„ธ๊ธฐ 60๋…„๋Œ€์— ์ด ์ง€์—ญ์—์„œ ํ™œ๋ฐœํ•œ ํ‡ด์ ๋ฌผ ๊ฐœ๋ฐœ์ด ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์„์œ  ๋งค์žฅ์ง€๋ฅผ ์ฐพ๋Š” ์ฃผ์š” ๋ฐฉ๋ฒ•์€ ์ง€์ง„ ํƒ์‚ฌ์ž…๋‹ˆ๋‹ค. ์ด ์ง€์—ญ์˜ ์œ„์„ฑ ์ด๋ฏธ์ง€๋ฅผ ๋ณด๋Š” ๊ฒƒ์€ ํฅ๋ฏธ ๋กญ์Šต๋‹ˆ๋‹ค. ์ž‘์€ ๊ทœ๋ชจ์—์„œ๋Š” ์—„์ฒญ๋‚œ ์ˆ˜์˜ ๋Šช๊ณผ ํ˜ธ์ˆ˜๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ง€๋„๋ฅผ ํ™•๋Œ€ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ์šฐ๋ฌผ ์‹œ์ถ” ์žฅ์†Œ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๊ณ , ์ง€๋„๋ฅผ ํ•œ๊ณ„๊นŒ์ง€ ํ™•๋Œ€ํ•˜๋ฉด ์ง€์ง„์ด ๋ฐœ์ƒํ•œ ํ”„๋กœํ•„์˜ ๊ฐœ๊ฐ„๋„ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ด€์ฐฐ์ด ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Yandex ์ง€๋„์˜ ์œ„์„ฑ ์ด๋ฏธ์ง€ - Noyabrsk ๋„์‹œ ์ง€์—ญ
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

๋“คํŒ ์ค‘ ํ•˜๋‚˜์— ์žˆ๋Š” ์šฐ๋ฌผ ํŒจ๋“œ ๋„คํŠธ์›Œํฌ
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์„œ๋ถ€ ์‹œ๋ฒ ๋ฆฌ์•„์˜ ์„์œ  ํ•จ์œ  ์•”์„์€ 1km์—์„œ 5km๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๊นŠ์ด์—์„œ ๋ฐœ๊ฒฌ๋ฉ๋‹ˆ๋‹ค. ์„์œ ๋ฅผ ํ•จ์œ ํ•œ ์•”์„์˜ ๋Œ€๋ถ€๋ถ„์€ ์ฅ๋ผ๊ธฐ์™€ ๋ฐฑ์•…๊ธฐ์— ํ˜•์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฅฌ๋ผ๊ธฐ ์‹œ๋Œ€๋Š” ์•„๋งˆ๋„ ๊ฐ™์€ ์ด๋ฆ„์˜ ์˜ํ™”๋ฅผ ํ†ตํ•ด ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์•Œ๋ ค์กŒ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฅ๋ผ๊ธฐ ๊ธฐํ›„ ํ˜„๋Œ€์™€๋Š” ํ™•์—ฐํžˆ ๋‹ฌ๋ž์Šต๋‹ˆ๋‹ค. ๋ธŒ๋ฆฌํƒœ๋‹ˆ์ปค ๋ฐฑ๊ณผ์‚ฌ์ „์—๋Š” ๊ฐ ์ƒ๋ฌผ ์‹œ๋Œ€๋ฅผ ํŠน์ง•์ง“๋Š” ์ผ๋ จ์˜ ๊ณ ์ง€ ์ง€๋„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์š”์ฆ˜
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica
์ฅ๋ผ๊ธฐ
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ฅ๋ผ๊ธฐ ์‹œ๋Œ€์— ์„œ๋ถ€ ์‹œ๋ฒ ๋ฆฌ์•„์˜ ์˜ํ† ๋Š” ํ•ด์•ˆ(๊ฐ•๊ณผ ์–•์€ ๋ฐ”๋‹ค๊ฐ€ ๊ต์ฐจํ•˜๋Š” ๋•…)์ด์—ˆ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•˜์„ธ์š”. ๊ธฐํ›„๊ฐ€ ํŽธ์•ˆํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‹น์‹œ์˜ ์ „ํ˜•์ ์ธ ํ’๊ฒฝ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•˜์„ ๊ฒƒ์œผ๋กœ ์ถ”์ธกํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฅ๋ผ๊ธฐ ์‹œ๋ฒ ๋ฆฌ์•„
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์ด ์‚ฌ์ง„์—์„œ ์šฐ๋ฆฌ์—๊ฒŒ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋™๋ฌผ์ด๋‚˜ ์ƒˆ๋ณด๋‹ค๋Š” ๋ฐฐ๊ฒฝ์— ์žˆ๋Š” ๊ฐ•์˜ ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค. ๊ฐ•์€ ์šฐ๋ฆฌ๊ฐ€ ์•ž์„œ ๋ฉˆ์ท„๋˜ ๊ฒƒ๊ณผ ๋™์ผํ•œ ์ง€์งˆํ•™์  ๋Œ€์ƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ์‹ค ๊ฐ•์˜ ํ™œ๋™์œผ๋กœ ์ธํ•ด ์ž˜ ๋ถ„๋ฅ˜๋œ ์‚ฌ์•”์ด ์ถ•์ ๋˜์–ด ์„์œ  ์ €์žฅ์†Œ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ €์ˆ˜์ง€๋Š” ๊ธฐ์ดํ•˜๊ณ  ๋ณต์žกํ•œ ๋ชจ์–‘(๊ฐ•๋ฐ”๋‹ฅ๊ณผ ๊ฐ™์€)์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋‘๊ป˜๊ฐ€ ๋‹ค์–‘ํ•ฉ๋‹ˆ๋‹ค. ์ œ๋ฐฉ ๊ทผ์ฒ˜์—์„œ๋Š” ๋‘๊ป˜๊ฐ€ ์ž‘์ง€๋งŒ ์ˆ˜๋กœ ์ค‘์•™์— ๊ฐ€๊นŒ์šฐ๊ฑฐ๋‚˜ ๊ตฌ๋ถˆ๊ตฌ๋ถˆํ•œ ์ง€์—ญ์—์„œ๋Š” ๋‘๊ป˜๊ฐ€ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ฅ๋ผ๊ธฐ์— ํ˜•์„ฑ๋œ ๊ฐ•์€ ํ˜„์žฌ ์•ฝ XNUMXkm ๊นŠ์ด์— ์žˆ์œผ๋ฉฐ ์„์œ  ์ €์žฅ์†Œ๋ฅผ ์ฐพ๋Š” ๋Œ€์ƒ์ž…๋‹ˆ๋‹ค.

์‹คํ—˜ ๋ฐ์ดํ„ฐ. ์ฒ˜๋ฆฌ ๋ฐ ์‹œ๊ฐํ™”

๊ธฐ์‚ฌ์— ํ‘œ์‹œ๋œ ์ง€์ง„ ์ž๋ฃŒ์— ๋Œ€ํ•ด ์ฆ‰์‹œ ์˜ˆ์•ฝํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ถ„์„์— ์‚ฌ์šฉ๋œ ๋ฐ์ดํ„ฐ์˜ ์–‘์ด ์ƒ๋‹นํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์›๋ณธ ์ง€์ง„ ํ”์  ์„ธํŠธ์˜ ์ผ๋ถ€๋งŒ ๊ธฐ์‚ฌ์˜ ํ…์ŠคํŠธ์— ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ˆ„๊ตฌ๋‚˜ ์œ„์˜ ๊ณ„์‚ฐ์„ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์ง„ ๋ฐ์ดํ„ฐ๋กœ ์ž‘์—…ํ•  ๋•Œ ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์ž๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๊ณ  ํŽธ๋ฆฌํ•œ ๊ทธ๋ž˜ํ”ฝ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ํŠน์ˆ˜ ์†Œํ”„ํŠธ์›จ์–ด(Petrel ๋˜๋Š” Paradigm๊ณผ ๊ฐ™์ด ๊ฐœ๋ฐœ์ด ์ ๊ทน์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์—ฌ๋Ÿฌ ์—…๊ณ„ ๋ฆฌ๋”๊ฐ€ ์žˆ์Œ)๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ํŽธ๋ฆฌํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜ ์†Œํ”„ํŠธ์›จ์–ด์—๋Š” ๋‹จ์ ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์•ˆ์ •์ ์ธ ๋ฒ„์ „์—์„œ ์ตœ์‹  ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ๋Š” ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ณ  ๊ณ„์‚ฐ ์ž๋™ํ™” ๊ฐ€๋Šฅ์„ฑ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ƒํ™ฉ์—์„œ๋Š” ๊ด‘๋ฒ”์œ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ธฐ๋ฐ˜์„ ์‚ฌ์šฉํ•˜๋Š” ๋™์‹œ์— ๋งŽ์€ ๋ฃจํ‹ด์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ปดํ“จํ„ฐ ์ˆ˜ํ•™ ์‹œ์Šคํ…œ๊ณผ ๊ณ ๊ธ‰ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ํŽธ๋ฆฌํ•ด์ง‘๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด Wolfram Mathematica์—์„œ ์ง€์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์ž‘์—…ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์›๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ ๋Œ€ํ™”ํ˜• ์ž‘์—…์„ ์œ„ํ•ด ํ’๋ถ€ํ•œ ๊ธฐ๋Šฅ์„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋ถ€์ ์ ˆํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ํ—ˆ์šฉ๋˜๋Š” ํ˜•์‹์—์„œ ๋กœ๋“œํ•˜๊ณ , ์›ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉํ•˜๊ณ , ์™ธ๋ถ€ ํ˜•์‹์œผ๋กœ ๋‹ค์‹œ ์—…๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ๋” ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

์ œ์•ˆ๋œ ๋ฐฉ์‹์— ๋”ฐ๋ผ ์›๋ณธ ์ง€์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ๋“œํ•˜๊ณ  ์ด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. 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]

์ด๋ ‡๊ฒŒ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋Š” 10 x 5km ํฌ๊ธฐ์˜ ์˜์—ญ์— ๊ธฐ๋ก๋œ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค. XNUMX์ฐจ์› ์ง€์ง„์กฐ์‚ฌ ๋ฐฉ์‹(ํŒŒ๋™์ด ๊ฐœ๋ณ„ ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™์  ๋‹จ๋ฉด์ด ์•„๋‹Œ ์ „์ฒด ์ง€์—ญ์— ๊ฑธ์ณ ๋™์‹œ์— ๊ธฐ๋ก๋จ)์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์–ป์œผ๋ฉด ์ง€์ง„ ๋ฐ์ดํ„ฐ ํ๋ธŒ๋ฅผ ์–ป๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค. ์ด๋Š” ์ง€์งˆ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์ƒ์„ธํ•œ ์—ฐ๊ตฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ์ˆ˜์ง ๋ฐ ์ˆ˜ํ‰ ๋‹จ๋ฉด์˜ XNUMX์ฐจ์› ๋ฌผ์ฒด์ž…๋‹ˆ๋‹ค. ๊ณ ๋ ค๋œ ์˜ˆ์—์„œ ์šฐ๋ฆฌ๋Š” XNUMX์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ…์ŠคํŠธ ํ—ค๋”์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

C 1 ์ด๊ฒƒ์€ GEOLOGYIO ํŒจํ‚ค์ง€ ํ…Œ์ŠคํŠธ์šฉ ๋ฐ๋ชจ ํŒŒ์ผ์ž…๋‹ˆ๋‹ค.
C 2
C 3
C 4
C 5 ๋‚ ์งœ ์‚ฌ์šฉ์ž ์ด๋ฆ„: WOLFRAM ์‚ฌ์šฉ์ž
C 6 ์„ค๋ฌธ ์กฐ์‚ฌ ์ด๋ฆ„: ์‹œ๋ฒ ๋ฆฌ์•„ ์–ด๋”˜๊ฐ€
C 7 ํŒŒ์ผ ์œ ํ˜• 3์ฐจ์› ์ง€์ง„๋Ÿ‰
C 8
C 9
C10 Z ๋ฒ”์œ„: ์ฒ˜์Œ 2200M ๋งˆ์ง€๋ง‰ 2400M

์ด ๋ฐ์ดํ„ฐ ์„ธํŠธ๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์„์˜ ์ฃผ์š” ๋‹จ๊ณ„๋ฅผ ๋ณด์—ฌ์ฃผ๊ธฐ์— ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ์˜ ํŠธ๋ ˆ์ด์Šค๋Š” ์ˆœ์ฐจ์ ์œผ๋กœ ๊ธฐ๋ก๋˜๋ฉฐ ๊ฐ ํŠธ๋ ˆ์ด์Šค๋Š” ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ˆ˜์ง ์ถ•(๊นŠ์ด ์ถ•)์„ ๋”ฐ๋ฅธ ๋ฐ˜์‚ฌํŒŒ์˜ ์ง„ํญ ๋ถ„ํฌ์ž…๋‹ˆ๋‹ค.

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]

์ง€์ง„๋‹จ๋ฉด ํ”์  ์ค‘ ํ•˜๋‚˜
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์—ฐ๊ตฌ ์˜์—ญ์˜ ๊ฐ ๋ฐฉํ–ฅ์— ๋ช‡ ๊ฐœ์˜ ํŠธ๋ ˆ์ด์Šค๊ฐ€ ์žˆ๋Š”์ง€ ์•Œ๋ฉด 3์ฐจ์› ๋ฐ์ดํ„ฐ ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•˜๊ณ  ImageXNUMXD[] ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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]]

์ง€์ง„ ๋ฐ์ดํ„ฐ ํ๋ธŒ์˜ XNUMXD ์ด๋ฏธ์ง€(์„ธ๋กœ์ถ• - ๊นŠ์ด)
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

๊ด€์‹ฌ ์žˆ๋Š” ์ง€์งˆํ•™์  ํŠน์ง•์ด ๊ฐ•๋ ฌํ•œ ์ง€์ง„ ์ด์ƒ ํ˜„์ƒ์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ ํˆฌ๋ช…์„ฑ์„ ๊ฐ–์ถ˜ ์‹œ๊ฐํ™” ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋…นํ™”์˜ "์ค‘์š”ํ•˜์ง€ ์•Š์€" ์˜์—ญ์€ ๋ณด์ด์ง€ ์•Š๊ฒŒ ๋งŒ๋“ค์–ด ์˜ˆ์™ธ์ ์ธ ๋ถ€๋ถ„๋งŒ ๋ณด์ด๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Wolfram Mathematica์—์„œ๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถˆํˆฌ๋ช…[] ะธ ๋ž˜์Šคํ„ฐ3D[].

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]

Opacity[] ๋ฐ Raster3D[] ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ์ง€์ง„ ๋ฐ์ดํ„ฐ ํ๋ธŒ ์ด๋ฏธ์ง€ ์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

ํ•ฉ์„ฑ ์˜ˆ์—์„œ์™€ ๊ฐ™์ด ์›๋ž˜ ์ž…๋ฐฉ์ฒด์˜ ๋‹จ๋ฉด์—์„œ ๊ฐ€๋ณ€ ๊ธฐ๋ณต์ด ์žˆ๋Š” ์ผ๋ถ€ ์ง€์งˆํ•™์  ๊ฒฝ๊ณ„(์ธต)๋ฅผ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ŠคํŽ™ํŠธ๋Ÿผ ๋ถ„์„์˜ ์ฃผ์š” ๋„๊ตฌ๋Š” ํ‘ธ๋ฆฌ์— ๋ณ€ํ™˜์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐ ํŠธ๋ ˆ์ด์Šค ๋˜๋Š” ํŠธ๋ ˆ์ด์Šค ๊ทธ๋ฃน์˜ ์ง„ํญ-์ฃผํŒŒ์ˆ˜ ์ŠคํŽ™ํŠธ๋Ÿผ์„ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผํŒŒ์ˆ˜ ์˜์—ญ์œผ๋กœ ์ „์†กํ•œ ํ›„์—๋Š” ์ฃผํŒŒ์ˆ˜๊ฐ€ ์–ธ์ œ(์–ด๋–ค ๊นŠ์ด์—์„œ ์ฝํ˜€์ง€๋Š”์ง€) ๋ณ€๊ฒฝ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์†์‹ค๋ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„(๊นŠ์ด) ์ถ•์—์„œ ์‹ ํ˜ธ ๋ณ€ํ™”๋ฅผ ๊ตญ์ง€ํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ์œˆ๋„์šฐ ํ‘ธ๋ฆฌ์— ๋ณ€ํ™˜ ๋ฐ ์›จ์ด๋ธ”๋ฆฟ ๋ถ„ํ•ด๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ์›จ์ด๋ธ”๋ฆฟ ๋ถ„ํ•ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์›จ์ด๋ธ”๋ฆฟ ๋ถ„์„ ๊ธฐ์ˆ ์€ 90๋…„๋Œ€๋ถ€ํ„ฐ ์ง€์ง„ํƒ์‚ฌ์— ํ™œ๋ฐœํžˆ ํ™œ์šฉ๋˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ์œˆ๋„์šฐ ํ‘ธ๋ฆฌ์— ๋ณ€ํ™˜์— ๋น„ํ•ด ์žฅ์ ์€ ๋” ๋‚˜์€ ์‹œ๊ฐ„ ๋ถ„ํ•ด๋Šฅ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ง€์ง„ ์ถ”์  ์ค‘ ํ•˜๋‚˜๋ฅผ ๊ฐœ๋ณ„ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๋ถ„ํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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]

์ถ”์ ์„ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๋ถ„ํ•ด
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์„œ๋กœ ๋‹ค๋ฅธ ํŒŒ๋™ ๋„๋‹ฌ ์‹œ๊ฐ„์— ๋ฐ˜์‚ฌ ์—๋„ˆ์ง€๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ถ„ํฌ๋˜๋Š”์ง€ ํ‰๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด ์Šค์ผ€์ผ๋กœ๊ทธ๋žจ(์ŠคํŽ™ํŠธ๋กœ๊ทธ๋žจ๊ณผ ์œ ์‚ฌ)์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์‹ค์ œ๋กœ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋ถ„์„ํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ €, ์ค‘, ๊ณ ์ฃผํŒŒ ์„ฑ๋ถ„์ด ์„ ํƒ๋ฉ๋‹ˆ๋‹ค.

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]

์Šค์ผ€์ผ๋กœ๊ทธ๋žจ. ํ•จ์ˆ˜ ๊ฒฐ๊ณผ ์›จ์ด๋ธ”๋ฆฟ์Šค์ผ€์ผ๋กœ๊ทธ๋žจ[]
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

Wolfram ์–ธ์–ด๋Š” ์›จ์ด๋ธ”๋ฆฟ ๋ณ€ํ™˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฐ์†์›จ์ด๋ธŒ๋ ›๋ณ€ํ˜•[]. ๊ทธ๋ฆฌ๊ณ  ์ „์ฒด ์ถ”์  ์„ธํŠธ์— ์ด ๊ธฐ๋Šฅ์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋‹ค์Œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”[]. ์—ฌ๊ธฐ์—์„œ Wolfram Mathematica์˜ ๊ฐ•์  ์ค‘ ํ•˜๋‚˜์ธ ๋ณ‘๋ ฌํ™” ๊ธฐ๋Šฅ์„ ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ‘๋ ฌ ํ…Œ์ด๋ธ”[]. ์œ„์˜ ์˜ˆ์—์„œ๋Š” ๋ณ‘๋ ฌํ™”๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์˜ ์–‘์€ ํฌ์ง€ ์•Š์ง€๋งŒ ์ˆ˜์‹ญ๋งŒ ๊ฐœ์˜ ์ถ”์ ์ด ํฌํ•จ๋œ ์‹คํ—˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋กœ ์ž‘์—…ํ•  ๋•Œ ๋ณ‘๋ ฌํ™”๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

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

๊ธฐ๋Šฅ์„ ์ ์šฉํ•œ ํ›„ ์—ฐ์†์›จ์ด๋ธŒ๋ ›๋ณ€ํ˜•[] ์„ ํƒํ•œ ๋นˆ๋„์— ํ•ด๋‹นํ•˜๋Š” ์ƒˆ ๋ฐ์ดํ„ฐ ์„ธํŠธ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ์œ„์˜ ์˜ˆ์—์„œ ์ด๋Ÿฌํ•œ ์ฃผํŒŒ์ˆ˜๋Š” 38Hz, 33Hz, 27Hz์ž…๋‹ˆ๋‹ค. ์ฃผํŒŒ์ˆ˜ ์„ ํƒ์€ ํ…Œ์ŠคํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐ€์žฅ ์ž์ฃผ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์ฃผํŒŒ์ˆ˜ ์กฐํ•ฉ์— ๋Œ€ํ•œ ํšจ๊ณผ์ ์ธ ๋งต์„ ์–ป๊ณ  ์ง€์งˆ ํ•™์ž์˜ ๊ด€์ ์—์„œ ๊ฐ€์žฅ ์œ ์ตํ•œ ๋งต์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ๋ฅผ ๋™๋ฃŒ์™€ ๊ณต์œ ํ•˜๊ฑฐ๋‚˜ ๊ณ ๊ฐ์—๊ฒŒ ์ œ๊ณตํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ GeologyIO ํŒจํ‚ค์ง€์˜ SEGYExport[] ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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];

์ด๋Ÿฌํ•œ ํ๋ธŒ ์ค‘ ์„ธ ๊ฐœ(์ €์ฃผํŒŒ์ˆ˜, ์ค‘๊ฐ„ ์ฃผํŒŒ์ˆ˜ ๋ฐ ๊ณ ์ฃผํŒŒ์ˆ˜ ๊ตฌ์„ฑ ์š”์†Œ)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ผ๋ฐ˜์ ์œผ๋กœ RGB ๋ธ”๋ Œ๋”ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ๊ป˜ ์‹œ๊ฐํ™”ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๊ตฌ์„ฑ ์š”์†Œ์—๋Š” ๋นจ๊ฐ„์ƒ‰, ๋…น์ƒ‰, ํŒŒ๋ž€์ƒ‰ ๋“ฑ ๊ณ ์œ ํ•œ ์ƒ‰์ƒ์ด ์ง€์ •๋ฉ๋‹ˆ๋‹ค. Wolfram Mathematica์—์„œ๋Š” ๋‹ค์Œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒ‰์ƒ๊ฒฐํ•ฉ[].

๊ทธ ๊ฒฐ๊ณผ๋Š” ์ง€์งˆํ•™์  ํ•ด์„์ด ๊ฐ€๋Šฅํ•œ ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ๋‹จ๋ฉด์— ๊ธฐ๋ก๋œ ๊ตฌ๋ถˆ๊ตฌ๋ถˆํ•œ ์ง€ํ˜•์„ ํ†ตํ•ด ์ €์ˆ˜์ง€์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๊ณ  ์„์œ  ๋งค์žฅ๋Ÿ‰์ด ํฌํ•จ๋œ ๊ณ ๋Œ€ ์ˆ˜๋กœ์˜ ์œค๊ณฝ์„ ๊ทธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌํ•œ ํ•˜์ฒœ ์‹œ์Šคํ…œ์˜ ํ˜„๋Œ€ ์œ ์‚ฌ์ฒด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๋ถ„์„ํ•˜๋ฉด ๊ตฌ๋ถˆ๊ตฌ๋ถˆํ•œ ๊ตฌ๋ถˆ๊ตฌ๋ถˆํ•œ ๋ถ€๋ถ„์˜ ๊ฐ€์žฅ ์œ ๋งํ•œ ๋ถ€๋ถ„์„ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜๋กœ ์ž์ฒด๋Š” ์ž˜ ๋ถ„๋ฅ˜๋œ ์‚ฌ์•”์ธต์ด ๋‘๊ป๊ฒŒ ์Œ“์ธ ๊ฒƒ์ด ํŠน์ง•์ด๋ฉฐ ์„์œ ๋ฅผ ์ €์žฅํ•˜๋Š” ์ข‹์€ ์žฅ์†Œ์ž…๋‹ˆ๋‹ค. "๋ ˆ์ด์Šค" ์ด์ƒ ํ˜„์ƒ ์™ธ๋ถ€์˜ ์ง€์—ญ์€ ํ˜„๋Œ€์˜ ๋ฒ”๋žŒ์› ํ‡ด์ ๋ฌผ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ฒ”๋žŒ์› ํ‡ด์ ๋ฌผ์€ ์ฃผ๋กœ ์ ํ† ์งˆ ์•”์„์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์œผ๋ฉฐ ์ด๋Ÿฌํ•œ ์ง€์—ญ์— ๋Œ€ํ•œ ์‹œ์ถ” ์ž‘์—…์€ ํšจ๊ณผ์ ์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ํ๋ธŒ์˜ RGB ์Šฌ๋ผ์ด์Šค. ์ค‘์•™(์ค‘์•™์—์„œ ์•ฝ๊ฐ„ ์™ผ์ชฝ)์—์„œ๋Š” ๊ตฌ๋ถˆ๊ตฌ๋ถˆํ•œ ๊ฐ•์„ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica
๋ฐ์ดํ„ฐ ํ๋ธŒ์˜ RGB ์Šฌ๋ผ์ด์Šค. ์™ผ์ชฝ์—๋Š” ๊ตฌ๋ถˆ๊ตฌ๋ถˆํ•œ ๊ฐ•์„ ๋”ฐ๋ผ๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

์–ด๋–ค ๊ฒฝ์šฐ์—๋Š” ์ง€์ง„ ๋ฐ์ดํ„ฐ์˜ ํ’ˆ์งˆ์„ ํ†ตํ•ด ํ›จ์”ฌ ๋” ์„ ๋ช…ํ•œ ์ด๋ฏธ์ง€๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ˜„์žฅ ์ž‘์—… ๋ฐฉ๋ฒ•๋ก , ์†Œ์Œ ๊ฐ์†Œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ์‚ฌ์šฉ๋˜๋Š” ์žฅ๋น„์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ ํ•˜์ฒœ ์‹œ์Šคํ…œ์˜ ์ผ๋ถ€๋งŒ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ™•์žฅ๋œ ๊ณ ๊ฐ• ์ „์ฒด๋„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์ง„ ๋ฐ์ดํ„ฐ ํ๋ธŒ(์ˆ˜ํ‰ ์Šฌ๋ผ์ด์Šค)์˜ ์„ธ ๊ฐ€์ง€ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ RGB๋กœ ํ˜ผํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๊นŠ์ด๋Š” ์•ฝ 2km.
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica
์‚ฌ๋ผํ† ํ”„ ์ธ๊ทผ ๋ณผ๊ฐ€ ๊ฐ•์˜ ์œ„์„ฑ ์ด๋ฏธ์ง€
์ง€๊ตฌ๋ฌผ๋ฆฌํ•™ ๋ถ„์•ผ์˜ Wolfram Mathematica

๊ฒฐ๋ก 

Wolfram Mathematica๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ง€์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๊ด‘๋ฌผ ํƒ์‚ฌ์™€ ๊ด€๋ จ๋œ ์‘์šฉ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, GeologyIO ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ด ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋”์šฑ ํŽธ๋ฆฌํ•ด์ง‘๋‹ˆ๋‹ค. ์ง€์ง„ ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ๋Š” ๋‚ด์žฅ๋œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„์‚ฐ ์†๋„๋ฅผ ๋†’์ด๋Š” ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค(๋ณ‘๋ ฌ ํ…Œ์ด๋ธ”[], ๋ณ‘๋ ฌ ์‹คํ–‰[],โ€ฆ)์€ ๋งค์šฐ ํšจ์œจ์ ์ด๋ฉฐ ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋Œ€๋ถ€๋ถ„ GeologyIO ํŒจํ‚ค์ง€์˜ ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ์ด‰์ง„๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ด ํŒจํ‚ค์ง€๋Š” ์‘์šฉ ์ง€์ง„ ํƒ์‚ฌ ๋ถ„์•ผ์—๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ง€ํ‘œ ํˆฌ๊ณผ ๋ ˆ์ด๋” ๋ฐ ์ง€์ง„ํ•™์—์„œ๋„ ๊ฑฐ์˜ ๋™์ผํ•œ ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ œ์•ˆ์ด ์žˆ๊ฑฐ๋‚˜ Wolfram Mathematica ๋ฌด๊ธฐ๊ณ ์˜ ์–ด๋–ค ์‹ ํ˜ธ ๋ถ„์„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ์— ์ ์šฉ ๊ฐ€๋Šฅํ•˜๊ฑฐ๋‚˜ ๋น„ํŒ์ ์ธ ์˜๊ฒฌ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ฝ”๋ฉ˜ํŠธ๋ฅผ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€