 |
The Santa Barbara Channel Experiment (SBCX)
|
Deep Water KRAKEN-RAM Comparison
Peter Daly
MIT Ocean Acoustics
December 22, 1999
This is the third in a series of papers on comparison between RAM and
KRAKEN. The focus of this paper is which depth gridding parameter
(dz) should be used with RAM in a deep water environment. Both
magnitude and phase of the pressure field generated by RAM and KRAKEN
are compared. The results are similar to those for the shallow water
case: a z gridding of 0.125 meters or less is required to match
normal mode results at 70 Hz.
Deep Water Environment
A 4000 meter water column was used for this simulation, with a Munk
profile,
with the axis depth, z0 set to
1000 meters, and the speed at the axis depth, c0 is 1480 m/sec.
The last 100 meters of the sound velocity profile departed from the
equation above; from 3900 < z < 3950 meters, the sound speed was
linear from c(z = 3900) to c(z = 3950) = 1600. From 3950 < z <
4000 meters, c(z) = 1600 m/sec.
The bottom properties are very simple; with a halfspace compressional speed of
1700 m/sec, a halfspace density of 1.5 g/cm3. The attenuation
varies linearly from 4000 to 4500 meters depth; at 4000 meters, it is 0.5
dB/
, while at 4500 meters, 10 dB/
.
Tables 1 and 2 are annotated input files for
RAM and KRAKEN, respectively. Each provides the
same input environment, with typical propagation parameters.
Table 1: Annotated RAM input file
| RAM input line | Comments |
| RAM.IN TITLE | Title line |
| 70.0 100.0 1000.0 |
- Frequency: 70 Hz
- Source depth: 100 m
- Receiver depth: 1000 m
|
| 200000.0 5.0 80 |
- Maximum Range Calculation: 200000 m
- Range step: 5 m
- Output Range decimation: 80
|
| 4500.0 1.0 4 4500.0 |
- Maximum Depth Calculation: 4500 m
- Depth step: 1 m
- Depth decimation: 4
- Output depth maximum: 4500 m
|
| 1480.0 10 1.0 100000.0 |
- Reference Sound Speed (c0): 1480 m/sec
- Number of Pade coefficients: 10
- Number of stability constraints: 1
- Maximum range of stability constraints: 0
|
| 0 | No starter field file |
| 1 2 0 0 0 | Output flags:
- Output complex pressure field instead of TL
- Output is not scaled for carrier or spreading
- Output has no TL line
- Output is not restricted to a specific range
- No ``on the fly'' range step changes
|
| 0.0 4000.0 |
Bathymetric parameters:
- 4000 meters water column depth starting at range 0.
|
| -1 -1 | End of Bathymetric parameters |
| 0.0 1503.238000 |
| (through) |
| 4000.0 1700.0 |
|
SVP block:
- depth (m), speed (m/sec) pairs
|
| -1 -1 | End of SVP block |
| 0.0 1700.0 |
Bottom compressional speed:
- 1700 m/sec from the water column bottom down.
|
| -1 -1 | End of bottom compressional speed block |
| 0.0 1.5 |
Bottom density:
- 1.5 g/cm3, starting at range 0, from the bottom of the water column down.
|
| -1 -1 | End of bottom density block |
|
|
Attenuation block:
- 0.5 dB/
at 4000 meters depth, linearly increasing to 10 dB/ at 4500 meters depth.
|
| -1 -1 | End of bottom attenuation block (end of input file) |
Table 2: Annotated KRAKEN input file
| KRAKEN input line | Comments |
| RAM.IN TITLE | Title line |
| 70.0 | Frequency: 70 Hz |
| 2 | Number of layers: 2 |
| CVW | Options:
- C: C-linear interpolation
- V: Vacuum half-space above water column
- W: Attenuation in dB/

