Bellhop射线追踪程序概述
- 格式:pptx
- 大小:7.78 MB
- 文档页数:33
Aster 射线跟踪模型操作手册 版本:2.5.4目录1介绍 (3)2安装 (4)系统要求和硬件要求 (4)程序安装 (4)硬件狗驱动安装 (6)3地图数据 (6)地图对象数据模拟Above Surface Object Digital Model(ASODM) (6)3.1.1确定性传播类型 (7)3.1.2统计性传播类型 (7)支持的地图数据的不同搭配 (8)3.2.1仅有地物分类地图 (8)3.2.2仅有地物高度地图,无地物分类地图 (8)3.2.3地物高度和地物分类地图都有 (8)3.2.43D Building Vector地图 (8)4Aster模型中的设置 (8)General 标签 (8)Configuration标签 (9)Clutter标签 (10)Geo标签 (11)Ray Tracing标签 (12)5Aster模型预测覆盖图示例 (13)6Aster模型校正 (15)Aster模型 Analysis (15)Aster模型校正 (16)1介绍Aster模型是Atoll中一个可选的射线追踪传播模型,由Forsk公司发布和支持,作为Atoll的一个可选功能。
Aster模型是一个预校正模型,支持所有无线技术,GSM、UMTS、CDMA2000、LTE、Wi-Fi等,支持从150MHz到5GHz范围内的频段。
Aster模型支持所有的小区类型,从微蜂窝小区、迷你蜂窝小区到宏蜂窝小区等等。
支持不同类型的传播环境:密集城区、城区、郊区等,特别适合于带有高精度地图的密集城区环境。
利用CW测量数据,Aster模型可以进行自动模型校正。
Aster模型主要考虑楼顶的垂直衍射和基于射线追踪算法的水平衍射和反射。
本文档主要介绍Aster模型的先进功能特性,及从安装、参数设置到在Atoll中进行使用的过程,主要目的让用户能了解Aster的基本特性,及学会如何在Atoll中使用Aster模型进行计算。
射线追踪法的研究及应用一、射线追踪法的基本概念大家好,今天咱们聊聊一个看似高深其实也并不那么神秘的话题——射线追踪法。
别被这些专业词吓到,它其实就像是给光线装了一个GPS,让我们可以精确地跟踪每一束光的路径,从而更好地模拟现实世界的视觉效果。
想象一下,你坐在一个屋子里,阳光从窗户照进来,照在桌子上的那一束光线,它是如何在空间中游走的?它和桌面上的物品发生碰撞,又是怎么反射、折射、吸收的?射线追踪法就是通过模拟这些复杂的光线互动,最终生成一张逼真的图像。
你是不是已经开始好奇,射线追踪法到底能做些什么了?别急,咱们慢慢往下看。
最简单的说,射线追踪法就是通过追踪光线从眼睛(相机)出发的路径,一直到它与场景中的物体碰撞、反射、折射后返回眼睛的过程。
每一条光线都要经过很多复杂的计算,这就是为什么它能够创造出极其真实的图像。
说白了,它就是在把世界的每一束光都仔细“读”一遍。
二、射线追踪的应用领域说到射线追踪法的应用,那可真是五花八门,几乎涵盖了我们生活中的方方面面。
最直接的,当然是影视特效和游戏制作。
记得看过那些科幻大片吗?比如《复仇者联盟》里的战斗场面、星际飞船的宇宙漂浮,那些看似轻松、自然的光影变化,背后就离不开射线追踪的帮忙。
想象一下,如果没有射线追踪,电影中的光线就只能是“平面化”的,根本没有那种立体感、深邃感,大家看的时候也许会觉得这画面不够真实,甚至有点假。
再比如,游戏中的画面效果也是如此。
曾经我们玩游戏,画面简直可以用“方块”来形容。
但随着技术的发展,射线追踪被逐步应用到了游戏中,特别是最近几年的一些大作,比如《赛博朋克2077》,就彻底把这个技术带入了玩家的视野。
别的不说,单单是游戏中那个反射效果,让你感受到的真实感就让人目瞪口呆。
你在街头走着,路旁的玻璃店铺、湿漉漉的地面都会反射出你身后的光,仿佛你真的是置身于一个活生生的虚拟世界中。
而这些,都是射线追踪法的“功劳”啊!射线追踪法的作用不仅限于娱乐行业,它在科学领域也是大显身手。
次声波远距离传播射线追踪算法
摘要:
1.次声波的定义与特点
2.射线追踪算法的概述
3.次声波远距离传播的挑战
4.射线追踪算法在次声波远距离传播中的应用
5.结论
正文:
一、次声波的定义与特点
次声波是指频率低于20Hz 的声波,具有波长较长、传播距离远、能够绕过障碍物等特点。
由于次声波的独特性质,它在很多领域具有广泛的应用前景,如通信、探测、遥感等。
二、射线追踪算法的概述
射线追踪算法是一种在计算机图形学中常用的算法,主要用于追踪光线或射线在三维空间中的传播路径。
这种算法通过计算光线与物体表面的交点,可以确定光线在空间中的传播方向,从而模拟光线的实际传播过程。
三、次声波远距离传播的挑战
次声波在远距离传播过程中会受到多种因素的影响,如大气吸收、散射、折射等。
这些因素会导致次声波的传播路径发生改变,从而降低信号的强度和质量。
为了解决这些问题,需要研究一种有效的传播模型和算法。
四、射线追踪算法在次声波远距离传播中的应用
射线追踪算法可以应用于次声波的远距离传播,通过追踪次声波在空间中的传播路径,可以有效地预测和模拟次声波的传播过程。
此外,射线追踪算法还可以用于优化次声波传播系统的性能,如调整信号的发射方向和强度等。
五、结论
射线追踪算法在次声波远距离传播中具有重要的应用价值,可以有效地解决次声波传播过程中的多种问题。
龙格库塔法实现短波射线追踪马志才摘要:短波是人类最早开发利用的无线电频段,短波通信是历史最为悠久的现代通信手段之一。
短波通信由于设备简单、架设方便、成本低,特别是具有远距离通信的优点,始终在通信领域中占有不可或缺的一席之地。
随着微电子、计算机、数字信号处理等现代电子信息技术的发展,短波通信的性能大为改善,形成了现代短波通信的新技术和新体制。
本文以国际上广泛认可的电离层模型IRI以及地磁场模型为核心进行了数学建模实现,构建了复杂的环境模型。
通过使用Appleton-Hartree公式和Snell定理,利用Runge-Kutta方法并采用数值计算方法完成该复杂环境下的短波射线追踪。
最后利用三维建模,实现射线轨迹的可视化显示。
关键字:电离层、路径参数、射线追踪Short-wave Ray Tracing:Based on Runge-Kutta Method Abstract:Short-wave is the earliest development and utilization radio frequency by human and short-wave communication is one of the oldest modern communication means. As short-wave communication equipment is simple, easy to set up and cost low, especially with the advantage in long-distance communication, it always occupies an essential place in the communication field. With the development of microelectronics, computers, digital signal processing and other modern electronicinformation technology, the short-wave communication performance is improved greatly, and gradually forms new modern short-wave communication technologies and new systems. This paper conducts mathematical modeling to build a complex environmental model. The model uses internationally recognized model of the ionosphere and the geomagnetic field model as the core to achieve. The path parameters of short-wave can be obtained by using the Appleton-Hartree formula and Snell's law. The Runge-Kutta method and the numerical method are used to complete the short-wave ray tracing in complex environment. Finally, this study achieves visual display of ray trajectories by using of three-dimensional modeling.Key words:Ionosphere; path parameters; ray tracing利用电离层“反射”的短波无线电通信是最经济、最常用的远距离无线电通信方式。
Aster 射线跟踪模型操作手册 版本:2.5.4目录1介绍 (3)2安装 (4)系统要求和硬件要求 (4)程序安装 (4)硬件狗驱动安装 (6)3地图数据 (6)地图对象数据模拟Above Surface Object Digital Model(ASODM) (6)3.1.1确定性传播类型 (7)3.1.2统计性传播类型 (7)支持的地图数据的不同搭配 (8)3.2.1仅有地物分类地图 (8)3.2.2仅有地物高度地图,无地物分类地图 (8)3.2.3地物高度和地物分类地图都有 (8)3.2.43D Building Vector地图 (8)4Aster模型中的设置 (8)General 标签 (8)Configuration标签 (9)Clutter标签 (10)Geo标签 (11)Ray Tracing标签 (12)5Aster模型预测覆盖图示例 (13)6Aster模型校正 (15)Aster模型 Analysis (15)Aster模型校正 (16)1介绍Aster模型是Atoll中一个可选的射线追踪传播模型,由Forsk公司发布和支持,作为Atoll的一个可选功能。
Aster模型是一个预校正模型,支持所有无线技术,GSM、UMTS、CDMA2000、LTE、Wi-Fi等,支持从150MHz到5GHz范围内的频段。
Aster模型支持所有的小区类型,从微蜂窝小区、迷你蜂窝小区到宏蜂窝小区等等。
支持不同类型的传播环境:密集城区、城区、郊区等,特别适合于带有高精度地图的密集城区环境。
利用CW测量数据,Aster模型可以进行自动模型校正。
Aster模型主要考虑楼顶的垂直衍射和基于射线追踪算法的水平衍射和反射。
本文档主要介绍Aster模型的先进功能特性,及从安装、参数设置到在Atoll中进行使用的过程,主要目的让用户能了解Aster的基本特性,及学会如何在Atoll中使用Aster模型进行计算。
The BELLHOP Manual and User’s Guide: PRELIMINARY DRAFTMichael B.PorterHeat,Light,and Sound Research,Inc.La Jolla,CA,USAJanuary31,2011AbstractBELLHOP is a beam tracing model for predicting acoustic pres-surefields in ocean environments.The beam tracing structure leads to a particularly simple algorithm.Several types of beams are imple-mented including Gaussian and hat-shaped beams,with both geomet-ric and physics-based spreading laws.BELLHOP can produce a vari-ety of useful outputs including transmission loss,eigenrays,arrivals, and received time-series.It allows for range-dependence in the top and bottom boundaries(altimetry and bathymetry),as well as in the sound speed profile.Additional inputfiles allow the specification of directional sources as well as geoacoustic properties for the bounding media.Top and bottom reflection coefficients may also be provided. BELLHOP is implemented in Fortran,Matlab,and Python and used on multiple platforms(Mac,Windows,and Linux).This report describes the code and illustrates its use.12Contents1Map of the BELLHOP program51.1Input (5)1.2Output (5)2Sound speed profile and ray trace9 3Eigenray plots17 4Transmission Loss214.1Coherent,Semicoherent,and Incoherent TL (25)5Directional Sources27 6Range-dependent Boundaries316.1Piecewise-Linear Boundaries:Dickins seamount (31)6.2Plotting a single beam (34)6.3Curvilinear Boundaries:Parabolic Bottom (35)7Tabulated Reflection Coefficients39 8Range-dependent Sound Speed Profiles41 9Arrivals calculations and broadband results459.1Coherent and Incoherent TL (45)9.2Plotting the impulse response (51)9.3Generating a receiver timeseries (53)10Acknowledgments57341Map of the BELLHOP program1.1InputThe overall structure of BELLHOP is shown in Fig.(1).Variousfiles must be provided to describe the environment and the geometry of sources and receivers.In the simplest case,which is also typical,there is only one such file.It is referred to as an environmentalfile and includes the sound speed profile,as well as information about the ocean bottom.However,if there is a range-dependent bottom,then one must add a bathymetryfile with range-depth pairs defining the water depth.Similarly,if there is a range-dependent ocean sound speed,the one must an an SSPfile with the sound speed tabulated on a regular grid.Further,if one wants to specify an ar-bitrary bottom reflection coefficient to characterize the bottom,then one must provide a bottom reflection coefficientfile with angle-reflection coeffi-cient pairs defining the reflectivity.Similar capabilities are implemented for the surface.Thus there is the option of providing a top reflection coefficient and a top shape(called an altimetryfile).Usually one assumes the acoustic source is omni-directional;however,if there is a source beampattern,then one must provide a source beam pattern file with angle-amplitude pairs defining it.BELLHOP reads thesefiles depending on options selected within the main environmentalfile.Plot programs(plotssp,plotbty,plotbrc,etc.)are provided to display each of the inputfiles.1.2OutputBELLHOP produces different outputfiles depending on the options selected within the main environmentalfile.Usually one starts with a ray tracing option,which produces afile con-taining a fan of rays emanating from the source.If the eigenray option is selected,then the fan is winnowed to include only the rays that bracket a specified receiver location.Thefile format is identical to that used in the standard ray-tracing option.Rayfiles are usually used to get a sense of how energy is propagating in the channel.The program plotray is used to display thesefiles.Usually one is interested in calculating the transmission loss for a tonal source(or for a single tone of interest in a broadband waveform).The transmission loss is essentially the sound intensity due to a source of unit strength.The transmission loss information is written to a shadefile which5plotrayplotshdplottlrplotarrsource timeseries generatorplotts plotsspplotbtyplotbrcplotssp2DFigure1:BELLHOP structure.6can be displayed as a2D surface using plotshd,or in range and depth slices, using plottlr and plottld respectively.If one wants to get not just the intensity due to a tonal source,but the entire timeseries then one selects an arrivals calculation.The resulting arrivalsfile contains amplitude-delay pairs defining the loudness and delay for every echo in the channel.This information can be plotted using plotarr to show the echo pattern.Alternatively it can be passed to a convolver, which sums up the echoes of a particular source timeseries to produce a receiver timeseries.The program plotts can be used to plot either the source or receiver timeseries.782Sound speed profile and ray traceAs afirst example,we consider a deep water case with the Munk sound speed profiually one should start by plotting the sound speed profile and doing a ray trace.The inputfile(also called an environmentalfile)isa simple textfile created using any standard text editor and must have a’.env’extension.It is usually easiest to start from one of the examplefiles.Here we consider at/tests/Munk/MunkB ray.env:MunkB ray.env1’Munk profile’!TITLE250.0!FREQ(Hz)31!NMEDIA4’SVF’!SSPOPT(Analytic or C-linear interpolation) 5510.05000.0!DEPTH of bottom(m)60.01548.52/7200.01530.29/8250.01526.69/9400.01517.78/10600.01509.49/11800.01504.30/121000.01501.38/131200.01500.14/141400.01500.12/151600.01501.02/161800.01502.57/172000.01504.62/182200.01507.02/192400.01509.69/202600.01512.55/212800.01515.56/223000.01518.67/233200.01521.85/243400.01525.10/253600.01528.38/263800.01531.70/274000.01535.04/284200.01538.39/294400.01541.76/304600.01545.14/314800.01548.52/325000.01551.91/33’A’0.0345000.01600.000.01.0/351!NSD361000.0/!SD(1:NSD)(m)3751!NRD380.05000.0/!RD(1:NRD)(m)9391001!NR400.0100.0/!R(1:NR)(km)41’R’!’R/C/I/S’4241!NBeams43-20.020.0/!ALPHA1,2(degrees)440.05500.0101.0!STEP(m),ZBOX(m),RBOX(km) The inputfile is read using list-directed i/o,so the data does not need to be precisely positioned on each line.As a convenience we also append comments,preceded by’!’.These are optional and are not read by the program.The source frequency(line2)is not terribly important for the basic ray trace.The rays are frequency independent;however,the frequency can have an impact on the ray step size,since the code assumes more accurate ray trajectories will be needed at higher frequencies.NMedia(line3)is always set to one in BELLHOP.This parameter is included for compatibility with other models in the Acoustics Toolbox,which are capable of handling multi-layered problems.The top option(line4)is next specifed as‘SVF’indicating that a spline fit should be used to interpolate the sound speed profile;that the ocean sur-face is modeled as a vacuum;and that all attenuation values are specified in dB/mkHz.We chose the splinefit here knowing that the profile is smoothly varying.In such cases,the splinefit produces smoother looking ray trace plots.The only important parameter in the next line(5)is the bottom depth (5000m),which indicates the last line that needs to be read in the sound speed profile.Thefirst two parameters are not used by BELLHOP.Next we see a sequence of depth-soundspeed pairs defining the ocean soundspeed profile.The last value in the soundspeed profile must start with the previously specified value for the bottom depth.To ensure compatibility with the other models in the Acoustics Toolbox,we normally terminate each line with a’/’.The other models are expecting attenuations,shear speeds, and a density as additional parameters and the’/’tells them to stop reading the line and use default values.Next we have two lines specifying the bottom boundary.The option letter‘A’indicates that the bottom is to be modeled as an Acousto-Elastic halfspace.The lines following specify that halfspace as having a sound speed of1500m/s and unit density(which is not very realistic).The next6lines specify the source depths,receiver depths,and receiver ranges.Depths are always specified in meters and ranges in kilometers.10For ourfirst run,we are producing a ray trace so the receiver locations are irrelevant;however,they do need to be provided.Note also that51 receiver depths have been specified.Often the user simply wants a uniform distribution of receiver depths to display the acousticfield.To avoid forcing the user to type in all those numbers one has the option of simply putting in thefirst and last values and terminating the line with a’/’.The code detects the premature termination and then produces a full set of receivers by interpolation.The sources and receivers must lie within the interior of the waveguide.The choice of units is motivated by typical ocean acoustic scenarios. However,fundamentally the code is simply solving the wave equation so any self-consistent set of units could be used.Next is the RunType(line41).For a raytrace run,we select option‘R’. The following lines then specify the fan that will be used,given as a number of rays,together with the angular limits in degrees.We follow a convention that the angles are specified in declination,i.e.zero degrees is a horizontally launched ray,and a positive angle is a ray launched towards the bottom.For a ray trace run,the plot usually becomes too cluttered if we use more than about50rays.This is a matter of taste.Likewise,the angular limits are determined by what part of thefield the user is interested in seeing.The last line(44)specifies the step size in meters used to trace a ray, along with the depth and range of a box beyond which no rays are traced. Usually,a step size of0should be selected and then BELLHOP will make an automatic selection of about a tenth of the water depth.Regardless of what step size is selected,BELLHOP dynamically adjusts the step size as the ray is traced,to ensure that each ray lands precisely on all depths where a sound speed is given.Thus,the sound speed profile itself usually controls the ray step size.If you provide more sound speed points than are necessary, BELLHOP will similarly run slower.On the other hand,for a given sampling of the sound speed profile,you may be able to obtain a more accurate ray trace by specifying a step size that is smaller than the default value.Now that the inputfile has been created,we can start by plotting the soundspeed profile,using the Matlab routine plotssp.m.The syntax of the Matlab command to run this is:plotssp’MunkB ray’where’MunkB ray.env’is the name of the BELLHOP inputfile.This pro-duces the plot in Fig.(2).1115001510152015301540155015600500100015002000250030003500400045005000Sound Speed (m/s)D e p t h (m )Figure 2:The Munk sound speed profile.We started first with the sound speed profile plot,to introduce the sce-nario in a logical fashion.However,in practice it is recommended to do a trial BELLHOP run on the input file first.BELLHOP will produce a print file as show below,which echoes the input data in a clear format.In addition,it will stop at the first place it encounters something unintelligible.Thus,by examining the print file one can usually see clearly any formatting errors.MunkB ray.prt1BELLHOP-Munkprofile 2frequency =50.00Hz34Dummy parameter NMedia =156SPLINE approximation to SSP7Attenuation units:dB/mkHz 8VACUUM 910Depth =5000.0000000000000m1112Spline SSP option 1314Sound speed profile:150.001548.5216200.001530.2917250.001526.6918400.001517.781219600.001509.4920800.001504.30211000.001501.38221200.001500.14231400.001500.12241600.001501.02251800.001502.57262000.001504.62272200.001507.02282400.001509.69292600.001512.55302800.001515.56313000.001518.67323200.001521.85333400.001525.10343600.001528.38353800.001531.70364000.001535.04374200.001538.39384400.001541.76394600.001545.14404800.001548.52415000.001551.914243(RMS roughness=0.00)44ACOUSTO-ELASTIC half-space455000.001600.000.00 1.000.00000.0000 4647Number of sources=148Source depths(m)491000.005051Number of receivers=5152Receiver depths(m)530.00000100.000200.000300.000400.000 54500.000600.000700.000800.000900.000 551000.001100.001200.001300.001400.00 561500.001600.001700.001800.001900.00 572000.002100.002200.002300.002400.00 582500.002600.002700.002800.002900.00 593000.003100.003200.003300.003400.00 603500.003600.003700.003800.003900.00 614000.004100.004200.004300.004400.00 624500.004600.004700.004800.004900.00 635000.006465Number of ranges=100166Receiver ranges(km)670.000000.1000000.2000000.3000000.40000013680.5000000.6000000.7000000.8000000.90000069 1.00000 1.10000 1.20000 1.30000 1.4000070 1.50000 1.60000 1.70000 1.80000 1.9000071 2.00000 2.10000 2.20000 2.30000 2.4000072 2.50000 2.60000 2.70000 2.80000 2.9000073 3.00000 3.10000 3.20000 3.30000 3.4000074 3.50000 3.60000 3.70000 3.80000 3.9000075 4.00000 4.10000 4.20000 4.30000 4.4000076 4.50000 4.60000 4.70000 4.80000 4.9000077 5.0000078...100.0000007980Ray trace run81Geometric beams82Point source(cylindrical coordinates)83Rectilinear receiver grid:Receivers at rr(:)x rd(:)8485Number of beams=4186Beam take-off angles(degrees)87-20.0000-19.0000-18.0000-17.0000-16.000088-15.0000-14.0000-13.0000-12.0000-11.000089-10.0000-9.00000-8.00000-7.00000-6.0000090-5.00000-4.00000-3.00000-2.00000-1.00000910.00000 1.00000 2.00000 3.00000 4.0000092 5.00000 6.000007.000008.000009.000009310.000011.000012.000013.000014.00009415.000016.000017.000018.000019.00009520.00009697Step length,deltas=500.00000000000000m9899Maximum ray Depth,zBox=5500.0000000000000m100Maximum ray range,rBox=101000.00000000000m101No beam shift in effect102103104105CPU Time=0.781E-01sThe Matlab command to run BELLHOP is:bellhop’MunkB ray’where’MunkB ray.env’is the name of the inputfile.Assuming a successful completion,BELLHOP produces a print-file called’MunkB ray.prt’and a rayfile called’MunkB ray.ray’.One should carefully examine the printfile to verify that the problem was set up as intended and that BELLHOP ran to14012345678910x 1040500100015002000250030003500400045005000Range (m)D e p t h (m )BELLHOP− Munk profileFigure 3:Ray trace for the Munk sound speed profile.completion.The latter can be verified by checking that there are no error messages in the print file,and that the last line of the print file shows the CPU time used.The next step is to plot the rays using the Matlab command:plotray ’MunkB ray’This produces the plot in Fig.(3).Notice that the range axis is in me-ters.If kilometers are preferred,then one simply sets the global Matlab variable:units =’km’The rays have are plotted using different colors depending on whether the ray hits one or both boundaries.The number of surface and bottom bounces are written to the ray file so it is simple to modify plotray to color code the rays in whatever way best illustrates the propagation physics.15163Eigenray plotsBELLHOP can also produce eigenray plots showing just the rays that con-nect the source to a receiver.To do this,one simply changes the RunType to‘E’.However,to run this reliably one should understand the way this is implemented.The code does exactly the same computation as is done for a regular ray trace;however,it only saves the rays to the rayfile,whose as-sociated beams makes a contribution to the specified receiver points.There are many implications in this statement.First,one should be aware of which beam type is used.For a true eigenray calculation one should use the default beam,which has a beamwidth defined by the ray tube formed by adjacent rays.We call that a geometric beam.The default beam also has a hat-shape in the traditionalfinite element style,so that it vanishes outside the neighboring rays of the central ray of the beam.Other beam types,such as the Cerveny,Popov,Psencik beams are generally much broader beams,and so one would get lots of additional rays that pass at greater distances from the receiver.When we use the default beam type,the rays that are written will be only the bracketing rays for the receiver location.Second,one typically needs to use a muchfiner fan.For instance,if one used41rays as we did in the previous example,then the rays are quite spread out at long ranges.Then when we save the bracketing rays,they may still miss the receiver location by a wide margin.For this example,we therefore increase the number of rays to5001.The more rays used,the more precise the eigenray calculation will be.However,the run time will increase accordingly.Finally,one should generally do an eigenray calculation with just a single source and receiver.Otherwise,the resulting ray plot would be too cluttered.The inputfile MunkB eigenray.env with these changes is shown below.The eigenrays are plotted using the usual plotray command,yielding the plot in Fig.(4).MunkB eigenray.env1’Munk profile’!TITLE250.0!FREQ(Hz)31!NMEDIA4’CVF’!SSPOPT(Analytic or C-linear interpolation) 5510.05000.0!DEPTH of bottom(m)60.01548.52/7200.01530.29/8250.01526.69/9400.01517.78/10600.01509.49/11800.01504.30/17121000.01501.38/131200.01500.14/141400.01500.12/151600.01501.02/161800.01502.57/172000.01504.62/182200.01507.02/192400.01509.69/202600.01512.55/212800.01515.56/223000.01518.67/233200.01521.85/243400.01525.10/253600.01528.38/263800.01531.70/274000.01535.04/284200.01538.39/294400.01541.76/304600.01545.14/314800.01548.52/325000.01551.91/33’A’0.0345000.01600.000.01.0/351!NSD361000.0/!SD(1:NSD)(m)371!NRD38800.0/!RD(1:NRD)(m)391!NR40100.0/!R(1:NR)(km)41’E’!’R/C/I/S’425001!NBeams43-25.025.0/!ALPHA1,2(degrees)440.05500.0101.0!STEP(m),ZBOX(m),RBOX(km)18012345678910x 1040500100015002000250030003500400045005000Range (m)D e p t h (m )BELLHOP− Munk profileFigure 4:Eigenrays for the Munk sound speed profile with the source at 1000m and the receiver at 800m.19204Transmission LossWe can calculate transmission loss by selecting RunType=‘C’as shown in the listing below.As we will discuss in more detail shortly,‘C’stands for Coherent pressure calculations.The pressurefield,p,is then calculated for the specified grid of receivers,with a scaling such that20log10(|p|)is the transmission loss in dB.One may also select multiple source depths,in which case BELLHOP does a run in sequence for each source depth.The frequency(here50Hz)is now a very important parameter,since the inter-ference pattern is directly related to the wavelength.The frequency also affects the attenuation,when present.The number of beams,NBeams,should normally be set to0,allow-ing BELLHOP to automatically select the appropriate value.The number needed increases with frequency and the maximum range to a receiver.To understand this one may imagine a point source in free space.The beam fan expands as we go away from the source.Meanwhile,thefield at a given point is essentially an interpolation between adjacent beams.To accurately interpolate we need the wavefronts of adjacent beams to be sufficiently close.MunkB coh.env1’Munk profile,coherent’!TITLE250.0!FREQ(Hz)31!NMEDIA4’CVW’!SSPOPT(Analytic or C-linear interpolation) 5510.05000.0!DEPTH of bottom(m)60.01548.52/7200.01530.29/8250.01526.69/9400.01517.78/10600.01509.49/11800.01504.30/121000.01501.38/131200.01500.14/141400.01500.12/151600.01501.02/161800.01502.57/172000.01504.62/182200.01507.02/192400.01509.69/202600.01512.55/212800.01515.56/223000.01518.67/233200.01521.85/243400.01525.10/253600.01528.38/263800.01531.70/21274000.01535.04/284200.01538.39/294400.01541.76/304600.01545.14/314800.01548.52/325000.01551.91/33’A’0.0345000.01600.000.01.80.8/351!NSD361000.0/!SD(1:NSD)(m)37201!NRD380.05000.0/!RD(1:NRD)(m)39501!NR400.0100.0/!R(1:NR)(km)41’C’!’R/C/I/S’420!NBEAMS43-20.320.3/!ALPHA1,2(degrees)440.05500.0101.0!STEP(m),ZBOX(m),RBOX(km)BELLHOP tends to be conservative in selecting the number of beams, assuming that the details of the interference pattern in the acousticfield are important.That makes sense for benchmarking applications,or often for lower frequencies.However,as we go to higher frequencies,e.g.10kHz, the environmental uncertainty in a real world case,makes it impossible to replicate these patterns(as they would be observed in a sea test)in detail.You may then wish to experiment with reducing the number of beams to save run time.The next step is to plot thefield using the Matlab command: plotshd’MunkB Coh’However,we can also do a multipanel plot using:plotshd(’MunkB Coh’,2,2,1)where’2,2,1’tells Matlab that we wish to use thefirst panel in a2x2 set.We repeat for several other cases discussed shortly,to produce the plot in Fig.(5).The lower two TL plots are reference solutions calculated by KRAKEN and SCOOTER respectively,which are other models in the Acous-tics Toolbox.They may be considered exact.Most people would consider the agreement between BELLHOP and the other models to be excellent.People are also usually surprised to see that this occurs at50Hz,which is considered a low frequency in a certain taxonomy.Ray/beam methods are22based on high-frequency asymptotics so the incorrect prejudice is that they are not suitable for this sort of problem.We observe thatfine details of the interference pattern are reproduced correctly.That interference pattern results from the ensemble of propagating beams and they must all add up in the right place and with the right phase.Thus,this case provides a rigorous test of the numerics.Nevertheless,we can identify some well-known artifacts of classical ray theory,namely the perfect shadows and the caustics.These are places where thefield goes to zero of infinity,respectively.For better accuracy,we invoke the Gaussian beam option.The specific type of beam used is selected using the second letter in RunType.If,as in the above,we omit the second letter,the code uses option‘G’for geometric beams.Selecting RunType=‘CB’(B for beam), yields the result in the upper right panel.This produces some leakage energy in the shadow zones and smooths out the caustics.In general,wefind this option produces more accurate TL plots.However,the geometric beam option is left as the default since people are usually most familiar with that approach.23Range (km)D e p t h (m )BELLHOP− Munk profile, coherent Freq = 50 Hz Sd = 1000 m501000100020003000400050005060708090100Range (km)D e p t h (m )BELLHOP− Munk profile (Gaussian beam option)100020003000400050005060708090100Range (km)D e p t h (m )KRAKEN− Munk profile0100020003000400050005060708090100Range (km)D e p t h (m )SCOOTER−Munk profile0100020003000400050005060708090100Figure 5:Transmission loss for the Munk sound speed profile using a)geo-metric beams,b)Gaussian beams,c)KRAKEN normal modes,d)SCOOTER wavenumber integration.244.1Coherent,Semicoherent,and Incoherent TLAs discussed above,RunType=‘C’produces a so-called coherent TL calcu-lation.By simply changing thatfirst option letter to‘S’,or‘I’we produce semi-coherent and incoherent TL calculations,respectively.For each of these options one may use the second letter to select the type of beam(geometric or Gaussian).The full set of combinations is shown in Fig.(6).The motivation for the incoherent TL option is that sometimes the de-tails of the interference pattern are not meaningful.For instance,if we consider an acoustic modem operating in the10-15kHz band,then the in-terference pattern will vary widely across the band.It will also be very sensitive to details of the sound speed profile that are not measurable.The individual TL plots are representative samples of what might be seen at a given frequency,but cannot be considered as deterministic forecasts.With that in mind,one may be just as happy to get a TL averaged(loosely speak-ing)across all the frequencies.There are many ways to get such averaged TL surfaces.In ray models, we typically throw away the phase of each path,while in mode models we throw away the phase of the individual modes.The effects are not the same.However,these are both reasonable approaches to capturing a smoothed energy level.Hence,the very smoothedfigures seen at the bottom of Fig.(6).The user must decide for herself which display captures the relevant information for her particular application.The middle panel shows a semi-coherent calculation which preserves some,but not all of the interference effects.The motivation for this op-tion is that one may have a mid-frequency source near the surface.The frequency is sufficiently high that many of the interference effects are not significant or reliably predictable.However,a core feature is the interfer-ence with the surface image,i.e.the reflection of the source in the mirror formed by the ocean surface.Because the source is close to the surface this basic radiation pattern is a stable feature even at higher frequencies.The semi-coherent option captures this effect by putting a Lloyd mirror pattern in for the source beam pattern,but throwing away the phase of the rays.In practice,we have rarely used this option.The incoherent and semi-coherent TL options attempt to capture less of the detail of the acousticfield.As a result,BELLHOP can be run with less stringent accuracy requirements(fewer beams and larger step sizes).This in turn can save on the run time.25Range (km)D e p t h (m )BELLHOP− Munk profile, coherent Freq = 50 Hz Sd = 1000 m050100200040006080100Range (km)D e p t h (m )BELLHOP− Munk profile, coherent, Gaussian beamFreq = 50 Hz Sd = 1000 m200040006080100Range (km)D e p t h (m )BELLHOP− Munk profile, semi−coherentFreq = 50 Hz Sd = 1000 m200040006080100Range (km)D e p t h (m )BELLHOP− Munk profile, semi−coherent, Gaussian beamFreq = 50 Hz Sd = 1000 m200040006080100Range (km)D e p t h (m )BELLHOP− Munk profile, incoherentFreq = 50 Hz Sd = 1000 m200040006080100Range (km)D e p t h (m )BELLHOP− Munk profile, incoherent, Gaussian beamFreq = 50 Hz Sd = 1000 m200040006080100Figure 6:Transmission loss for the Munk sound speed profile using (top to bottom)coherent,semi-coherent,and incoherent TL calculations;and left to right geometric and Gaussian beams.265Directional SourcesWe considerfirst a point source in free space(in a homogeneous medium).The BELLHOP environmentalfile uses a sound speed profile going from ±10000m in depth.The depth interval is selected there to cover the range over which we are interested in seeing thefield,since BELLHOP will only calculate thefield within the waveguide.To make sure there are no boundary reflections,we use the Acousto-Elastic halfspace option with a sound speed and density precisely matching that within the water column.We set NBeams and Step to zero,letting the code automatically select appropriate values.The environmentalfile for this case is shown below and the resulting TL plot is shown in the upper panel of Fig.(7).omni.env1’Point source in free space’2100.0!Frequency(Hz)314’CAF’5-10000.01500.00.01.0/615000.010000.07-10000.01500.00.01.0/810000.0/9’A’0.010/111!NSD120.0/!SD(1:NSD)13501!NRD14-5000.05000.0/!RD(1:NRD)15501!NR16-10.010.0/!R(1:NR)(km)17’C’!Run type:’Ray/Coh/Inc/Sem’180!NBEAMS19-180180/!ALPHA1,2(degrees)200.010001.010.0!STEP(m),ZBOX(m),RBOX(km)21Directional sources are commonly used in underwater acoustics.Often, the directional patterns are generated by adjusting the phase and amplitude of a discrete set of omni-directional projectors.One may model such sources using BELLHOP or any of the other models in the Acoustics Toolbox,by simply running the model for each source position and then summing up the resulting acousticfields using that same phase and amplitude weighting.This is often the most faithful approach;however,it has the disadvantage of27。