GprMax中文说明书Word文档下载推荐.docx
- 文档编号:21632299
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:23
- 大小:185.83KB
GprMax中文说明书Word文档下载推荐.docx
《GprMax中文说明书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《GprMax中文说明书Word文档下载推荐.docx(23页珍藏版)》请在冰豆网上搜索。
最大允许时间步长(单位:
秒);
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的使用例子:
='
bre1.geo'
;
[meshdata,header,media]=gprmax2g();
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('
是.out文件名;
1)Header:
该变量包括以下成员:
Header.title:
Header.iterations:
迭代次数;
Header.dx:
在X轴每次偏移大小;
Header.dy:
在Y轴每次偏移大小;
Header.dt:
最大允许时间步长;
Header.NSteps:
仿真次数;
等于*.in文件中#analysis:
命令的第一个参数;
#time_window:
12e-9
……
#analysis:
115bre1.outb
#tx:
0.08750.4525MyLineSource0.012e-9
#rx:
0.11250.4525
#tx_steps:
0.020.0
#rx_steps:
#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;
命令的第五个参数)
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轴方向电矢量数据。
Fields.hy:
Y轴方向电矢量数据。
由于GprMax仿真是基于FDTD算法的,以上三者的关系为:
详细可参考FDTD算法的相关文献。
gprmax.m的使用例子:
bre1.out'
[Header,Fields]=gprmax();
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);
%画图
colorbar
AntenaPosition(m)'
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表示输入文件名
所有空间距离的基本单位为米
所有时间的基本单位为秒
所有频率参数的基本单位是Hz
3.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:
另外,一些命令的旧的参数规则亦发生了变化:
3.3GprMax2D命令参数
为了更好地介绍GprMax2D命令,我们将它们分成四类:
一般命令:
包括用于指定的大小和模型的离散
ABC相关命令:
允许定制和优化吸收边界条件
介质和对象的构造命令:
用不同的参数来在模型中引入不同的介质和构造简单的几何形状
激励和输出命令:
用来放置源代码和模型的输出点
运行GprMax2D最低限度的命令如下:
•#domain:
•#dx_dy:
•#time_window:
•至少一个#analysis:
及与其对应的结束命令#end_analysis:
至少一个#tx:
与#rx:
,或者#rx_box:
命令
•为了使#tx:
命令正确运行,同时需要一行新的#line_source:
3.3.1一般命令
模型的题目
str
Str即是模型的题目,必须是单行的。
模型的范围(单位:
米)
f1f2
f1与f2分别代表x和y轴上的量度大小
1.01.5
表示1.0*1.5的大小范围
表示x和y轴上的偏移量(如△x、△y)
表示x轴偏移f1和y轴方向上偏移f2
0.10.1
则模型的单元数为10*15
0.010.01
则模型的单元数为100*150
最大允许时间步△t与△x、△y的约束关系如下:
(3.1)
C为光速,GprMax2D中计算△t使用3.1式等号。
#timestepstabilityfactor:
通过该命令,你可以修改GprMax2D所计算的△t的值,但必须满足3.1式的要求。
用于指定所需的总的模拟时间。
语法:
f1
或者
i1
总的迭代次数和模拟时间窗口:
(3.2)
但你需要使用大于10个介质时必须使用该命令,因为GprMax2D只初始化了10个介质的使用空间。
i1大于10。
使用该命令,你可以定义常用介质所描述的结构参数的文件路径与名称。
使用该命令,你可以定义模型的几何信息的二进制文件。
这些信息可以用于创建模型的图像与检查创建的正确与否。
model.geo
使用该命令,你可以控制软件运行时在屏幕上的输出信息。
c1
该命令仅当在GprMax2D需要时才用于你的输入文件中。
i1
4.1GPRMAX3D命令一般注释
大多数能够用在GPRMAX3D的命令几乎和GPRMAX2D是一样的。
但是,有一些命令是GPRMAX3D独有的。
为了简明扼要,这里只论述与GPRMAX2D不同的命令。
基本的空间和暂时离散步骤分别为△t和△x,△y,△z。
4.2命令清淡
在版本2里面,GPRMAX3D一共有42个命令用在3DGPR建模中。
他们是:
#title:
#dx_dy_dz:
#abc__mixing_parameters:
#cylinder_new:
#cylindrical_segment:
#sphere:
#plate:
#edge:
#bowtie:
#thin_wire:
#rx_box
#huygens_surface:
#hertzian_dipole:
#voltage_source:
#transmissio_line:
#plane_wave:
4.3GPRMAX3D命令参数
1.一般命令:
2.ABC相关命令:
3.介质和对象的构造命令:
4.激励和输出命令:
4.3.1一般命令
与GprMax2D用法形同
#domain:
用来指定模型的尺寸(单位:
f1f2f3
f1,f2和f3分别是模型x,y,z方向上的大小
指定x,y,z方向上的增量
f1是空间步x方向上的增量,f2是空间步y方向上的增量,f3是空间步z方向上的增量。
空间离散化控制最大允许时间步△t和为了达到所需要仿真时间窗而提出的解决方案。
△t和△x,△y,△z之间的关系是:
(4.1)
其中c为光速。
在GPRMAX3D中,上式取等号。
4.1中,一个小的△x,△y,△z值导致△t得小值,这个△t小值意味着为了达到所给的仿真时间而需要更多的迭代次数。
但是,需要指出更小的△x,△y,△z和△t值会让模型更精确。
#time_step_stability_factor:
用法与GPR2D的相同。
可以修改△t的值。
#time_window:
#geometry_file:
用法与GPR2D相同。
#messages:
#nips_number:
仅当GPRMAX3D被要求用时,才必须用到他。
4.3.2ABC相关命令
在GPRMAX3D这些影响HigdonABCs配置和性能的命令与GPRMAX2D用法相同。
但是,GPRMAX3D用了更有力的PMLABC。
pml
higdon可以设置ABC的默认参数。
i1是pml所占Yee单元的数目。
默认值为8。
所占用的Yee单元数越多,PML性能越好,但是所花的计算资源也越多。
而且,有两点要注意:
a)PML是几何模型的一部分。
但是,PML层里的域不参与计算并且用他们来计算就是错的。
因此,不要把源和接收器设置在这个区域。
PML的深度是用YEE单元来度量而不是距离。
b)注意:
当前PML仅用于非磁介质。
因此,如果你的模型需要用到磁性参数,你必须用HigdoonABC而不是PML。
4.3.3介质和对象的构造命令
在GPRMAX3D中,这些命令用来容易的引入模型中不同的介质和介质结构。
在处理一般命令之后,GPRMAX3D建立一个初始化为freespace(air)任意尺寸的模型。
注意,freespace和pec已经被定义在GPRMAX3D中,你不必再去定义这两种介质。
因此,关键词free_space和pec能够直接用而不需要再定义参数。
其他介质他们的参数必须通过下面之一来设置:
l#media_file:
命令包含各种各样的经常用的介质的定义(见附录A)
l#medium:
输入文件中的命令
#medium:
和GPRMAX2D中的用法相同。
而且,同一种介质文件能够不改变他们的结构下既用到GPRMAX2D又用到GPRMAX3D
#thin_wire:
引入细电线模型。
细电线被用作介质标示符给#dege:
对象结构命令。
f1str1
f1是电线的半径,而且为了建立合适的细电线的物理模型,必须必△l小。
Str1是介质ID。
Thinwire被认为是pec。
例:
0.001MyWire
#box:
f1f2f3f4f5f6str1
f1f2f3是左下角坐标,f4f5f6是右上角坐标。
Str1是#medium:
定义的标示符。
#plate:
f1f2f3f4f5f6str1
f1f2f3是金属板左下角坐标。
f4f5f6是金属板右上角的坐标。
str1是介质标示符。
#triangle:
三角行块。
f1f2f3f4f5f6f7f8f9str1
f1f2f3,f4f5f6,f7f8f9分别是三角形的三个顶点坐标。
str1是介质标示符。
#bowtie:
蝴蝶天线。
由两个三角形块组成
c1c2f1f2f3f4f5str1
C1是蝴蝶天线的方向,x,y或者z。
c2是剩余的方向。
F1,f2,f3是天线馈电点的x,y,z坐标。
F4是天线元的长度(完整蝴蝶天线长度的一半)。
f5是展开角。
Str1是介质标示符。
#edge:
一个天线。
这个天线仅仅是YEE元的边缘,当建立电阻或者细电线是能够用他。
F1f2f3是边缘的起始坐标,f4f5f6是边缘结束坐标。
#cylinder:
有限维的3D圆柱模型。
c1f1f2f3f4f5str1
C1是圆柱轴的方向,可以是x,y或z。
f1和f2分别是圆柱轴高低坐标。
F3,f4是其他重要坐标用来表示两个圆柱的圆形面的中心。
lX方向的圆柱(f1,f3,f4)为(x1,y,z),(f2,f3,f4)为(x2,y,z)
ly方向的圆柱(f3,f1,f4)为(x,y1,z),(f3,f2,f4)为(x,y2,z)
lz方向的圆柱(f3,f4,f1)为(x,y,z1),(f3,f4,f2)为(x,y,z2)
f5是圆柱圆盘的半径,str1是介质标示符。
#cylinder_new:
有限维3D圆柱。
与#cylinder:
不同的是,它的轴向可以是任意的。
f1f2f3f4f5f6f7str1
F1f2f3是圆柱底面圆心的坐标,f4f5f6是圆柱顶面的圆心坐标。
F7是圆柱底面半径。
#cylindrical_segment:
圆柱的一段。
c1f1f2f3f4f5str1c2f6f7
C1是圆柱的轴向,可以是x,y,z。
f1,f2是圆柱轴向上部和下部的坐标。
F3,f4是表示圆柱顶,底部的其他两个坐标。
F5是顶,底部半径。
C2是片段变化的方向。
F6,f7是片段起始和结束点。
#sphere:
球体。
f1f2f3f4str1
F1f2f3是球心坐标f4是球半径。
Str1是介质标示符
4.3.4激励和输出命令
#excitation_file:
允许用户指定单个包含能够激励模型的幅度值的清单ASCII文件。
这些值至少要和迭代次数相等。
#excitation_
Str1是ASCII文件的名字。
mysource.dat
#hertzian_dipole:
定义最简单的激励。
f1f2str1str2
F1f2分别是源波形的幅度和频率。
Str1是波形标示符。
Str2是源标示符。
1.0600e6rickerMyDipole
与GPRMAX2D里面的#line_source等价
#voltage_source:
定义电压源。
它引入一个电压器件的位置,可以是一个硬源或者一个内部集成电阻。
f1f2str1f3str2
F1f2是源波形的振幅和频率。
F3是内部电阻R。
1.0600e6gaussian50.0MyVolt
#transmission_line:
定义能够刺激天线的1D两线传输线的参数。
f1f2str1f3f4str2
F1f2是源波形的振幅和频率,str1是激励类型。
F3是传输线的长度。
F4是阻抗特征,str2是源标示符
1.0600e6gaussian0.5200.0MyLine
#plane_wave:
描述平面波源
f
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- GprMax 中文说明书