实验四-位场边缘识别程序设计实验

上传人:新** 文档编号:512152235 上传时间:2023-03-07 格式:DOCX 页数:18 大小:209.52KB
返回 下载 相关 举报
实验四-位场边缘识别程序设计实验_第1页
第1页 / 共18页
实验四-位场边缘识别程序设计实验_第2页
第2页 / 共18页
实验四-位场边缘识别程序设计实验_第3页
第3页 / 共18页
实验四-位场边缘识别程序设计实验_第4页
第4页 / 共18页
实验四-位场边缘识别程序设计实验_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《实验四-位场边缘识别程序设计实验》由会员分享,可在线阅读,更多相关《实验四-位场边缘识别程序设计实验(18页珍藏版)》请在金锄头文库上搜索。

1、重磁资料处理与解释实验四位场边缘识别程序设计实验专业名称:地球物理学 学生姓名: 学生学号:指导老师:王万银、纪新林、纪晓琳、邱世灿 提交日期:2016-1-31、基本原理地质目标体边缘时指断裂构造线、不同地质体的边界线,实际上是具有一定 密度或磁性差异的地质体的边界线,在地质体的边缘附近,重、磁异常变化率较 大,故所有的边缘识别方法均利用这一特点进行设计。现在有重、磁位场边缘识 别方法分为数理统计、数值计算以及其他三大类。数值类边缘识别方法均利用极大值位置或零值位置确定地质体的边缘位置, 其依据的理论基础是二度体铅垂台阶模型的重力异常特征。在该模型边缘处重力 异常总水平导数和解析信号振幅达到

2、极大值、垂向导数达到零值。故可以利用这 些特征位置来确定二度体铅垂台阶的边缘位置,确定倾斜二度体、不规则二度体 及三度体边缘位置的理论均为二度体铅垂台阶模型理论的推广,但确定的边缘位 置和真实的位置有一定的偏差。该偏差随着地质体边界形状、埋深、水平尺寸及 物性差异等的变化而变化。因此,边缘识别结果是一种定性或半定量解释结果, 与定量解释结果有一定区别,识别结果可作为边缘位置定量反演的初值。(1)垂向导数:垂向导数方法利用零值位置确定地质体的边缘位置,重力异 常可以直接使用,对磁力异常必须转化为磁源重力异常或化极磁力异常才可以使( 1.1)2)解析信号振幅:解析信号振幅也是利用极大值位置来确定地

3、质体的边缘(1.2)(3)总水平导数(THDR)(1.3)2、输入/输出数据格式设计依据上述原理,现在对上述各种边缘识别方法进行程序设计。2.1 输入数据格式设计本次实验给了正演的重力异常数据,为.GRD格式,均为实型变量。例如:DSAA201-1000.000000-1000.0000005.549671E-015.549671E-015.897312E-012011000.0000001000.00000023.5398465.634658E-015.987253E-015.721339E-016.078691E-015.808522E-016.171604E-012.2 输出数据格式设计

4、计算结果输出数据格式与输入格式对应,格式为.GRD格式,均为实型变量。例如:DSAA201-1000.000-1000.000 -0.1465084 -3.6523044E-02 -3.2688729E-02-3.2654848E-02-3.3138681E-022011000.0001000.0000.3190881-3.3485338E-02-3.2723978E-02-3.3061244E-02-3.2787599E-02-3.2748722E-02-3.2927759E-022.3 参数文件数据格式设计将以上部分量保存在一个文件中,该文件名变量为cmdfile,字符串变量, 长度不超过

5、80 ,全路径名。在该文件中保存的参数如下:输入数据文件名 input_file ,字符串变量,长度不超过80;输出vdr数据文件名output_file_vdr,字符串变量,长度不超过80; 输出thdr数据文件名output_file_thdr,字符串变量,长度不超过80; 输出asm数据文件名output_file_asm,字符串变量,长度不超过80 factor_m:扩边比例因子,实型变量(1);3. 总体设计此次程序采用IPO结构设计,首先通过读取cmd文件,得到相关输入参数: 输入数据文件名gravity.grd、输出vdr文件名field_vrd.grd、输出thdr文件名fie

6、ld_thdr.grd、 输出asm文件名field_asm.grd、扩边比例因子factor_m;然后确定确定扩边网格的大小, 扩边数据点号位置;再从观测面位场数据文件中读取数据。下一步,进行二维余 弦扩边,将扩完边的数据进行快速二维傅里叶变换,转换到频率域;接下来在频 率域求出在x,y,z方向的导数并反变换;最后求出VDR、THDR、ASM数据。最后 去除扩边部分后输出。总体设计见表 1。输入参数:输入数据文件名gravity.grd、输出vdr文件名gravity_vrd.grd、输出thdr 文件名gravity_thdr.grd、输出asm文件名gravity_asm.grd、扩边比