|
| 0 0 4000.0 | Layer 1 block:
- Number of mesh points: 0 (autocompute)
- RMS Roughness: 0
- Bottom depth of layer: 4000 m
|
| 0.0 1503.238000 |
| (through) |
| 4000.0 1600.0 |
| Layer 1 block:
| depth dependent parameters; |
| depth, sound speed pairs |
|
| 0 0 4500.0 |
Layer 2 block:
- Number of mesh points: 0 (autocompute)
- RMS Roughness: 0
- Bottom depth of layer: 4500 m
|
| 4000.0 1700.0 0.0 1.5 0.5 0.0 |
| 4500.0 1700.0 0.0 1.5 10.0 0.0 |
| Layer 2 block:
- 4000-4500 meter depth
- 1700 m/sec compressional sound speed
- 0.0 m/sec shear sound speed
- Density: 1.5 g/cm3
- Attenuation: linearly progressing from 0.5 dB/
to 10.0 dB/ .
|
| A 0.0 |
Bottom Boundary Condition:
- A: Acousto-Elastic half space
- 0.0: Interface roughness (m)
|
| 4500.0 1700.0 0.0 1.5 10.0 0.0 |
Bottom halfspace properties (same as Layer 2 block) |
| 1480.0 1700.0 | Phase speed limits (c0 and cmax) |
| 200.0 | Maximum Range (km) |
| 1 100.0 | Source information:
- Number of sources: 1
- Source Depth: 100 m
|
| 1126 1.0 4500.0 / | Receiver information:
- Number of receivers: 1126 (linearly spaced)
- Top receiver: 1 m
- Bottom receiver: 4500 m
|
Results
RAM was configured to output the pressure envelope from 0 to 4500 meters
in depth, and 0 to 200 km range. The envelope,
differs
from the pressure field p(r,z) in that the carrier and attenuation
due to spreading have both been removed,

where c0 is a reference sound speed, and k0 is a
reference wavenumber.
KRAKEN outputs both mode numbers, kn, and mode shapes,
, which can be reconstructed using Green's function,
One does not directly compare pr and pk to determine the
agreement between the two models, since the carrier term ejkr
induces oscillations which increase with range. Instead, the average carrier
term is removed, and the result is then compared:
Following are a series of plots which show the magnitude and phase
differences between gr and gk. The upper plot shows the
logarithmic difference in magnitude between the two:
while the lower plot shows the linear phase difference (in
degrees). Only the dz parameter is varied, starting at 1.0 meter
and ending at 0.0625 meters.
In all cases of dz, the magnitude difference is -40 dB or
less; which is adequate for this case. The phase difference,
however, is substantial in the 1.0 case (Figure 1): greater than 60 degrees,
except for the primary ray path. Only when dz falls below 0.5
meters does the phase error fall below 20 degrees in the water column.
At 0.125 meters (Figure 4), the phase error is 10 degrees or less for the
majority of the water column. Note, however, that even for the most
conservative dz = 0.0625m case (Figure 5), there is a substantial phase
error at short ranges (less than 20 km). This is most likely due to
KRAKEN incorporating evanescent wave numbers into Green's function,
which attenuate quickly with range.
 |
 |
 |
 |
 |
| dz = 1.0 m |
dz = 0.5 m |
dz = 0.25 m |
dz = 0.125 m |
dz = 0.0625 m |
Caveats
KRAKEN and RAM use different phase conventions (+/- complex exponential). This is reflected in the
equations above.
The Code
- Propagation Code
- C code to generate input files
- C code to process KRAKEN output
- C code to process RAM output
- Include files needed by above programs
- Matrix library needed by above programs
- Makefile to compile everything
- Shell script to run simulations
- MATLAB code to plot results
- The original RAM environment file
- Everything listed above (except KRAKEN) in one neat kr3.tgz file
Instructions for use:
- Unpack the kr3.tgz file with the command: tar xzf kr3.tgz
- Change to the matrix directory and compile the matrix library: cd kr3/src/matrix; make all
- Move up one directory and compile the software: cd ..; make install
- Compile and install KRAKEN, and copy the kraken.out executable to kr3/bin/kraken
- Make sure you have plenty (about 50 MB) of space in /tmp.
- Run the kraken_ram_compare3.csh script: source kraken_ram_compare3.csh
- Fire up Matlab and run the p5_drive.m script to produce the plots above.
A .pdf version of this document can be found here.
Ships in the SBCX logo (left to right, from the top)
Lockheed P-3 ("Redhook"), Acoustic Explorer, FLIP, Danny C, USS Dolphin.