当尝试使用本文描述的技术进行色散分析时纸,我得到了下面的图像。
不幸的是,我这辈子都弄不清楚我到底做错了什么。所以我觉得我一定错过了什么作为起点从概念上讲。下面是我处理色散图像的python脚本。
##…执行分散分析##。定义参数ng = 20 #检波器数量nVp = 200 #检波器测试点数量nfreq = 200 #频率测试点数量ndata = 600 #每道数据点数量dt = 1/16000 # Time_Delta ##。定义gridspace freq = np。linspace(0,40, nfreq) #频谱(Hz) Vp = np。linspace(1,500, nVp) #相速度谱(m/s) X, Y = np。meshgrid(freq, Vp) ## . .为倾斜堆栈函数S = np设置网格空间。0 ((ng, nfreq, nVp, ndata), dtype=complex) ## . .在enumerate(seismic_gather[0].trace)中计算idx的不同相速度和频率的色散:##得到波形的傅里叶变换和归一化U = np.fft.fft(trace.data) #傅里叶变换N = U/np.abs(U) #归一化波形##应用动态线性移出P = 2*np.pi*X*trace。偏移量/Y #色散特性S[idx] = np.exp(1j*P)[:,:,np;@ ##;堆栈跟踪S = np。sum(S, 0) ##。 Extract amplitudes A = np.abs(S)/ng
为了稍微描述一下代码,我定义了一个包含200个相速度和频率测试点的网格空间。然后我将地震数据转换到频域并进行标准化。一旦归一化,我将动态线性移出应用于每个轨迹,然后沿着网格叠加每对相速度和频率点的轨迹。
不幸的是,最终的图像似乎不是我所期望的,我期望与链接的论文相似。我是不是漏了一步?