您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > GprMax中文说明书
GprMax中GprMax2D的使用方法V1.3实验环境:操作系统:Windows7软件版本:MATLAB7.1&GprMaxV2.0参考资料:[1]UserGuideV2.pdf一、GprMax2D软件使用1.1直接运行..\GprMaxV2.0\Windows文件夹下的GprMax2D.exe文件,会出现以下窗口(也可以在命令提示符窗口输入命令运行):1.2输入文件名注意:要输入文件的全路径;*.in文件只要出现任何语法错误或者路径错误,软件都会自动关闭,不会有任何错误提示。出现以下画面(以自带例子文件bre1.in为例,*.in的命令参考前面的文章或[1]):运行完毕会发现..\GprMaxV2.0\Windows文件夹下多了两个文件bre1.out、bre1.geo文件,复制到tools文件夹。二、数据成像tools文件夹下有五个m文件:gprmax.m,gprmax2g.m,gprmax3g.m,gprmaxde.m,gprmaxso.m。这里只讲gprmax2g.m,gprmax.m这两个文件的用法,其他三个以后有空再写。gprmax3g.m是处理GprMax3D的几何数据的;gprmaxde.m用来计算Debye公式(参考[1])介电常数的;gprmaxso.m用于计算激励函数的。2.1gprmax2g.m的使用方法gprmax2g函数用于读取GprMax2D软件仿真探地雷达模型生成的二进制几何数据。gprmax2g函数的原型:[mesh,header,media]=gprmax2g('filename')filename是.geo文件名;media:存储介质类型,media.type;header:存储模型的几何参数;header.title:模型的名称;header.dx:模型在X轴每次偏移大小(单位:m);header.dy:模型在Y轴每次偏移大小(单位:m);header.dt:最大允许时间步长(单位:秒);header.nx:模型在X轴的偏移次数;header.ny:模型在Y轴的偏移次数;例子:如输入文件*.in中定义:#domain:2.50.65#dx_dy:0.00250.0025那么:header.dx=0.0025;header.dy=0.0025;header.dt=1/(c*sqrt(1/header.dx^2+1/header.dy^2));(其中c=299792458,为光速,公式参考[1]);header.nx=2.5/0.0025=1000;header.ny=0.65/0.0025=260;mesh:存储模型数据,MxN的数组,其中M为Y轴方向的Yee单元数目,N为X轴方向的Yee单元数目;M=header.nx,N=header.ny;gprmax2g.m的使用例子:filegeo='bre1.geo';[meshdata,header,media]=gprmax2g(filegeo);figure(1);[MM,NN]=size(meshdata);imagesc((1:NN)*header.dx,(1:MM)*header.dy,meshdata)axis('equal');xlabel('x(m)');ylabel('y(m)');2.2gprmax.m的使用方法gprmax函数用于读取GprMax2D与GprMax3D软件仿真探地雷达模型生成的二进制波形数据。gprmax函数的原型:[Header,Fields]=gprmax('filename')filename是.out文件名;1)Header:该变量包括以下成员:Header.title:模型的名称;Header.iterations:迭代次数;Header.dx:在X轴每次偏移大小;Header.dy:在Y轴每次偏移大小;Header.dt:最大允许时间步长;Header.NSteps:仿真次数;等于*.in文件中#analysis:命令的第一个参数;例子:如输入文件*.in中定义:#domain:2.50.65#dx_dy:0.00250.0025#time_window:12e-9……#analysis:115bre1.outb#tx:0.08750.4525MyLineSource0.012e-9#rx:0.11250.4525#tx_steps:0.020.0#rx_steps:0.020.0#end_analysis:……那么,Header.iterations=ceil(Header.removed/Header.dt);Header.dx=0.0025;Header.dy=0.0025;Header.dt=1/(c*sqrt(1/Header.dx^2+1/Header.dy^2));Header.NSteps=115;Header.TxStepX=0.02/Header.dx=8;Header.TxStepY=0.0/Header.dy=0;Header.RxStepX=0.02/Header.dx=8;Header.RxStepY=0.0/Header.dy=0;Header.ntx:Header.nrx:Header.nrx_box:Header.tx=0.0875/Header.dx=35;Header.ty=0.4525/Header.dy=181;Header.source=’MyLineSource’;Header.delay=0;(等于#tx:命令的第四个参数)Header.removed=12e-9;(等于#tx:命令的第五个参数)Header.rx=0.1125/Header.dx=45;Header.ry=0.4525/Header.dy=181;2)Fields:该变量包括以下成员:Fields.t:每个波形的时间轴。数组大小Header.iterations*1;Fields.ez:Z轴方向磁矢量数据。数组大小Header.iterations*1*Header.NSteps;Fields.hx:X轴方向电矢量数据。数组大小Header.iterations*1*Header.NSteps;Fields.hy:Y轴方向电矢量数据。数组大小Header.iterations*1*Header.NSteps;由于GprMax仿真是基于FDTD算法的,以上三者的关系为:详细可参考FDTD算法的相关文献。gprmax.m的使用例子:fileout='bre1.out';[Header,Fields]=gprmax(fileout);N=1:Header.NSteps;%移动次数Position=Header.dx*Header.tx+(N-1)*(Header.dx*Header.TxStepX);%天线每次所在位置Data(:,:)=Fields.ez(:,1,:);%转换数组格式figure(2);imagesc(Position,Fields.t*1e9,Data);%画图colorbarxlabel('AntenaPosition(m)');ylabel('t(ns)');GprMaxV2.0中GprMax2D输入文件的命令实验环境:操作系统:Windows7软件版本:MATLAB7.1&GprMaxV2.0参考文献:GprMaxV2.0软件manual文件夹下的UserGuideV2.pdf。GprMaxV2.0下载地址:说明:翻译得不好,还望大家见谅,因为我也是边看边译的。3.1GprMax2D命令的一般注意事项为了描述GprMax2D/3D命令及其参数,我们作以下约定:f表示浮点数(如1.5或15e-1、1.5e1)i表示整数c表示字符str表示字符串file表示输入文件名所有空间距离的基本单位为米所有时间的基本单位为秒所有频率参数的基本单位是Hz3.2GprMax2D2.0版本共有32条命令:#title:#domain:#dx_dy:#time_step_stability_factor:#time_window:#messages:#number_of_media:#nips_number:#media_file:#geometry_file:#medium:#abc_type:#abc_order:#abc_stability_factors:#abc_optimization_angles:#abc_mixing_parameters:#pml_layers:#box:#cylinder:#x_segment:#y_segment:#triangle:#analysis:#end_analysis:#tx:#rx:#rx_box:#snapshot:#tx_steps:#rx_steps:#line_source:#excitation_file:以下可以运行于GprMax中的命令在GprMax2D版本2.0中将不再支持:#scan:#csg:#extra_tx:另外,一些命令的旧的参数规则亦发生了变化:#tx:#snapshot:3.3GprMax2D命令参数为了更好地介绍GprMax2D命令,我们将它们分成四类:一般命令:包括用于指定的大小和模型的离散ABC相关命令:允许定制和优化吸收边界条件介质和对象的构造命令:用不同的参数来在模型中引入不同的介质和构造简单的几何形状激励和输出命令:用来放置源代码和模型的输出点运行GprMax2D最低限度的命令如下:•#domain:•#dx_dy:•#time_window:•至少一个#analysis:及与其对应的结束命令#end_analysis:至少一个#tx:与#rx:,或者#rx_box:命令•为了使#tx:命令正确运行,同时需要一行新的#line_source:命令3.3.1一般命令#title:模型的题目#title:strStr即是模型的题目,必须是单行的。#domain:模型的范围(单位:米)#domain:f1f2f1与f2分别代表x和y轴上的量度大小#domain:1.01.5表示1.0*1.5的大小范围#dx_dy:表示x和y轴上的偏移量(如△x、△y)#dx_dy:f1f2表示x轴偏移f1和y轴方向上偏移f2#domain:1.01.5#dx_dy:0.10.1则模型的单元数为10*15#domain:1.01.5#dx_dy:0.010.01则模型的单元数为100*150最大允许时间步△t与△x、△y的约束关系如下:(3.1)C为光速,GprMax2D中计算△t使用3.1式等号。#timestepstabilityfactor:通过该命令,你可以修改GprMax2D所计算的△t的值,但必须满足3.1式的要求。#time_window:用于指定所需的总的模拟时间。语法:#time_window:f1或者#time_window:i1总的迭代次数和模拟时间窗口:(3.2)#number_of_media:但你需要使用大于10个介质时必须使用该命令,因为GprMax2D只初始化了10个介质的使用空间。#number_of_media:i1i1大于10。#media_file:使用该命令,你可以定义常用介质所描述的结构参数的文件路径与名称。#geometry_file:使用该命令,你可以定义模型的几何信息的二进制文件。这些信息可以用于创建模型的图像与检查创建的正确与否。#geometry_file:model.geo#messages:使用该命令,你可以控制软件运行时在屏幕上的输出信息。#messages:c1#nips_number:该命令仅当在GprMax2D需要时才用于你的输入文件中。#nips_number:i14.1GPRMAX3D命令一般注释大多数能够用在GPRMAX3D的命令几乎和GPRMAX2D是一样的。但是,有一些命令是GPRMAX3D独有的。为了简明扼要,这里只论述与GPRMAX2D不同的
本文标题:GprMax中文说明书
链接地址:https://www.777doc.com/doc-7406856 .html