![]() |
The Santa Barbara Channel Experiment (SBCX) |
Normal mode propagation is efficient when the signal path can be
modeled as a simple waveguide. When one source excites the
waveguide, the pressure field at any point in the waveguide can be
expressed as a sum of normal modes and their wavenumbers. This
eigenvalue/eigenvector equation is referred to in underwater
acoustics as Green's function, and it takes the form
On the other hand, the parabolic equation (PE) method does a better job at handling range dependent propagation, when the bathymetric conditions vary between the source and receiver. One implementation of this is called RAM, written by Michael Collins.
It is useful to compare the output of a PE model with a normal mode model. Under similar range-independent propagation environments, the complex pressure fields should be equivalent. To achieve this, certain parameter constraints must be imposed on the propagation code variables, and small modifications must be made to the output of both sets of code.
KRAKEN, written by Michael Porter, is a flexible normal-mode propagation code used extensively throughout the ocean acoustics field. More information (including a well-documented user's manual) can be found from the Ocean Acoustics Library web site.
KRAKEN does not explicitly calculate the acoustic pressure; instead it calculates the normal modes and wavenumbers for a specific source/receiver depth pair. One must use Equation 1 above to calculate Green's function. The program green-function reads the KRAKEN output and produces the correct complex pressure field.
Below is a line-by-line description of an input file using an
isovelocity sound profile.
| Title for KRAKEN run. Ignored by the propagation code | 'KRAKEN run for mode projection at FFP array' |
| Frequency (100 Hz in this case) | 100.000000 |
| Number of media layers. For the SBCX environment, this is 3 | 3 |
Option line:
|
CVW |
| Water layer medium info. The first zero is the number of mesh points; 0 tells KRAKEN to calculate the optimal number on its own. The next number, RMS roughness, in this simplified case is also zero. The depth of the water column is 197.7 meters (the third number) | 0 0 197.700000 |
| Sound speed profile. This is an isovelocity profile, with speed constant at 1500 meters/sec. The forward slash (/) tells KRAKEN to use its own defaults for density, attenuation, etc. |
0.000000 1500.000000 / 197.700000 1500.000000 / |
| First sediment layer, consistent with the SBCX environment |
0 0 286.700000 197.700000 1560.0 0.0 1.85 0.18 0.0 286.700000 1821.0 / |
|
Second sediment layer, also consistent with the SBCX
environment |
0 0 586.700000 286.700000 1862.0 0.0 1.88 0.03 0.0 586.700000 2374.0 / |
| Bottom halfspace: an acoustic halfspace with RMS roughness of 0.0 | A 0.0 586.700000 2374.0 0.0 2.03 0.04 0.0 |
| Phase speed limits. These will be set to the minimum sound speed on the lower limit, and the upper limit will be set to the bottom halfspace sound speed (the highest sound speed) | 1500.000000 2374.000000 |
| Maximum Range. Here, 25000 meters. | 25000.000000 |
| Source/Receiver depth information. A single source is placed at 30 meters depth, while 401 receivers will be placed every meter from 0 to 400 meters depth, inclusive. The number of receivers ensures the KRAKEN output file will have sufficient granularity to evaluate the modeshapes at any depth. |
1 30 401 0.000000 400.000000 / |
| End of KRAKEN input file |
| Title line (ignored by the propagation code): | RAM run,(range: 20000), freq 100.000000,flags: s2r0p0 |
| Frequency (100 Hz), Source Depth, (30 meters), Receiver depth (30 meters). The receiver depth is ignored, since the pressure field is calculated for the entire water depth at each range step. | 100.000000 30.000000 30.000000 |
| Maximum range (20500 meters) Range step (5 meters), and Range decimation (1: no decimation) | 20500.000000 5.000000 1 |
| Maximum depth to calculate (1000 meters), Depth step (0.25 meters, see memo), depth decimation (1: no decimation), and maximum depth to write to the output file (300 meters) | 1000.000000 0.25 1 300.000000 |
| Reference sound speed (1480 m/sec), Number of terms in the rational approximation (8: overkill), number of stability constraints (1), and maximum range of stability constraints (0) | 1480.000000 8 1 0.000000 |
| Starter field flag (0: no starter field) | 0 |
Range extraction parameters:
|
1 2 0 1 0 |
| Output range restriction: Here, only write from 19750 to 20250 meters range to file. This line is only present when an output restriction is specified above. | 19750.000000 20250.000000 |
| Bathymetric Parameters: range, depth pairs, one each line, describing the bathymetry from source to receiver. Here, we are modeling a range-independent waveguide, so there is only one entry. The end of the bathymetric data is given by the -1, -1 line. |
0.000000 197.700000 -1 -1 |
| Sound Velocity Profile: Depth, speed pairs, one each line, describing the sound speed from top to bottom of the water column. Here, we are modeling an isovelocity sound profile, 1500 meters/second. The end of the SVP data is given by the -1, -1 line. |
0.000000 1500.000000 197.700000 1500.000000 -1 -1 |
| Bottom Properties. These are taken from the SBCX standard environment (rev. 1). First comes the compressional sounds speed block, in depth/speed pairs |
0 1560.0 197.700000 1560.0 286.700000 1821.0 286.700000 1862.0 586.700000 2374.0 -1 -1 |
| Bottom Properties, continued: Depth/Density pairs |
0 1.85 197.700000 1.85 286.700000 1.88 586.700000 2.03 -1 -1 |
| Bottom Properties, continued: Depth/attenuation pairs |
0 0.18 197.700000 0.18 286.700000 0.03 586.700000 0.04 -1 -1 |
| End of file |
The following table illustrates the magnitude of Green's function at various ranges
and frequencies:
| 100 Hz | 250 Hz | 400 Hz | |
| 100 m | |||
| 500 m | |||
| 1 km | |||
| 1.5 km | |||
| 5 km | |||
| 10 km | |||
| 15 km | |||
| 20 km |
| Last updated: 990826
Comments/Questions: pmd@mit.edu |
![]() |