7、例 因子 factor_m。确定扩边网格的大小m*n(m,n均为2的幂次方)从输入数据文件名中读取数据对原始数据进行二维余弦扩边对扩边后的数据进行快速二维傅里叶正变换将傅里叶变换后的数据与导数因子相乘求出重力数据在x,y,z方向的导数对导数进行快速二维傅里叶反变换分另U求出VDR、THDR、ASM值。去除扩边部分后输出结果图4.1总体设计N-S图4测试结果0 1 &20 04.6QQ44 0 0+2 0 04 0 038 0(1360 034.0 0320 030Q2E 0 0筑 oaza d3220U2a.aiE;0Q1t: 0 014 a .a 12QO1OJDE OOOG QQM QQ吨

8、 QIKC- -icoc -mDOTD065D06D侧0D5DD+50 04D.D3I50 030 0250 02DQ15D010 0D5D图4.2重力异常原始图图4.3垂向导数(VDR)-0 006-0Q1-fl 0150 05&0Q6Q0&0 04.5QQ35003QQ20i&a ODE图4.4解析信号振幅(ASM) 图4.5总水平导数(THDR)分析:由图4.3可看出,VDR方法的零值线可较准确识别模型体的边界;由图 4.4可看出,ASM的极大值点边界可大致识别模型体边界,但精度不是很高。对 比图4.2到4.5可以看出,THDR方法对模型边界的识别效果是最好的。5结论及建议经测试,VDR

9、与THDR对模型体的边界位置识别效果较好,而ASM对模 型体边界识别效果较差。三种方法中,THDR效果最好。附录:边缘识别程序源代码! 程序功能:实现频率域位场导数运算进行边缘识别!cmd文件参数:!cmdfile:存放有关参数的文件名变量!input_file:观测面位场数据文件!output_file_vdr :场值的水平导数数据文件!output_file_thdr :场值垂向导数数据文件!output_file_asm:场值的解析信号振幅数据文件!factor_ m:扩边因子!.grd文件参数:!N_point,N_line:点数(x方向)、线数(y方向)!x_min,x_max: x

10、的最小值和最大值!y_min,y_max: y的最小值和最大值!Ur:初始观测面场值! 扩边参数:!ml,m2: x方向实际数据起点和终点点号位置!1,m:x方向扩边后数据起点和终点点号位置!n1,n2: y方向实际数据起点和终点点号位置!1,n3:y方向扩边后数据起点和终点点号位置!求导参数:!field_re :初始观测面信号的实部!field_im:初始观测面信号的虚部!Px_re:x方向导数信号的实部!Px_im:x方向导数信号的虚部!Py_re: y方向导数信号的实部!Py_im:y方向导数信号的虚部!Pz_re:z方向导数信号的实部!Pz_im:z方向导数信号的虚部!W(m,n):

11、径向圆频率!field_vdr :对场值作水平导数的结果!field_thdr :对场值作垂向导数的结果!field_asm:场值的解析信号振幅的结果program deviationparameter(eigval=3.701411*1e5)character*(80)cmdfilecharacter*80 input_file,output_file_vdr,output_file_thdr,output_file_asm real,allocatable: field_re(:,:),field_im(:,:) real,allocatable: Px_re(:,:),Px_im(:,:

12、),Py_re(:,:),Py_im(:,:),Pz_re(:,:),Pz_im(:,:)real,allocatable: field_vdr(:,:),field_thdr(:,:),field_asm(:,:)real,allocatable: U(:),V(:),W(:,:)integer N_point,N_lineinteger m,n,m1,m2,n1,n2real factor_mreal xmin,xmax,ymin,ymax,dx,dycmdfile=deviation.cmdcall read_cmd(cmdfile,factor_m,input_file,output_

13、file_vdr,output_file_thdr,output_file_asm)call read_grd(input_file,N_point,N_line,Xmin,Xmax,Ymin,Ymax)call calculate_mn(N_point,N_line,m,n,m1,m2,n1,n2,factor_m)allocate(field_re(1:m,1:n),field_im(1:m,1:n)allocate(Px_re(1:m,1:n),Px_im(1:m,1:n),Py_re(1:m,1:n),Py_im(1:m,1:n),Pz_re(1:m,1:n),Pz_im(1:m,1:

14、n) allocate(field_vdr(1:m,1:n),field_thdr(1:m,1:n),field_asm(1:m,1:n)allocate(U(1:m),V(1:n),W(1:m,1:n)call input_grd(field_re,input_file,m1,m2,n1,n2,m,n)call expand_cos_2D(m1,m2,m,n1,n2,n,field_re,field_im)call FFT2(field_re,field_im,m,n,2)CALL cal_dxdy(xmin,xmax,ymin,ymax,N_POINT,N_LINE,dx,dy)call WAVE2D(m,n,dx,dy,U,V,W)call factor(m,n,field_re,field_im,u,v,w,px_re,px_im,py_re,py_im,pz_re,pz_im)call FFT2(px_re,px_im,m,n,1)call FFT2(py_re,py_im,m,n,1)call FFT2(pz_re,pz_im,m,n,1)call deviration(m,n,px_re,py_re,pz_re,field_vdr,field_thdr,field_asm)call OUTPUT_GRD

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号