NUMERICAL OCEAN ACOUSTIC PROPAGATION IN THREE DIMENSIONS
This page is intentionally left blank
NUMERICAL OCEAN ACOUSTIC PROPAGATION IN THREE DIMENSIONS
Ding Lee Naval Undersea Warfare Center & Yale University, USA
Martin H. Schultz Yale University, USA
World Scientific Singapore • New Jersey • London • Hong Kong
Published by World Scientific Publishing Co Pte Ltd P O Box 128, Fairer Road, Singapore 9128 USA office: Suite IB, 1060 Main Street, River Edge, NJ 07661 UK office: 57 Shelton Street, Covent Garden, London WC2H 9HE
British Library Cataloguing-in-Publication Data A catalogue record for this book is available from the British Library.
Library of Congress Cataloging-in-Publication Data Lee, Ding, 1925Numerical ocean acoustic propagation in three dimensions / Ding Lee, Martin H. Schultz. p. cm. Includes bibliographical references. ISBN 981022303X 1. Underwater acoustics ~ Mathematical models. 2. Sound-waves - Transmission — Mathematical models. 3. Wave equation — Numerical solutions. I. Schultz, Martin H. II. Title. QC233.L39 1995 534\23«dc20 95-32946 CIP
Copyright © 1995 by World Scientific Publishing Co. Pte. Ltd. All rights reserved. This book, or parts thereof, may not be reproduced in anyform or by any means, electronic or mechanical, including photocopying, recording or any information storage and retrieval system now known or to be invented, without written permission from the Publisher.
For photocopying of material in this volume, please pay a copying fee through the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, Massachusetts 01923, USA.
Printed in Singapore.
Preface
It is clear that the nature of the ocean itself is three-dimensional. Solving three-dimensional acoustic propagation problems is difficult because the ocean must be modeled by a large number of environmental parameters. Most existing ocean acoustic propagation models are aimed at providing solutions for two-dimensional (i.e. range and depth) problems because the three-dimensional effects are often weak. Since problems in various regions of interest can be solved two-dimensionally, there has been no urgency to solve three-dimensional problems. Indeed, solutions to two-dimensional problems are themselves quite complicated in nature, and the search for three-dimensional solutions will certainly increase the computational complexity. Moreover, even if a three-dimensional problem is formulated elegantly by means of mathematical and physical theory, the implementation of such a solution into the realistic computation presents a large-scale computational problem. We must face reality — the ocean variability is three-dimensional. As the ocean should be modeled by a large number of highly varying environmental parameters, solutions to the three-dimensional ocean acoustic propagation problems rely on advances that are not only physical and mathematical, but also computational. There is encouraging news: recent advancements in numerical mathematics and supercomputers make it
V
vi
Preface
possible to solve complicated three-dimensional problems at least partially. We should take advantage of these significant scientific advancements, together with our knowledge of ocean physics, to develop efficient models so that useful tools will be available to examine the actual ocean effects. We will henceforth move forward with confidence with the eventual objective of solving full three-dimensional problems within our (real) time requirement. With this objective in mind, we proceed to construct models aimed at solving numerical ocean acoustic propagation problems in three dimensions. Three-dimensional ocean effects have been studied by a number of scientists. However, most of these studies were performed for specialized environmental situations. A useful, general purpose model is one that can handle long range acoustic propagation through range-dependent, azimuth-coupled environments including irregular interface boundaries, a rough surface, and a rough bottom. This type of model has not yet been fully developed. This book provides some steps toward the solution of the complete ocean acoustic propagation problem. The purpose of this book is to introduce a basic, workable, three-dimensional ocean acoustic propagation model that will satisfy most fundamental environmental requirements and that will be practical for realistic applications. The model we have introduced to the ocean acoustic community is handled by an accurate technique which is general enough to create a wide range of capabilities to handle ocean physics. Its development relies on a combination of an ordinarydifferential-equation method, a functional operator splitting technique, a rational function approximation, and a finite difference scheme. Due to its generality of application, this basic model is expected to be modified or extended without excessive difficulty to accommodate any additional required capabilities. This book reports the complete theoretical result as well as presents the computational development of this model. While advanced knowledge of numerical methods and applied mathematics is not required to understand this book, such knowledge will be helpful. Scientists and engineers engaged in research, development, and testing and are interested in three-dimensional computational ocean acoustics should have little difficulty understanding the content of the book. It is oriented toward graduate students and research scientists who will find it useful for their research in numerical methods and computational acoustics.
Preface
vii
Major portions of this book are based on a series of research articles published in the Journal of the Acoustical Society of America, the Journal of Mathematical Modeling, the Journal of Computers and Mathematics with Applications, and the Journal of Computational Physics, and in books such as Ocean Acoustic Propagation by Finite Difference Methods (Pergamon Press, 1988), Computational Oceans Acoustics (Pergamon Press, 1985), Proceedings of the First, Second, and Third IMACS Symposium on Computational Acoustics (North-Holland, 1988, 1990, 1994), and other computational acoustics books. We wish to express our deep gratitude to a number of our technical managers who played a very important role in this research, without whose support this accomplishment would never have become possible. We would first like to thank Dr. Richard L. Lau of the Office of Naval Research for his understanding and continuing support of this research. His office initiated the research entitled "Computational Acoustics" and he encouraged us to interact with various academic scholars to apply powerful numerical methods for the purpose of solving ocean acoustic propagation problems — a first in the history of computational ocean acoustics. We also thank other technical managers of the Office of Naval Research who joined Dr. Lau in supporting this research after 1983. They are Drs. Raymond Fitzgerald, Robert Sternberg, Robert Obrochta, and Marshall Orr. Special thanks are also due to Drs. William A. Von Winkle and Kenneth Lima of the Naval Underwater Systems Center, whose continuous independent research support gave us the opportunity to make useful contributions to the acoustic community. In expanding scientific activity by developing useful research topics, the International Association for Mathematics and Computers in Simulation (IMACS), under the leadership of Prof. Robert Vichnevetsky of Rutgers University, initiated the establishment of the IMACS Technical Committee No. 17 on computational acoustics. This committee has held three international symposia: one at Yale University, USA, in 1984, one at Princeton University, USA, in 1989, and one at Harvard University, USA, in 1991. These three symposia encouraged our developments, and some of the contributions there are reported in this book. We are grateful to Prof. Vichnevetsky for his encouragement too.
viii
Preface
Other scholars who participated in the useful technical discussions for the preparation of this book include Prof. Allan R. Robinson of Harvard University, Prof. Donald F. St. Mary of the University of Massachusetts, Dr. Youcef Saad of the National Aeronautical Space Administration (NASA), Ames Research Center, and Prof. Gregory A. Kriegsmann of Northwestern University. Our special thanks also go to astronaut Paul D. Scully-Power of the Naval Underwater Systems Center, who supplied evidence of three-dimensional eddies from the photos he took on board the space shuttle Challenger in 1984. Also we thank George Botseas for his diligent and skillful help in developing the computer code. Ding Lee Martin H. Schultz
Contents
Preface
v
Chapter 1 Introduction
1
Chapter 2 Basic Mathematical Model Developments
11
Chapter 3 A Pseudopartial Differential Equation 3.1. Siegmann-Kriesmann-Lee Model 3.2. A Preconditioning Solution
25 25 26
Chapter 4 A High-Order Wave Equation 4.:. Lee-Saad-Schultz (LSS) Model 4.1.1. The LSS Mathematical Model 4.1.1.1. Stability 4.1.1.2. Accuracy 4.2. A Finite Difference Solution 4.3. Model Appraisal 4.4. Computer Code — FOR3D 4.4.1. Computer Algorithm: Two-Step Procedure 4.4.2. Computations for Step 1 4.4.3. Computations for Step 2 4.4.4. Computer Model
47 48 49 52 53 54 56 59 59 60 62 63
ix
x
Contents
4.4.4.1. 4.4.4.2. 4.4.4.3. 4.4.4.4. 4.4.4.5. 4.4.4.6.
Model capabilities Model structure Geometry of propagation Data structure of the acoustic field Main program FOR3D Subroutines
63 66 66 68 68 70 79 80 80 83 90 91
Chapter 5 Enhancement of the High-Order Wave Equation 5.1. Density Variation Capability 5.1.1. Mathematical Formulation 5.1.2. A Numerical Solution 5.1.3. Theoretical Justification 5.1.3.1. Interface conditions 5.1.3.2. The numerical treatment of discontinuities 5.1.3.3. Theoretical justification of the numerical treatment 5.1.3.4. Enhanced computer code FOR3D with density variations 5.2. Enhancement of Computation Speed 5.2.1. Differential and Difference Operators 5.2.2. The Douglas Scheme 5.2.2.1. The Douglas operator 5.2.2.2. Stability 5.2.2.3. Matrix structure 5.2.3. A Tridiagonal Solver 5.2.4. The Douglas Scheme with Density Variations 5.2.4.1. The Douglas operator with density variations 5.2.4.2. Stability 5.2.4.3. Matrix structure
110 113 114
Chapter 6 Numerical Accuracy Test: An Analytic Solution 6.1. Exact Solutions 6.2. Test Examples 6.3. Numerical Computations
119 123 125 130
Chapter 7 Three-Dimensional Effects 7.1. Concepts of 3D, N x 2D, and 2D 7.1.1. Mathematical Classification
137 138 139
92 93 95 96 97 99 99 102 103 105 110
Contents
7.1.2. Computational Classification 7.1.3. Physical Classification 7.2. Numerical Examples 7.2.1. An Ocean Environment without 6 Coupling 7.2.2. An Ocean Environment with 6 Coupling Chapter 8 The Computer Model — FOR3D
xi
140 141 144 145 148 155
Chapter 1
Introduction
Due to the weak three-dimensional effects, most existing ocean acoustic propagation models are aimed at providing solutions to problems that are two-dimensional, i.e. range and depth. Thus, even though the ocean is three-dimensional, the development of three-dimensional models to solve realistic three-dimensional problems has received little attention. Moreover, there is inadequate evidence to indicate the significance of three-dimensional effects. The ocean is surrounded by land and is bounded above by air and below by mud, sand, rock, weed, or other materials. Due to these surroundings, the ocean environments are ever changing. For example, the seasonal change of temperature can effect the water density and its sound speed. These ocean environmental changes can influence the intensity level of the acoustic wave field. field. As another example, consider the ocean which involves inhomogeneities over which a strong wind causes formation of internal waves that in turn can cause horizontal refraction of sound in the ocean. A specific illustration is the Gulf stream and its frontal zones. Within these frontal zones, temperature, salinity, density, and sound speed suffer strong variations. Large eddies are observed near such intensive frontal zones. These eddies appear in the rough shape of a ring and are often l
2
Numerical Ocean Acoustic Propagation in Three
Dimensions
formed from the separation of meanders from the ocean flow. Two types of eddies, warm and cold, can be distinguished, with the former displaying lower values of sound speed. Environmental effects of the type described above are three-dimensional. Thus, every true three-dimensional model must be able to treat these physical phenomena. Some of them are illustrated by examples in the chapter covering three-dimensional effects. To gain more knowledge of three-dimensional ocean environmental features, readers can consult the available literatures (see Brekhovskikh,1 Urick,2 Officer,3 Shang, 4 Pierce, 5 and Clay 6 ). It is natural to ask the question: How do the physical environmental conditions affect sound propagation? To answer this question satisfactorily, one needs a reliable acoustic model with the required capabilities to conduct investigations. This volume introduces a number of such numerical models and describes one in detail. The numerical model was chosen because it is capable of efficiently handling the threedimensional effects. In 1984, after the return of NASA astronauts who traveled on board the space shuttle Challenger, astronaut Paul D. Scully-Power released a set of historic photographs showing the ocean dynamics. The NASA photo # S1735-094 was used as a cover for our book Computational Ocean Acoustics.7 This photo clearly exhibits the existence of three-dimensional ocean eddies. This pictorial evidence further motivated ocean acousticians to examine true three-dimensional effects. A natural first question is: Where do we look for a realistic description of three-dimensional eddies? This problem is being actively investigated by the community of physical oceanographers, and many results are becoming available. As examples, we deal with sets generated by scientists using the Harvard Open Ocean Model (HOOM). 8 A second question is: Does a general purpose, accurate three-dimensional wave propagation model capable of handling such data correctly exist? These questions stimulated the examination of available three-dimensional acoustic propagation models. One result of this examination was the development of an accurate numerical model by Lee et al.9 using an iterative preconditioning technique. Prior to that work, one contribution to the fully three-dimensional modeling development was by Bear, 10 who applied the split-step algorithm to solve the three-dimensional parabolic equation first introduced the Tappert. 11 Later, Perkins and Baer 12 discussed a simplified approximation to the model in Ref. 10. Their contributions exhibited weak three-dimensional effects, from which they formulated the so-called Nx 2D concept (as we will discuss later). Baer and Perkins' model solves
Introductionon
3
a narrow angle, three-dimensional parabolic equation, but it does not take into consideration the vertical wide angle capability. Their application of the Fast Fourier Transform is efficient for treating constant coefficient parabolic partial differential equations, but an accurate treatment for handling the bottom, particularly a rigid bottom, has been overlooked. In comparison, the accuracy of preconditioning models is highly recognizable, but the computation speed is impractical. Thus, we were motivated to formulate another wave equation and to develop efficient numerical methods to solve this wave equation accurately. During this period, Bayliss, Goldstein, and Turkel 13,14 introduced an iterative method for the solution of the Helmholtz equation and discussed its numerical solution for wave propagation problems in underwater acoustics. In 1986, Goldstein 15 described multigrid preconditioners applied to three-dimensional parabolic equation type models. The multigrid preconditioners were more effective than the one introduced by Schultz et al..9g However, a drawback of Goldstein's solution it that it cannot go out far in range, and, thus, is incapable of handling very long range propagation. Consequently, Lee et a/.16 developed a mathematical model, known as the Lee-Saad-Schultz al. (LSS) wide angle wave equation, and an efficient numerical scheme to accurately solve this wave equation. Botseas et al.17 implemented this solution into a multipurpose computer code (FOR3D) and later applied FOR3D to process the HOOM data and other three-dimensional inputs to obtain various sets of interesting results. To date, there are at least two other three-dimensional wave propagation models. One is based on ray theory, i.e. the notable HARPO (Hamiltonian Acoustic Ray-tracing Program for the Ocean), originally developed by NO A A and later modified by Newhall et al.ls for ocean acoustic applications. The other model, developed by Chiu, 19 is based on a mode-coupling theory and is also suitable for processing ocean data. The HAPRO model is efficient for high frequencies, but is presumably less accurate for lower frequencies. The mode-coupling model does not have frequency restrictions, but its capabilities and computation speed need additional upgrading. A few other fast models for solving three-dimensional problems can be found in Refs. 20 and 21. This book is divided into four main parts: (1) the development of new representative wave equations, (2) the development of new and efficient numerical schemes to solve these representative wave equations, (3) the implementation of these numerical solutions into a workable computer code for both research and application purposes, and (4) the application of
4
Numerical Ocean Acoustic Propagation in Three
Dimensions
this computer model to examine true three-dimensional and other related effects. The successful application of finite difference schemes to date and their generality and favorable stability properties are important factors to motivate extensions of these numerical schemes to solve three-dimensional problems. In order to treat the various ocean environments realistically, representative wave equations are developed, each with its own physics and mathematical properties. A separate chapter is devoted to some basic mathematical model developments, in particular, the descriptions of the requirements for developing the model with the desired capabilities. The main representative equation we consider is a one-way outgoing wave equation that can be approximated by a parabolic equation, a pseudopartial differential equation, or a high-order partial differential equation. In the mathematical development, cylindrical coordinates are adopted so as to be useful in realistic environments. The selection of the important physical phenomena to be included in the representative wave equation is part of the art of mathematical modeling. How these representative mathematical models were developed will be discussed in detail in the appropriate section. In Chap. 2, a far-field wave equation is formulated. The formulation of this far-field wave equation for both outgoing and incoming waves is discussed in detail. However, attention in this book is focused on the one-way outgoing waves. This far-field wave equation is the root for developing the outgoing wave equation which is discussed at length in this book. Due to the lack of efficient and capable three-dimensional models, three-dimensional wave propagation problems have typically been solved by available two-dimensional models ignoring the azimuthal azimutha! coupling effects. Results produced by these two-dimensional models are considered acceptable by virtue of weak azimuthal coupling. That is, a three-dimensional sector is divided into N subsectors, each sector at a fixed azimuth angle in which a propagation problem is solved by two-dimensional models, so that the entire problem is solved by N applications of two-dimensional models. This treatment is known as "Nx 2D". Therefore, a distinction must be made among the concepts of "3D", u"iVx Nx 2D" and "2D", each of which is discussed in detail mathematically later in this book. These concepts are also discussed carefully both computationally and physically. These discussions point out the three-dimensional effects in situations where they cannot be ignored, thereby stimulating the need for a model to process three-dimensional wave propagation. These types of considerations motivated us to consider the development of a true three-dimensional
Introductionj n
5
model. Not only did we develop new representative wave equations with required physical capabilities, but we also developed new efficient numerical schemes to solve them. To show the efficiency of our new model, we include one of our early developments, a pseudopartial differential equation which was numerically solved by a preconditioner technique. This early model was, at that time, an accurate development. As it is an iterative scheme, acceleration of its speed of computation required research in the fields of both numerical mathematics and computer science. Our early development is presented in Chap. 3. This chapter gives an in-depth development of a representative pseudopartial differential wave equation that was originally formulated by Siegmann et a/..22 A successful application of an implicit finite difference scheme for two-dimensional problems was extended to solve the new three-dimensional wave equation using the principle that the marching procedure solved a system of equations at every range step. Due to the incorporation of azimuthal coupling effects, the resulting matrix system is not tridiagonal but is instead a sparse seven-diagonal matrix system. This sparse system requires special treatment, one of which is the application of sparse matrix techniques that apply using a preconditioning technique. As our resulting system has no special desirable properties, such as being positive-definite or Hermitian, the iterative preconditioning technique suffers from a slow computation speed, even though the results are accurate. The computation speed could be improved if better preconditioning techniques could be developed. This remains an area that needs increased research in numerical methods in order to improve the efficiency, and hopefully Chap. 3 will stimulate such research. Other than attempting to improve the computation speed of preconditioning techniques, we took a completely different approach, namely, to formulate a new representative wave equation. The details of this development are presented in Chap. 4. This high-order wave equation is derived from the same representative one-way outgoing wave equation discussed in Chap. 3. However, this new equation is second-order in azimuth and fourth-order in depth, which happens to make it much easier to handle. The formulation of the high-order wave equation begins with its dependent variable expressed in terms of matrix exponential form by means of an ordinary differential equation method. The matrix exponentials have differential operators that require an efficient treatment. Our approach is to apply a rational function approximation for these matrix exponentials, which leads to simple first-order rational function expressions that are easy
6
Numerical Ocean Acoustic Propagation in Three
Dimensions
to handle. An important feature in our development is that the rational function operators have the property of being unitary. Thus, for an explicit finite difference marching procedure, the scheme is unconditionally stable. An additional important feature of this finite difference solution is that at most only two tridiagonal systems need to be solved. Another advantage is that the second tridiagonal system controls the azimuthal coupling, in both computational and physical senses. A computer code, FOR3D, was developed to implement the finite difference solution just described. As the development fully incorporates azimuthal coupling, this feature is handled efficiently in the FOR3D code. To date, this model is only one of few in existence from which the user can call for azimuthal coupling. If azimuthal coupling is absent, the code will produce this result automatically whether or not the user asks for it. How this important capability is handled efficiently will be discussed in detail in Chap. 4. The development thus far has created a useful basic model which can process long range, wide angle wave propagation in various three-dimensional ocean environments including shallow or deep water, range dependence, and azimuthal dependence. However, ocean environments are complex, with varying temperature, salinity, and pressure. These changes affect the sound speed and density structure of water masses, effectively creating a layered medium with interfaces. At each interface, the physical properties require that the pressure and normal component of particle velocity are continuous. An elegant numerical treatment of the interface conditions was first introduced by McDaniel and Lee 23 using a Taylor series expansion in conjunction with a finite difference technique. In their treatment, the wave equations in each medium do not involve density; a novel matching technique has to be introduced to satisfy the conditions. This treatment in effect formulates a special representative wave equation with density variations on the interface. This approach handles well our wave equations having the form of pseudopartial differential equations. Extension of this technique to handle high-order wave equations requires more effort, in the cases where a fourth (or higher) derivative in the depth variable in included. For this reason, we chose to handle interface conditions for our higher order equation by a different approach, i.e. by formulating the representative wave equation with density variations. The theoretical development, along with our special numerical treatment, are included in Chap. 5. This particular portion of enhancement is the development of capability to handle density and sound speed changes across the interface boundary and
Introduction)n
7
the theoretical and numerical treatments are justified mathematically. This capability was added to the computer code, thus increasing the FOR3D performance capability. When any code has all the required capabilities, it is obviously desirable that the code computes at a fast speed on any computer. It is a common belief that using newer and faster computers is the way to improve computation speed; however, it is not necessary to rely only on hardware to gain computation speed. In addition to using faster computers, the computation speed can often be improved by (1) formulating a better mathematical model and (2) finding a more efficient numerical solution. An example of (1) is our formulation of a high-order wave equation, as described in Chap. 5. An example of (2) is our approach in which high-order finite difference schemes are developed. Clearly there are a number of other approaches in this category. The new scheme presented in this book is the only one which happens to be easy to implement. In the case where the matrices are symmetric, the recursive formula of the tridiagonal solver is further specialized to gain computation speed; in fact a roughly 40% improvement is achieved. Thus, this high-order numerical scheme offers a distinct advantage, so that long range, large scale problems which require extensive and lengthy computations can sometimes be solved even by conventional computers. If supercomputers are used, a fast computational speed can be expected. The detailed development is also included in Chap. 5. Validity is an extremely important factor in any modeling development. For the class of large-scale and complicated problems, it is usually very difficult to construct an analytic solution for the examination of accuracy as well as capabilities. One of our research results was the construction of an analytic solution that satisfied our representative wide angle wave equation and reasonable prescribed boundary conditions. This analytic solution is suitable to simulate environments of interest so that in some regions the three-dimensional effects are evident, while in other regions they are not. This is ideal for testing not only the computational determination of three-dimensional effects, but also the accuracy of the results. The testing is covered as a vital portion of Chap. 6. It begins with a discussion of the advantages of the analytic solution, and then continues with a check of computational results against the known exact solution for digit-by-digit accuracy. For users of the code with the aim of research or application, it is advised that after implementation the accuracy of the code should be checked. To do so, the analytic solution is recommended. After the accuracy of the FOR3D model is established, the occurrence of
8
Numerical Ocean Acoustic Propagation in Three
Dimensions
three-dimensional effects is briefly identified. A special sequence of tests was designed to examine FOR3D's F0R3D's capability to handle three-dimensional effects correctly. We use the test results to demonstrate correct treatment of true three-dimensional effects by comparing results with Nx 2D cases where the differences become quite evident. After the computer code's accuracy and validity were established, we use it to process realistic ocean input data. A set of such realistic data was supplied by scientists at the Center of Earth and Planetary Physics of Harvard University. These data are used to examine the horizontal energy distribution, i.e. the occurrence of three-dimensional effects, the cost of large-scale computations, and practical esitmates for the solution of bigger and more general problems. Since a tremendous amount of effort was required to prepare and process the Harvard data, findings are reported in Chap. 7. This chapter describes the first time that an interface was produced between an ocean prediction model and an acoustic propagation model. The ocean prediction model is an early version of the Harvard Open Ocean Model (HOOM) that employs six vertical levels. The entire ocean region contains information about the Gulf stream, fronts, and eddies, ranging from 33°N to 41°N in latitude and from 60° W to 72° W in longitude. Many source locations and propagation directions were selected to exercise the model's performance and to examine three-dimensional effects. The results present acoustic propagation in different cases involving the Gulf stream, fronts, and warm and cold eddies, including both three-dimensional and two-dimensional model computations. These results clearly indicate the existence and occurrence of three-dimensional effects, thus suggesting the use of efficient three-dimensional models to perform the computations. Of course, this was the main motivation behind our development of the three-dimensional wide angle wave model. The last chapter, Chap. 8, describes the Computer Model — FOR3D. In addition to including the computer code, we discuss what this model can do for users, i.e. its advantages and capabilities. A guide is also provided to assist users of this code and to minimize their difficulties. In short, this book presents a step-by-step development of a new representative wave equation for predicting one-way outgoing acoustic wave propagation in three-dimensional ocean. The development of an efficient numerical scheme effective for solving this particular wave equation is an art. The creation of the research computer code is a contribution available for many applications in the real world. It is believed that high quality, three-dimensional experimental data exist which need a high
Introduction
9
quality, accurate model to verify the measurements. Due to the accuracy of the LSS model, it should be useful in examining high quality measured data. Experimentalists often talk about the GIGO (Garbage In, Garbage Out) principle when examining the actual measurements using available models. No matter which propagation model is applied to examine the high quality experimental input data, the objective is that it should never contribute to the degradation of the accuracy of the results. The LSS model fits into the select category of models capable of handling high quality data, because it was developed to produce accurate results. Of course, disagreements between measured data and numerical results do often exist. In such a case, the user must examine both the model's capabilities as well as the quality of the experimental data. Within the framework of the LSS model's capability, the user can apply it with confidence. Variety of research topics are raised in this book in the areas of numerical analysis and computer applications in order to stimulate research problems in this and related areas. To gain some background for understanding this book, readers are advised to consult a description of a two-dimensional finite difference model, published in the book Ocean Acoustic Propagation by Finite Difference Methods authored by Ding Lee and Suzanne T. McDaniel. 24 References 1. L. Brekhovskikh and Yu. Lysanov, Fundamental of Ocean Acoustic (Springer, Berlin, 1982). 2. R. L. Urick, Sound Propagation in the Sea (Peninsula Pub., California, 1982). 3. C. B. Officer, Introduction to the Theory of Sound Transmission, (McGrawHill, New York, 1958). 4. E. C. Shang and T. S. Wang, Theory of Underwater Sound (Science Pub., China, 1981). 5. A. D. Pierce, Acoustics — An Introduction to Its Physical Principles and Applications (McGraw-Hill, New York, 1981). 6. I. Tolstoy and C. S. Clay, Ocean Acoustics — Theory and Experiment in Underwater Sound American Inst of Physics, New York (1987). 7. M. H. Schultz and D. Lee, Computational Ocean Acoustics (Pergamon, Oxford, 1985). 8. A. R. Robinson and L. J. Walstad, "The Harvard Open Ocean Model: Calibration and application to dynamic process, forecasting, and data assimilation studies," J. Appl. Numer. Math. 3 (1987) 89-132. 9. M. H. Schultz, D. Lee, and K. R. Jackson, "Application of the Yale sparse technique to solve the three-dimensional parabolic wave equation," in Recent Progress in the Development and Application of the Parabolic Equation, eds. P. D. Scully-Power and D. Lee, Naval Underwater Systems Center, TD #7145 (1984).
10
Numerical Ocean Acoustic Propagation in Three Dimensions
10. R. N. Baer, "Propagation through a three-dimensional eddy including effects on an array," J. Acoust. Soc. Am. 69 (1981) 70-75. 11. F. D. Tappert, "The parabolic equation method," in Wave Propagation and Underwater Acoustics, Lecture Notes in Physics, Vol. 70, eds. J. B. Keller and J. S. Papadakis (Springer, Berlin, 1977). 12. J. S. Perkins and R. N. Baer, "An approximation to the three-dimensional parabolic equation method for acoustic propagation," J. Acoust. Soc. Am. 72 (1982) 515-522. 13. A. Bayliss, C. I. Godlstein, and E. Turkel, "An interactive method for the Helmholtz equation," J. Comp. Phys. 49 (1983) 443. 14. Ibid, "The numerical solution of the Helmholtz solution for wave propagation problems in underwater acoustics," in Computational Ocean Acoustics, eds. M. H. Schultz and D. Lee (Pergamon, Oxford, 1983). 15. C. I. Goldstein, "Multigrid preconditioners applied to three-dimensional parabolic equation type models," in Computational Acoustics — Wave Propagation, eds. D. Lee, R. L. Sternberg, and M. H. Schultz (North-Holland, Amsterdam, 1986) 57-74. 16. D. Lee, Y. Saad, and M. H. Schultz, "An efficient method for solving the three-dimensional wide angle wave equation," in Computation Acoustics Wave Propagation, eds. D. Lee, R. L. Sternberg, and M. H. Schultz (NorthHolland, Amsterdam, 1986) 75-90. 17. G. Botseas, D. Lee, and D. King, "FOR3D: A computer model for solving the LSS three-dimensional wide angle wave equation," Naval Underwater Systems Center, TR #7943 (1987). 18. A. E. Newhall, J. F. Lynch, C. S. Chiu, and J. R. Daughterty, "Improvements in three-dimensional ray tracing codes underwater acoustics," Computational Acoustics — Ocean Acoustic Models and Supercomputing (North Holland, Amsterdam, 1990) 169-186. 19. C. S. Chiu and L. L. Ehret, "Computing of sound propagation in a three-dimensional varying ocean: A coupled normal mode approach," in Computational Acoustic ^— Ocean Acoustic Models Supercomputing (North Holland, Amsterdam, 1990) 187-202. 20. J. F. Lynch and C. S. Chiu, The 3-D Acoustic Working Group Meeting, Long Beach, MS, July 7-8, 1988, Woods Hole Oceanographic Institution, TR No. WHOI-89-16 (1989). 21. D. Lee, A. Cakmak, and R. Vichnevetsky, Computational Acoustics — Ocean Acoustic Models and Supercomputing (North Holland, Amsterdam, 1990). 22. W. L.Siegmann, G. A. Kriegsmann, and D. Lee, "A wide angle threedimensional parabolic wave equation," J. Acoust. Soc. Am. 78 (1985) 659664. 23. S. T. McDaniel and D. Lee, "A finite-difference finite-difference treatment of interface conditions for the parabolic equation: The horizontal interface," J. Acoust. Soc. Am. 71 (1982) 855-859. 24. D. Lee and S. T. McDaniel, Ocean Acoustic Propagation by Finite Difference Methods (Pergamon, Oxford, 1988).
Chapter 2
Basic Mathematical Model Developments
Successful mathematical modeling leads to the development of a representative mathematical equation that contains as much of the desirable physics as possible. With this in mind, we have focused our development efforts on a three-dimensional, outgoing wave equation. The inclusion of all the desirable physical processes into the mathematical model is conceivable but this approach presents difficulties in finding an efficient solution. In contrast, our basic approach is to develop an accurate mathematical model that is not difficult to solve, even though the representative equation does not contain all the physics we would prefer. The expectation is to develop the mathematical model in such a manner that additional physical mechanisms can be incorporated in subsequent extensions by means of the boundary conditions or the ocean volume. As a starting point, we extend our two-dimensional modeling developments to three-dimensional situations. In many applications, it is appropriate to deal with a harmonic point source; therefore, the hyperbolic wave equation is reduced to the Helmholtz equation. The Helmholtz
11
12
Numerical Ocean Acoustic Propagation in Three
Dimensions
equation is an elliptic equation that, with appropriate boundary conditions, constitutes a well-posed problem. Thus, a solution exists and a uniqueness is assured. This Helmholtz equation incorporates both incoming and outgoing waves. One of the major problems remaining in ocean acoustic propagation, still far from being completely solved, is the capability to accurately predict three-dimensional propagation at low frequencies for very long range periods. For this purpose, a representative wave equation to predict one-way wave propagation would be valuable. We develop such a representative wave equation from the Helmholtz equation. As we have done in the two-dimensional case, 1 we develop a three-dimensional representative wave equation which contains the desired physics and which is easy to solve using specifically-designed numerical schemes. To be consistent with, and as an extension of, our two-dimensional wave equation, we use cylindrical coordinates. The three variables are depth z, range r and azimuth variable 6. In the case of harmonic point source with two-way propagation, the following problem is defined. Problem 2.1. The three-dimensional Helmholtz equation in cylindrical coordinates is d22
d2± 2
dr
ld(j) ld(f> \d + r or
d22> 4> 2
dz
■+
22
(j) 4> i1 day 2
r <902 '
„ *x , 1 ,W , „„ l,22rr 22 // Ag[n 3 (r,»,«) - 1]0 = 0 .
,, r„t ,,x , (2.1)
Equation (2.1) is to be solved subject to conditions of the following type: initial condition :
4>{r ,9,z) z) = 4> <j)00(0,z) (6,z) , <£(ro0,0,
(2.1a)
surface condition :
>(ro,0,O) (j)s{r,6) 4>(rQ,e,0) = s{r,6), ,
(2.1b)
=
(J>B{T,6) bottom condition : {ro,0,ZB) 00(T*O,0,^B) ( V O , 0 , 2 B ) ==^BO*,0) B{r,0) , ,
(2.1c)
and end condition :
0(r ww,0, z) ==v,(6,z) 0(> <j>(ry,,9,z) <j>w(0,z) ..
(2.1d) (2.Id)
The function 4>(r,6,z) is required to satisfy certain boundary conditions such as Dirichlet, Neumann, or mixed boundary conditions. In addition, <j)(r, 0,z) might be taken as azimuthally periodic, i.e. (r,6 (r,6,z). 0(r, 6 + + 2TT,2Tr,z) Z) = =0(r, 0, z) . 6,
(2.1e)
Equation (2.1), together with the fully prescribed conditions such as (2.1a) through (2.1e), is recognizable as a well-posed problem for threedimensional ocean acoustic propagation.
Basic Mathematical Model Developments nts
13
We now introduce a variation of the above problem. Problem 2.2. The three-dimensional far-field equation in cylindrical coordinates takes the form
fu d2u ^.. du ^ ., _^x, „., d2 u 1 d2u , 9 r 9, /. fl. .. ,,. 2tk + ko[n MZ) + 2lk + + + +ko[n n rMZ) 9 Mz) z 2(2.2) 2tko + + +ko[n 2 + + + dz*~ ^w ^W W ( > > ) "-"*]" ^*]«=° dr W °fr M ^W ===°0°••• • ((2-2) -2) w &;or dz* -1]« Equation (2.2) is solved subject to another set of conditions: initial condition :
U(TQ,0,Z)z). = uo(0,z) , u(rQ,6,z)
(2.2a)
surface condition :
w(r,0,O) = us{r,6) {r,0) ,
(2.2b)
bottom condition :
u(r,0,ZB) u{r,0, ZB) w(r,0, ^B(?*, 0) , B) = UB(T,6)
(2.2c)
end condition : K ^ ww((rr w , 00,, zz)) = = uw(0, z) .
(2.2d)
and
Also, -u(r, 0, z) might be taken as azimuthally periodic, i.e. u(r,0 27r,z) u(r, 0 + Z) u{r, + 2TT, 2) = = u(r,0,z) u(r, 0, z) .
(2.2e)
Equation (2.2), together with the fully prescribed conditions such as (2.2a) through (2.2e), can also be recognized as a well-posed problem for threedimensional ocean acoustic propagation. In Eq. (2.1), functions <\> and n(r,0,z) following definitions:
and the symbol fco fc0 have the
(j> —=0(r,0, z) isthethe spatial portion of the acoustic pressure field, (r,0,z) n(r,0,z) n(r, 0, z)
is the index of refraction such that n(r, 0, z) = co/c(r, 0, z)
where c0 is a reference sound speed, c(r,0,z) is the sound speed, and fc0 is the reference wave number such that fc0 = = 27r//c 0 , with / being the source frequency. How is Eq. (2.2) derived? By following the development of the twodimensional parabolic approximation, we let (r10,z)==u(r,0,z)v(r) <j)(r,0,z) u(r101z)v(r), ,
(2.3) (2.3)
14
Numerical Ocean Acoustic Propagation in Three
Dimensions
where v(r) will be assumed to vary strongly with r, and u(r, 0, z), z), compared to v(r) will be only weakly dependent on r. Calculating the partial derivatives of <j){r,0,z) <j){r,6,z) with respect to r,z and 0, and denoting these by subscripts, we find (j)r(r,0, <j)rr(r,0, z) z) = = uurrr(r, (r, 0, 0, z)v(r) z)v(r) + + u(r, u(r, u(r, 0, 0, z)v z)vrr{r) (r) ,,
(2.4) (2.4)
<j)rrrr(r, <j)
(2.5) (2.5)
(r,0,z)=u (r(r,0,z)v(r) 0,z)v(r))v(r) ,, 0 (r,0,z) =u zz(r,0,z)=u zzzz(r 110,z)v(r) Z 2 zz zz
(2.6)
oe(rAz) = u00 00(r,0,z) = ee{r,0,z)v(r)
(2.7)
and
Substituting Eqs. (2.4) through (2.7) into Eq. (2.1), we obtain
(( v
— x >,. 1 + -v + + ~Vr -vrr JJJ Uu u
0
(( V rr vrr rr
[ rr L IL
/I \r \r V
2 \ r vvv J/
+ \urr + \Urr ~- ^vrr )J U ~Vr Wrr + U Wzzzz + ~^U00 + fco7l2(r, 0, z)u\ + \u + (( -- +4- ~V
rr
JJ
V = 0. (( 22 88 ))
We select the terms in the first big round brackets of Eq. (2.8) equal to —k%v and that in the square brackets equal to 4-k^u to obtain, respectively,
and and
vrrTrrr +++ -v -V k\v V -Vrrr +++ k%v 6 === 000 rr
2 2 1 -2v )) u + w urrrr++[-ziioe 0, z) z) — - l]u uzzzzzz + — —u u ^ +fckl[n ,[n (r, 0, lilt == 00 .. + [\r- ++ -v v rrr J rr rz ee
(2.9) ((2.9) 2.9)
(2.10) (2.10)
The above selection is arbitrary but not unique. Our choice will permit the coefficient of the ur term in Eq. (2.10) to become greatly simplified, as will be seen shortly. Equation (2.9) is a second-order homogeneous ordinary differential equation in the variable r, and its general solution is a combination of two functions. These two functions represent the incoming and outgoing waves. Since we plan to deal only with the outgoing wave, we apply a radiation condition for the nonexistence of the incoming wave. As a result, the solution to Eq. (2.9) is expressed solely by an outgoing wave representation. Specifically, we use the particular closed form solution of Eq. (2.9), 1 v(r) = = J H< # W ) , ) \kor),
(2.11) (2.H)
Basic Mathematical Model Developments
15
which is the zeroth-order Hankel function of the first kind for the outgoing wave representation. (This is consistent with the particular choice exp(—i2irf) of the temporal portion of the pressure field.) We want to make use of solution (2.11) to simplify the coefficient of the ur term in Eq. (2.10). Prior to doing this, we must first apply the far-field approximation (asymptotic for k0r > 1) to H$ (k0r). We obtain H^\k0r)or) ~ J -^ ^ v(r) = Hp\kor)
^or-*\ ce*<*<"-*>,
fc0kr0r > 1 ..
(2.12)
Use of only the far-field approximation and the radiation condition (one-way outgoing wave propagation) enables us to express v(r) by the expression in Eq. (2.12). Having established the expression (2.12) for v(r), we can proceed to simplify the range variable coefficient (£ -h + ^vr) of ur in Eq. (2.10) to a constant. This is an important component of the parabolic approximation. To carry out the reduction, we differentiate v{r) with respect to r using (2.12) to obtain
(ik° ~ £ )
vVr(r)^(ik 0-^)H^(k r(r) ~ (ik 0 - ±)0r). H^(kor)
.
(2.13)
Then, it is easily seen that 1 2 - + -v
~ 2ik .
r 0 —I—v r v r ~ 2IKQ .
(2.14)
r v The u~n symbol reminds us that the relationship is asymptotic for large kor. Replacing (£ + ^v %vr)r) by 2ik0 in Eq. (2.10), we obtain the previously given fax-field wave equation, i.e. 2 2 2ik0urr + uzz + -$UQB (r,0,z) (r,8,z) - l]u urr + 2ikou -^uee + kl[n fcj)[n (r,9,z) — l]u == 00. .
(2.2)
The far-field wave Eq. (2.2) accommodates both incoming and outgoing waves, even though the simplification of the ur coefficient has relied on the outgoing nature of the strongly varying portion v(r) of the solution. If the portion u is to vary much more slower with r, it is reasonable to drop the urr term in comparison with the 2ik$ur term. By dropping this urr term, Eq. (2.2) reduces to 2 22 2ik0uurTr + uzz + -$uee —use + kl[n (r,8, (r, 6, z) l\u == 00 ,, —use +fcj)[n fcn[n (r,0, z) -- \]u l]u
(2.15)
16
Numerical Ocean Acoustic Propagation in Three
Dimensions
which was used by Baer and Perkins 2 ' 3 to examine three-dimensional effects, Equation (2.15) can be rewritten ten as 1
lk
i
l r 2/2 a \ r = = ^° V -Y[n +h ^-n ^ Uu e ur M (r,0,z)-l)u , z ) - 1]«+ 2 ^22«' ~ + + 2^ 2k0r'^ 2fc 0 u
e
,'
2 16 ((2-16) - )
which is the original form of the three-dimensional wave equation introduced by Tappert. 4 Equation (2.16) accommodates a vertically narrow angle propagation in the forward direction, as is discussed subsequently (see Ref. 1 for a further discussion of this concept). Rather than just dropping the second derivative term, as was done in (2.2) to obtain (2.15), we choose to factor Eq. (2.2) to highlight the incoming and outgoing wave components. Before doing so, we first express Eq. (2.2) in an operator form:
+2iko +2ik ft1+ ^1+ +kl[n2{rAz) 2 2 [n2{rAz) [n (r,0, z)-l]j {^ t ^ & (it & hw^w-k+k2 ° -l^)u=Q -1]- )u=0- (2(2-17) -17)
-2ik0 — + (or>r dz2 ' r 2 30 2 2 \dr Next, we define
*X = nn 2(rAz)-l (r,0,z)-1 ^ ^ ^ M , 2 ) _ 1 ++ _L|L k%dz
(2.18) (2-18)
1
2 19 (2.19)
2
+
and
Y
2
d*
= fcWW>r d0 ' 2 2
2
<- >
It is now possible to express Eq. (2.17) in two different operator forms. The first is d_ + ik ik000-- ik ik000Vl \/l \/l ++ XX + —+ ik00Vl (— — +ik ikoVl + YY JjJ (( — — + ik ik00 + ik Vl + +X X + YY jJ u dr
dr
d_ d_ /1 ++ XX ++ YY jj= ik - ^ -- ^Vl = (vi Vl -^ -^Vl + +X X+ + YY )\ uu ,, ik000 (((Vl dr
dr
(2.20) (2.20)
and the other is
ikoVl + X + Y )j ([g-+ +X +Y Ju (f jTT -g-- + ih ik0 + ifaVl — +ikoik0 - ik0Vl +X = ik0 (-^\/l (-^Vl+X + X + Y - Vl Vl+X + X + Y ^-^\\ u .
(2.21)
Note that Eq. (2.2) is identical to either Eq. (2.20) or Eq. (2.21). Suppose now that Vl Vl + X + Y ^ = = -?-Vl ^-Vl X + Y Yu. liy/l + X u . or or or or
(2.22)
Basic Mathematical Model Developments 5
17
If Eq. (2.22) holds, it follows that both d
a + ik0-0 - ikoVl ((—+ik — ikoVl+X ik ikoy/l iko j )u ==0 0 +X + YY J) (( — — ++ ik ik00 ++ikoy/1 ik0\/l +XX++YY )u 0Vl + (, (2.23a)
and
(-g-+ik (g-+ik (i
00
d + ikoVl+X X + Y Jj (—+ik ((— — + +0ik -ikoX + Y )u ik00Vl+X VTTX~+Y j u == 00 0 - ik
(2.23b) Thus, the factorization of (2.17) becomes much simpler if (2.22) holds exactly, or holds to good approximation. Equation (2.22) will hold approximately provided some conditions are satisfied. In order to justify these conditions, we will discuss two important properties. We recall that Eq. (2.2) is obtained from Eq. (2.10) by means of a far-field approximation applied to the solution v(r). Specifically, the far-field approximation, k0r > 1, enables the solution v(r) of Eq. (2.9) to be expressed by Eq. (2.12). If we denote the leading term in the far-field approximation of v(r) by v(r), i.e.
fJZ
r v(r) = \l-4- te»<*° V -*> ,
^ - ^V rnk0^r " V nkor
'
(2.24) (2.24)
then a measure of the relative error between v(r) and v(r) is E{v) = \v(r) \v{r) - v(r)\ l^^(rr))!!""11 . E(v) =
(2.25)
In a computation employing our approximation equations, suppose we require (2.26) E(v) < 6 , where 6 is a specified positive tolerance. The tolerance condition focuses on the difference in modulus, rather than the difference in phase which is of little interest. It is known 5 that
w r ) i~ HKr)| i c ( r[i - i j g j ^ 2++o+o WDI o ( J J ^ ) ] . kor fkor- — »>. oo . 16(fc r)
W'>i~i*4-ii(5^ ((sb0]~ 4 "i^ ((^r)]' ^°°U M V J ' *»-'»• 0
(22r) (2.27) P.")
The terms inside the square brackets of (2.27) alternate in sign, and they have the property that the remainder after retaining any number of terms is no bigger than the first term neglected. From condition (2.26) and estimate (2.27), it follows that v(r) is regarded as an acceptable approximation of v(r) if
kkor>^=. 0or r> JL* .
* ^47T
(2.28)
18
Numerical Ocean Acoustic Propagation in Three
Dimensions
Property 1. The solution field v(r) of Eq. (2.12) is said to have Property 1 where condition (2.28) is satisfied for an arbitrary assigned 8. In terms of the acoustic frequency / , condition (2.28) requires the range r to satisfy . Co °* 7= _ .. (2.29) rr>r >f=rf = 8nfV6 Inequality is obtained by substituting ko = 2irf/co into condition (2.28), where r? is the minimum range for the far-field approximation to apply. As an example, suppose we give 8 = 0.01, which corresponds to differences between v(r) and v(r) being bounded by 1%. Then, as / increases from, say, 10 to 200 Hz, rt decreases from 60 to 3 m. An alternative mathematical expression for this example is kor > 2.5. By this we mean establishing a lower bound for kor in order that the far-field approximation is valid. This assists in approximately justifying Eqs. (2.23a) or (2.23b). Now let us return to the description of a second property. Since in this chapter we have focused on the basic mathematical development of the simplest parabolic approximation, the narrow angle equation (2.16), we continue to do so here. For simplicity, we write X ++ YY . . Z=X
(2.30)
An expression which represents y/1 + Z consistently with the narrow angle approximation is the linear approximation VT+Z
z
^S 11 + \^ zZ + 0 ( Z 2 ) . Li
(2.31)
As indicated, the right-hand side of (2.31) gives an approximation which is correct to first-order in Z. We recall that (2.22) does not hold exactly in the general case, but it holds approximately, then the factorization approximation Eq. (2.23a) or (2.23b) will be justifiable. That is, we must investigate the terms appearing on the right-hand sides of Eq. (2.20) and (2.21). Using (2.30) and defining an operator E, these terms are
d ^dr
ik0Q (-^VTTZ (Q-VTTZ
-z -
EU. VlTZ-^) = Eu. VTTZ—jg-r)u u = Eu. )'
(2.32)
Basic Mathematical Model Developments
19
Note that the right-hand sides of Eqs. (2.20) and (2.21) differ only by a minus sign. In view of Eq. (2.31), it follow from Eq. (2.32) that
(233
*-*(£*-*!)•• Eu
=
>
(2.33)
-i{d-rZ-Zd-r)U-
Using the definitions of the operators X, Y, and Z in Eqs. (2.18), (2.19), and (2.30), we find the leading term E has the form
v
■, < Q ,dn(r,9,z) dr
i
d2
knr* dd*
(2.34)
By arguments that are analogous to, but lengthier than, those used to derive condition (2.28), Siegmann et a/.6 showed that Eq. (2.34) is negligible compared with other terms retained in Eq. (2.17) provided
and
dn< r r 2 (r,0,2) -- 1\) d r
(2.35)
kfar 0r > kfan 0r{ ..
(2.36)
The equality in Eq. (2.36) follows from the definition of rf given in Eq. (2.20). These conditions motivate the following definition. P r o p e r t y 2. The solution field u{r,0,z) of Eq. (2.17) is said to have Property 2 where conditions (2.35) and (2.36) are satisfied for an arbitrary assigned 6. The linear approximation for \J\ + Z, Eq. (2.31), plus the satisfaction of Property 2 are sufficient to justify the approximations (2.23). Moreover, we observe that condition (2.28) is automatically satisfied by the stronger requirement (2.36). Hence, we have shown the following result: The far-field wave equation (2.2) and the operator wave equation, either (2.23a) or (2.23b), are approximately equivalent if the operator approximation (2.31) is applied and if the effect field possesses Property 2. Assuming the approximate equivalence noted above, we can thus deal with the operator wave equation, Eq. (2.23a), to identify a one-way outgoing wave equation, uTr = /l + (2.37) = iko(-l 2Jfc0(-l + + \y/l + X + Y )u ..
20
Numerical Ocean Acoustic Propagation in Three
Dimensions
Different formulations will result from Eq. (2.37) depending upon how the square root operator is treated. In this chapter, we use only Eq. (2.31) to treat the square root operator. This treatment gives the narrow angle equation. Wide angle developments will be presented in detail in the chapter to follow. Property 1 defines one range of validity for the far-field approximation via (2.29). Property 2 contributes two other restrictions, (2.35) and (2.36). Assuming slow variation of the index of refraction in the range variation, as expressed in Eq. (2.35), and for r > rf/\/£, the three-dimensional wave equation is appropriate for use, As range r increases to locations where (l/kQr2)(d2u/d92dO ) 2] is small and negligible, then the two-dimensional model can be applied. In this case, for N vertical planes at different azimuths 0, the computation can be performed separately in N sectors using the same two-dimensional model; it is equivalent to solving a "iVx 2D" problem as proposed by Perkins and Baer. 4 In summary, the transformation Eq. (2.3), first introduced in ocean acoustics propagation by Tappert, 2 modifies the Helmholtz Eq. (2.1) into another equation of elliptic type, Eq. (2.10), after a choice of k0 is made to separate u{r,0,z) u{r,8,z) and v(r). Then, applying a far-field approximation, k0 > 1, brings Eq. (2.10) into the far-field wave equation, Eq. (2.2). The dropping of the term urr in Eq. (2.2) is justified on the assumption that if the refraction change in ur over a wavelength is small, then \urr\ < \2ikQUr\. This development leads to Eq. (2.16) which is recognized as a "parabolic equation" in the ocean acoustic community. Strictly speaking, it is a partial differential equation of the complex parabolic type, similar to the Schrodinger equation. Keeping the name parabolic equation in mind, we choose to refer to the result of the entire development as a "parabolic equation approximation". It should be pointed out that the particular equation (2.16) is obtained through a linear approximation of the square root operator as specified in Eq. (2.31). Other approximations of the square root operator will lead to other equations, counterpart to Eq. (2.16), but these will not necessarily be of parabolic type. A clear example, to be discussed in the next chapter, is the Siegmann-Kriegsmann-Lee pseudopartial differential equation. In any case, regardless of the square root operator approximation, we choose to use the parabolic equation approximation terminology. The parabolic equation approximation is an effective tool for converting a large class of problems into a special class of problems which can then be solved by some efficient technique. However, the parabolic equation
nents Basic Mathematical Model Developments
21
approximation cannot be applied blindly. We must specify its theoretical limitations, from which a few interesting research problems arise naturally. In particular, the principal limitations of the parabolic equation approximation are (i) (ii) (iii) (iv)
far-field approximation, k$r > 1, index of refraction n(r, 6, z) varies slowly in range r, neglect of backscattering, square root operator approximation.
With respect to limitation (i), we note that the reference wave number fc0 isis involved. fco involved. ItIt isis clear clear that that aa different different choice choice of offco fcowill will affect affect the the solutions solutions of Eqs. (2.9) and (2.10). This problem has been studied by a number of researchers; recent results can be found in Refs. 7, 8, and 18. The available findings are not enough to fully resolve the issues for the scientific community. Consequently, we suggest: Proposed Problem 2.1. What is the most effective choice for fc0 and what is its influence? Among the many different ways that have been used include the selection of fco from the sound speed information, using an average sound speed, and using either a maximum sound or a minimum speed, and the selection of the source depth. Determination of the influence of the choice requires sensitivity studies. With respect to limitation (ii), one can ask whether it can be relaxed so as to handle n(r, 0, z) which varies rapidly in the range variable r. Relaxing this limitation can affect the mathematical modeling of various ocean environmental features as well as the numerical solutions of propagation problems. In the mathematical modeling category, the following problem can easily be proposed. Proposed Problem 2.2. Can a counterpart mathematical model of Eq. (2.2) be developed that permits a rapid varying of index of refraction in r? Concerning limitation (iii), it is clearly seen from one development in this chapter that, by dropping the term urr to obtain (2.15), the backscattering is ignored. Similarly, in the operator formalism, so as to deal with one-way outgoing wave propagation, the equation representing
22
Numerical Ocean Acoustic Propagation in Three
Dimensions
the incoming wave is deleted, thereby ignoring backscattering. Whichever approaches are applied to obtain a one-way outgoing wave equation, back scattering is ignored completely. A generalization of the outgoing model that we have discussed is to attack the far-field wave equation, Eq. (2.2), directly. Proposed Problem 2.3. Assuming the far-field approximation is valid, what are the differences in the methods of solution, and in the solutions themselves, for the Helmholtz equation, Eq. (2.1), and the far-field wave equation, Eq. (2.2)? Still another limitation, (iv), in the parabolic equation approximation concerns the consequences of handling the square root approximation in various ways. Readers are advised to consult published literature such as by Berkhout,9 who used the continued fractions to express the square root operator to third-order accuracy. Greene10 developed a first-order rational function approximation to examine the influence of the size of the propagation angle, which is a slight variation of Claerbout's.11 A comprehensive study using various techniques, such as high-order rational function approximations, Chebyshev approximation, polynomial approximation, Newman approximation, L 2 nonlinear least squares, L°° Chebyshev approximation, and CP Chebyshev-Pade,1 was conducted by Trefethen and Halpern.12'13 In Ref. 1, Lee and McDaniel considered the size of the propagation angle that could be handled. Their analysis showed that narrow angle implies a 10° half-section, depending upon the required accuracy in the order 10~ 2 . According to Tappert's development,2 a 16° half-sector is within the definition of "narrow angle". In the first-order rational approximation, various coefficients determine the size of the propagation angle, in the general category of "wide angle"; some refer to it as "high angle". This allows a model to handle energy propagation within a half-sector of 40°. But one distinction that has not been made is the border between "narrow" and "wide". However, in order to avoid confusion in practice, users are advised to employ a wide angle model. In practice, energy could penetrate and interact with the bottom; thus, a model to handle propagation angle wider than 40° is desirable. To date, the only contributions are the "very wide angle" models developed by St. Mary, Lee, Botseas, and Knightly.14"17 These are capable of handling a half-propagation angle up to 70°. The
Basic Mathematical Model Developments
23
relationship of the size of the propagation angle to various treatment of the square root operator is still uncertain. Proposed Problem 2.4. Prerequisite:
A comprehensive literature research is required to have a clear understanding of Refs. 9-14.
Homework:
Tabulate the size of the propagation angles related to the various treatments. An incomplete sample can be found in Ref. 1, p. 315.
References 1. D. Lee and S. T. McDaniel, Ocean Acoustic Propagation by Finite Difference Methods (Pergamon, Oxford, 1988). 2. R. N. Baer, "Propagation through a three-dimensional eddy including effects on an array," J. Acoust. Soc. Am. 69 (1981) 70-75. 3. J. S. Perkins and R. N. Baer, "An approximation to the three-dimensional parabolic-equation method for acoustic propagation," J. Acoust. Soc. Am. 72 (1982) 515-522. 4. F. D. Tappert, "The parabolic equation method," in Wave propagation and underwater acoustics, Lecture Notes in Physics, Vol. 70, eds. J. B. Keller and J. S. Papadakis (Springer, Berlin, 1977). 5. M. Abramowitz and L. Stegun, Hnadbook of Mathematical Functions (Dover, New York, 1964). 6. D. Lee and W. L. Siegmann, "A mathematical model for the threedimensional ocean sound propagation," J. Math. Model. 7 (1986) 143-162. 7. A. D. Pierce, "The natural reference wave number for parabolic approximations in ocean acoustics," in Computational Ocean Acoustics, eds. M. H. Schultz and D. Lee (Pergamon, Oxford, 1985) 831-841. 8. F. B. Jensen and G. Martinelli, "Accurate P E calculation for range-dependent environments based on CQ updates," J. Acoust. Soc. Am. 71 (1985) S23. 9. A. J. Berkhout, "Wave field extrapolation techniques in seismic migration," Geophys. 46 (1981) 1638-1656. 10. R. R. Greene, "High angle PE," in Norda Parabolic Equation Workshop, eds. J. A. David, D. White, and R. C. Cavanagh, NORDA Technical Note No. 143, 1981. 11. J. F. Claerbout, Fundamentals of Geophysical Data Processing with Applications to Petroleum Prospecting (McGraw-Hill, New York, 1976). 12. L. N. Trefethen and L. Halpern, "Well-posedness of one-way wave equations and absorbing boundary conditions," Math. Comp. 47 (1986) 421-435. 13. ibid. "Wide angle one-way wave equations" (to be published). 14. D. F. St. Mary, "Analysis of an implicit finite difference scheme for very wide angle underwater acoustic propagation," in Proc. 11th IMACS World
24
15. 16. 17. 18.
Numerical Ocean Acoustic Propagation in Three
Dimensions
Congress on System Simulation and Scientific Computation, Vol. 2, Oslo, Norway, 1985, 153-156. D. F. St. Mary, "Wide angle parabolic approximations in underwater acoustics," in Numerical Mathematics and Applications eds. R. Vichnevetsky and J. Vignes (North-Holland, Amsterdam, 1986). D. F. St. Mary, D. Lee, and G. Botseas, "A modified wide angle parabolic wave equation," J. Comp. Phys. 71 (1987) 304-315. G. H. Knightly, D. Lee, and D. F. St. Mary, "A high-order parabolic equation," J. Acoust. Soc. Am. 82 (1987) 580-587. A. D. Pierce and D. Lee, "The influence of the reference wave number in computational ocean acoustics," J. Comp. Acoust. 1 (1993) 77-90.
Chapter 3
A Pseudopartial Differential Equation
In the previous chapter, we discussed the development of a threedimensional parabolic equation (3DPE) for narrow vertical propagation angle applications. This 3DPE was obtained by using a linear approximation to the square root operator y/1 + X + Y. This approximation is valid for small \\X + Y\\, thus limiting it to narrow angle propagation. The ocean acoustic community refers to this 3DPE as the standard three-dimensional parabolic equation, originally introduced by Tappert. 1 Many underwater acousticians use a two-dimensional version of this equation, recognized as the standard narrow angle PE. This equation neglects strong range variations in sound speed, bottom topography, and source strength in the azimuthal direction normal to the vertical plane of sound propagation. These omissions enable acousticians the use of efficient algorithms to solve the standard narrow angle PE. In 1981, Baer 2 conducted studies of three-dimensional effects of sound propagation through mesoscale eddies and directivity effects of sonar arrays. Baer extended the split-step Fourier algorithm, used in two-dimensional computations, to numerically solve the standard 3DPE. Perkins and Baer 3 worked out an economical way to 25
26
Numerical Ocean Acoustic Propagation in Three
Dimensions
reduce the computation time by implementing an approximation method for solving the 3DPE. Their technique assumed that the acoustic field depends parametrically upon the azimuthal variable through the sound speed. Thus, the angular second derivative term in the5 ( l / r (l/r2)(d2u/d92) 3DPE is neglected, and the problem is solved two-dimensionally with success. Numerical results demonstrated situations where the Perkins and Baer approximation was appropriate. The standard 3DPE, introduced by Tappert, implemented numerically by Baer, and simplified by Perkins and Baer, is useful for relatively small angles of propagation. It gives a less accurate physical description for wider angles, which are germane to bottom interacting and shallow water propagation. We overcome this difficulty by introducing a three-dimensional wave equation with wide angle capability. In the development we present both the operator and the asymptotic derivations to justify the equation. The operator derivation was partly presented in the previous chapter, so to avoid repetition we begin at the point needed to derive the wide angle capability. 3.1. Siegmann—Kriegsmann—Lee Model Recall that the standard 3DPE takes the form i ur = = ^[n ^ V2(rAz) (Mr ,, 0, 1]« + £-*» JL«„ + (2.16) ur ±-u„ + ^^ uu2^e n e .. nr * )z) "- l]u+ 2k0 2k0r Neglecting the term (i/2kor2)ueo and regarding n(r,9,z) as azimuthally independent, the standard two-dimensional PE results, i.e.
ikp. (3.1) ^ [ ^ ( r , *) 2J^uzg .• rr = = z) -- l]u \)u + = --£-["?{?, -£-["?{?, + TjjTUzz (3.1) 2**' 2 ' Equation (2.16) has been exploited in calculating sound propagation through a mesoscale eddy by Baer. 2 If the last term in Eq. (2.16) is neglected but azimuthal dependence is retained in n(r,9, n(r,0, z), a simple PE is obtained for which a successful implementation has been demonstrated by Perkins and Baer. 3 This equation is useful specifically in the absence of horizontal diffraction on acoustic energy as, for example, with weak azimuthal sound speed variations and without azimuthal redirection of energy from boundary interactions. Finally, if all azimuthal dependence is neglected in Eq. (2.16), the standard two-dimensional PE, Eq. (3.1), results. As is well known, Eq. (2.16) and its simplifications are valid for narrow vertical angles of propagation. In order to obtain a three-dimensional wave equation appropriate for wide angles, we proceed as follows. w uu
A Pseudopartial Differential Equation
27
Recall the one-way outgoing wave equation (2.27): uTr -= ik yJl + X + Y )u .. ifc0(-l 0 (-l + Vl
(2.37)
The standard 3DPE, Eq. (2.16), can be obtained by expanding the square root in Eq. (2.37) in a Taylor series and retaining only the linear term in X and Y. Rather than a linear polynomial approximation, Siegmann, Kriegsmann, and Lee (SKL) 4 use a rational approximation, Siegmann, Kriegsmann, and Lee (SKL) 4 used a rational approximation, to the square root operator in Eq. (2.37), i.e.
<***** «£=££•
(«) (3.2)
l + q1X + q2Y
where p i , p2,
/
t
{- l- 1 1+
, 1+P1X+P2Y\
1+ qiX +H
q2Y)
U
(3-3)
-
Note that when qx = q2 = 0, Eq. (3.3) reduces to the standard 3DPE, Eq. (2.16), for the values p\ = p2 = 1/2, which are those in the linear Taylor series expansion in Z. For the two-dimensional problem Y = 0, a number of rational function approximations have been discussed.5"7 In particular, the choices pi = 3/4 and qi = 1/4 for the two-dimensional case p2 = q2 = 0 have been suggested by Claerbout 8 for wide angle propagation, vertically estimated to be approximately < 40° from the horizontal. These values are those necessary for an approximation to X and Y in Eq. (3.3) correct to quadratic terms in X. In analogy we can make the same choice for the three-dimensional case, pi = p2 = 3/4 and q\ = q2 = 1/4; these values give a rational function approximation to (3.2) correct to second order in the operators X and Y. Based on that fact, SKL uses them to specify the following three-dimensional wide angle parabolic equation:
(-»% *ZluTlV (34)
wr = ifco - 1 +
3 _ 3_^_ 3 3 3|(na222 _- 1) •+ J_^l d^22 >\\ JLi*L 2 + 2 2 ' 4A; 0*2 4(Jb r ) dd2 - ! < 1
+ \> n
1 +
, ,
1
+ +
1
+
4 (n
4( 4{U 4
(n
+
1!) + >+
'
^
1 flz 4 4(jfc2r2) <902 a^ + 4 ( ^222) QQ2 ) 22 + 4k22 QZ 1
i'-l)-
+
cr
4k dz 4k2 dz2
4A;2 a z
+
4(Jb r ) dff» ) 4(fc2r2) flg» ]
2 + 4(A.2r2)
d92
)
U. .
(3-4)
28
Numerical Ocean Acoustic Propagation in Three
Dimensions
The terminology is deceptive because Eq. (3.4) is not a parabolic equation. In fact, it is a pseudopartial differential equation. As the narrow angle parabolic equation is a special case and because of our accustomed terminology, we refer to it as a parabolic equation. Note that in the form given by (3.4), additional specification of the interpretation of the operators on the right side of (3.4) is necessary. Referring to the discussion of Properties 1 and 2 in the previous chapter on the standard 3DPE, we need to consider the extension of these two properties for the SKL equation. Property 1 applies to the three-dimensional SKL equation regardless of whether the square root approximation is made by Eq. (2.31) or Eq. (3.2). However, consideration of approximation (3.2) is needed to justify satisfaction of Property 2. With the SKL choice of coefficients (pi = pP22 = 3/4 and qi = q2 = 1/4), Eq. (3.2) can be written as
l + \Z
Vi + x + Y =VT+z VTTXTY =VTTZ == i i±-lt|i-f. ■. 1i + + 4Z jZ
(3.5) (3.5)
A primary advantage of this approximation is that it is correct to the second order of Z. This can be seen by adopting a natural interpretation of the operators on the right side of (3.5), i.e. -i
V T T Z 2i(l s (l + + ^z\ ±z\ VT+Z
■\i
2 3 (l + + \z)= \ z \ * 11 + \z \ z -X\z -Z2+ ( Z 3 )) ) .. (3.6) (l + 00(Z (3.6)
Note that
d4
Z 22 = [ n 2 ( r , M - I] 2 + jtj-s Z
dz*
+ +
2 2 [n*(r,d,z)-l](d [n (r,e,z)-l] I] (d2 kl \dz2
+ + (
d*
^ ~ j
+
2 d4 j 2p j ^ i
k$r
cd?22\\ 1 & 2 2 dd d62j) fcgrklr
w(£^(^^)-1] + ^ ^ [ r a 2 ( ^ ^ ) - 1 ] ) • (3-7)
Effects of terms in Eq. (3.7) axe are actually included in Eq. (3.5). Even though Eq. (3.4) explicitly contains no fourth-order z and 96 derivatives, effects of fourth-order derivatives are in some sense incorporated properly in Eq. (3.4). In a portion of Chap. 2 on basic mathematical model development, we analyzed Property 2 using the approximation \\Zl /l + Z — = 1 + (1/2)Z.
A Pseudopartial
Differential Equation Equation
29
Now we extend the discussion of that property for the rational function approximation, formula (3.5), while exploiting the relationship expressed by the approximation in (3.6). The condition of Eq. (2.22), -§-y/l + Z u = VTTz Jfpu, holds if J^ and \f\T~Z commute. Since this condition does not hold in general, again we need to examine Eq. (2.32) below:
z
d ik0 (— Vl + Z - VTTZ Eu. (^-y/TTZ VT+Z —)u ^-Ju = Eu.
or
(2.32)
In view of the rational approximation (3.6), it follows from the above equation that Eu S E{1)u + E^u ,
E<1,
(3.8) (3.8)
=*(lz-4)' 2 V*
drj
8 \dr drj *»-${**-*£)■ *»-${**-*£)■
w
(3.9)
(3io (3.10)
»
-z
If y/TTZ S 1 + \Z + 0 ( Z 2 ) , EW EM is zero, which is the case discussed in the previous chapter (with E^ = E). Consequently, the leading term E of (3.8) has the exact form
*.*■>_«*,,,,,)£-££. just as in Eq. (2.34) of the previous section. An analogous but lengthy expression can be developed for the term E^2\ as given by Eq. (3.10), which involves higher partial derivatives. Since such derivatives are typically small, and since the conditions corresponding to (2.35) and (2.36) become lengthier, we focus on the leading term of E = E^\ Then, the analysis that led to (2.35) and (2.36) applies here as well, and we use those conditions for specifying a corresponding Property 2 for (3.4). 3.2. A P r e c o n d i t i o n i n g Solution The Yale University sparse matrix technique is an iterative scheme for solving large sparse systems of linear equations, such as those that arise at each step in the numerical integration of the stiff system of ordinary differential equations resulting from the application of the finite difference
30
Numerical Ocean Acoustic Propagation in Three
Dimensions
discretization to the 3D parabolic wave equation. We discuss the procedure of a special technique, the Conjugate Gradient method for Normal Equations (CGNE), together with its application to 3DPEs. Numerical procedures to solve the 3D pseudopartial differential equations in this chapter result in requirement for solving large sparse systems of equations. Such systems, if solved by direct methods, will face memory storage problems; thus, only limited size problems can be solved within the capacity of modern computers. Even if the storage shortage can be overcome, the computation time required will become very lengthy and expensive. This is where an indirect, iterative method becomes advantageous. At the time this chapter's wave equation was developed (1984), a number of indirect methods were known for solving large sparse system of equations, and a notably efficient one is the Yale sparse technique. In order to set up the 3D wide angle P E (3.4) in a form solvable by this technique, we next discuss the application of an implicit finite difference scheme to formulate (3.4) into a finite difference equation. Numerical solution of this implicit finite difference equation is carried out by the convergent Crank-Nicolson scheme. To support the validity of the solution method, two examples are included: one demonstrates a simple exact solution test, and the other exhibits an application considered previously by others. A linear system of the form Ax Ax = = f f,,
(3.33)
where A is a square, nonsingular matrix of order iV, and x and / are vectors, can be solved by two classes of methods, either direct or iterative (indirect). All direct methods employ some form of the Gaussian elimination procedure, which is suitable for dense systems but has limited usefulness for solving large sparse systems, because excessive memory storage is required for large N. Such large sparse matrices arise from the Method Of Lines (MOL) discretization of partial differential equations. There are many known techniques to solve sparse systems, and an overview of recent developments can be found in Ref. 10. Among these, one particular effective method applicable to solve our 3D wide angle underwater acoustic wave equation (3.4) is the Yale University sparse matrix technique package. One of the sparse techniques contained in the package, the Conjugate Gradient (CG) method 10 has been developed to solve symmetric, positive-definite systems iteratively with high efficiency. In practice, such iterative methods require an estimate of some parameter (e.g. the extreme eigenvalues of the matrix A) in order to appraise whether convergence will be rapid. Without
A Pseudopartial
Differential Equation
31
an estimate, a user has no idea how fast the applicable iterative technique converges. The CG method minimizes a certain norm at each step and is in a sense optimal over a class of iterative methods. Moreover, whenever the system matrix A is sparse, the operations are inexpensive and easy to implement. All those properties make the CG method a strong candidate for a robust, rapidly convergent iterative procedure to solve the 3D wide angle parabolic equation. In actual practice, the CG method is effective when applied to symmetric, positive-definite system matrices. In fact, the partial differential equation governing ocean acoustic propagation with wide angle capability results not in a positive system, but in a complex system. Thus, the CG method is inappropriate unless an effective preconditioning technique is applied. These preconditioning techniques replace the system (3.33) by an equivalent system Q-xAx = Q Q-'Ax Q~"lf1 / , (3.34) where Q~x is some type of approximation of A~l. The objective is to pick Q~l so that Eq. (3.34) can be solved very economically, in particular so that the need for actually performing operation of Q~XA explicitly is avoided and at the same time the condition number of A is improved. Since our resulting MOL discretization of the 3D wide angle PE leads to a system matrix A that is neither real nor positive-definite, we use A* for Q~l as the preconditioning matrix, where A* is the complex conjugate of A. We then extend the technique to handle a complex, nonsymmetric system. The procedure we desire here is thus an application of the CG method to the normal equation (3.35) A*Ax A* Ax = A*f A*Ax A*f . In theory, when the CG method is applied to solve system (3.35), the iterate X{ minimizes the residual. 10 One member of the CG family that can be used to solve system (3.35) is known as the Craig's method 10 and was proposed by Hestenes. 11 In this implementation, the iterate Xi minimizes the residual norm. This is the method we used for our underwater application, with further extension to complex arithmetic.
32
Numerical Ocean Acoustic Propagation in Three
Dimensions
The computation of Craig's method involves five steps, i.e. a>i = (ri,ri)/(pi,pi)Pi) , = Xi + + CliPi CliPi ,, #1+1 =Xi
r%+i =ri-; — adiApi , bbi{ = (r {ri+u ri)l{rUTi) i+uri)/(ri,ri)
Ti)
,
hpi , 6iPi Pi+i = ^.*n-hi A*ri+i 4+ biPi where r0 = f — Ax0, Xo is chosen arbitrarily, and po = A*r 0 . The above loop is repeated starting with i = 0 until convergence. The work per loop requires 5N multiplications plus two matrix vector products. Only 4AT storage locations are required for the vectors a?», r^, r», Pi, pi, and Ap{. In summary, when attempting to solve (3.33), we apply the preconditioning technique to conceptually transform system (3.33) into system (3.35). Then, Craig's method is used to solve system (3.35). It is natural to ask about the need for explicit computation of A* A. However, as expressed by (3.35), A* A need not be carried out explicitly, and this is an advantage of Craig's method. As we have noticed in the literature, 12 there exist two different types of three-dimensional wave equations as a result of the PE approximation. One is the three-dimensional parabolic wave equation (the standard 3DPE) originally used by Tappert 1 to derive the standard two-dimensional PE. Solution to the 3DPE has been developed by Baer and Perkins 2,3 using the split-step algorithm. The second type is the 3D wide angle partial differential equation, developed by Siegmann, Kriegsmann, and Lee in Sec. 1. (We refer to this equation as the 3D wide angle PE.) We chose to concentrate on the solution to the 3D wide angle PE because the standard 3DPE is a special case. We want to remark why we are motivated to solve the 3D wide angle PE instead of the 3DPE; in particular the application of the Yale sparse technique. In this event, the vertical angle of propagation is roughly larger than 15°, due to the irregular nonzero boundary conditions, or other environmental properties where the Fast Fourier transform (FFT) is not easily applicable (this is why a general purpose solution is needed). Now, consider the 3D wide angle PE in a general form, i.e.
d
d_ - u = dr
I
11+Pi +Pl n2(r
(-—iko .*u ++^„,ikoo - - (,
'^-
V
{
\V
1 +
^ ). 1 & i
a2 > ° (fc 0 r) dfl 2 uu ,, r ~ W l & +9a q2+q2
+ p2
i
wl^ 2
1l ++ qigi nirAz) 1 n{rAz) + 1+ {-r A z ) { n 21+9i rfde^j 7 - l + Kr\ ¥ k\&)" 0d^) (k0{k^Wj (3.36) (3.36)
- j^w)
jk^wJ
A Pseudopartial
33
Differential Equation
where n(r,8,z) is the index of refraction andfcois the reference wave number. Note that when p1 = p2 = 1/2 and q\ gi = = q2 = 0, Eq. (3.36) reduces 1 exactly to the 3DPE. Using the split-step algorithm to solve Eq. (3.36) is not easily applicable. One can easily see that alternate general purpose technique is needed to solve Eq. (3.36). One approach that was considered was to multiply both sides of Eq. (3.36) by the operator in the denominator of the right-hand side of Eq. (3.36). The following was obtained:
I",
1 d\ l.JL\ 2
( 2, a ^ -,
2 h(n (r,0,z)1 + 01
+
kldz>)
92
2 1 a d2 1] dd_ u
ary 89* dr
2 2 2 = iko[(Pi-qi)([n (rAz)-l} + ^^ ^ )j = t*b [(Pi ~ ft) ([* (r,M) - I] 2 +
,
d2 d]
1
+ {p
*-q2)(k^Wd-r\U-
(3.37) (3 37)
u .
'
Equation (3.37) is not a PE, but a third-order partial differential equation known as the pseudopartial differential equation. (A reminder to the reader here is that Eq. (3.36) is called the 3D wide angle PE because the 3DPE is a special case and the terminology is a very familiar term.) In solving Eq. (3.37), St. Mary and Lee 13 attempted to seek a finite difference solution. Since their analyses indicated a too restrictive stability condition, we attempted a similar implicit finite difference scheme as was used for the 2D wide angle PE because of its favorable unconditional stability. The solution by means of an iterative technique is the main topic of this section, and its efficient solution by means of Craig's technique will be the main result. To deal with the solution of Eq. (3.36), we must first discuss how to convert this evaluation into finite difference form in order to apply Craig's method. Before this formulation, we have a few definitions to state. Let m indicate the discretization index in the z-direction and Az = h indicate the z-increment. Similarly, £ is used to indicate the index in the ^-direction; A0 is the ^-increment; k is used to indicate the range step Ar. When the integer n is used as a superscript, it indicates the range level. Also, for brevity, use the definitions X = n2(r,e,z)-l ) - l - + ^ - ^
kldz*
and
Y Y Y
d2
l
= T^&2
~ d62 ' = (k (&?&■ 0r)
(2.18)
19) (2.19) (2(219) --
34
Numerical Ocean Acoustic Propagation in Three
Dimensions
Then (3.36) can be expressed in a short expression using the above definitions, i.e. d_ ( U dr -{ V dr Write
1+PiX 1+PlX+P2Y + paY^ it.lit
lko lklk lk0 +
)
(3.38)
U —T + °l°l \ ++qiqiXX-— q2Y) ++q,Y)
(/ .. , . Cu Cu== tko+lko iko+
., l+ l+PlPlXX + pp2Y\ 2Y\ X + ^l ++ qiqi X + q2q2Y)Y)UU--
<3(3.39) 39
* - ( {-*+*;:£:£)■■ {-
l
->
so that Eq. (3.38) (which is (3.36) using (2.18) and (2.19)) can be written in a short operator form, i.e. d . —uu = = £u Cu . — or or
(3.40)
Numerical solution to Eq. (3.40) can be expressed as Numerical solution to Eq. (3.40) can be expressed as n+1 un+l =ekC un , kC n u
=
e
u
(3.41) )
(3
?
41
where k = Ar. Using a half-half splitting of exponential and setting up the solution to Eq. (3.41) by the implicit finite difference Crank-Nicolson scheme, we find an implicit finite difference discretization to Eq. (3.36) as
n+l (i hc\: uun n.. (l - hcj hzC\: u u n + 1 == ((1 l ++\kc\ )
(3.42)
)
Using the definition of £, X and y , Eq. (3.42) becomes
^ [l [l ++ + ft ft(„>(r,*,*)-l (nHr,6,z)-l (f{rAz) - 1++ ^ ^ ))) + +92J^J^^\ 9 2 ^ ^ ^ ] «> In *+n+11 ft 2
- ^ikokUp! -ifcofcUpx ^ikokUpi. -qi) -qi (n)2(r,0,z) (n (r,0,z) - 1 + -pg-^j 1+ p^j) ^ikokUpi-qi)
+iP2 + q2) q2))q + qp2
1
r) 1
r) 1 un+1 un+1 un+1 un+1
^^-(- *-wrTwm WrTwm wrwm * WTWw\ )
2,
= [i +ft(„»M,*)-i+ li ^a ) + f c ^ ^ ] « 22 ik k k n 2(r,0,z)-l + k\(pi-qi) + -ik (Pi-«i) (r,0,z)-l+ + 22ikoQ° (Pi ~ 9 i ) (\n (r'6''z)~1
++{P2 +
un
^-^wM q2) q2) iP2
un ~ ~kj^w\ ^d¥\- un-
+ ^2^2 ^ ^ tf-Qj,J 2 "g^-^j 2 )
+
(3(3.43) 43)
-
A Pseudopartial
Differential Equation
Using central differences for both operators -^ 68 = A0, we simplify to obtain l"i ii. l"i I"i
// 22
1 + 9l(n
l
+
qi) +
ipi 2
%h jfco/i
11
11
-
*«« 77 77/ 7 //
0
1
* * /
(ft ft)
11
2
2
N \
1 \ -n+l n+1
» fc (, _ , 1 11\\ {P2 q2 2 {P2 '(r (r + 22 ifc '(r ++ k) ifcofc0 ^0 **' k? 8* P ))
11
nn+ +i Um Ume+1 e+1 Um e+1
'''
N
i k ,,
2
U ( r + *) <*
2 ifco ^
\_J__J_ \ \_J___1\ \_J___1\
n+l «+l «+l * (r + *)»«Jjtt^-1
2
,
fc( = ( l +
+
+
(^^ (Q\ (Q\
+
\
2
- 1)
-
99 ll ))
- % ^
fc, ii k , fc,
2fco"
(( PP 22
-
99 22 ))
)
<< ££
„, vV 11 \\ 714-1 n+ii N (Pl 9l) U
-
i fck ,
fe
i k
)
^J ^
.^.i v,v 1 \ .n+1 .n+i
U*~2fa ~* Fj , »-M
/ft 1 1 + + +
)(n 9 l )(n
A l l
(( PP ll
(Q\ ( Q\ \1 1 (Q\
^ ~
m+1,£
)
U^"2^ " wJ*-M
(Q2 ,, (Q2
ii\\
1}
\ ? y n+1 x,v !1 ^\ nn ++ i1 n+l U
-Qi h
, / g2 ft 1 1 ' + 22 + 2 2 + 1,ifc (r + + ^* 1,fc fc)2 { kl00 (r + fc)2 fc) ^
- % ^
w w 22
1 91
% VTwh * ~ *>]<#
*t« fc ** /, Pi 2fc0
,k h
+
^2 ^2 ?2
{p
-
2 2
^1
22
^1 # i !! #1
and J^- in Eq. (3.43),
-^-^^"^FTfcF^ ^ ^ -
., fQi / g i !1
+
22
ii \\
35
fc
,> 11 11 \\ ,
(P2 ?2 2 U +1 u U[¥ ^ 22^0{P2 ^ U ff0^P ^ ++ 2T ^~q2)""W) « W^ jJUm -.^ 'e+1
(Q2 / (t foe 1ll l 1
i fc k ,
x
l1 1 \\
_
+ f e ( ,P 2 9)2 ) + ((|^^ ^ + 2 +^2^ - -* H^^j<— ^ j ^ - 1 -
fl
^x /« ,« ,„x ^x
(3.44) ( 3 44) (3 -44)
-
Equation (3.44) leads to a large, sparse system that we want to solve efficiently. Let us introduce some abbreviated symbols to simplify the coefficients in Eq. (3.44).
36
Numerical Ocean Acoustic Propagation in Three
Dimensions
Define the operators P m,e=[l /uw,> P + qi(n u
2qi X
2g2 1 *^ -1)-^---^—^-)
k$ h*
-il-k k(p! -qi)(n -qy 2 2 - 1 ) -il-hokip! 02*o*(Pi - Mil-kokip! -tfi)(rc - M 2*o*(Pi -tfiX™ 2 - 1 )
fc{Pl1 qi)
{P2iP2q2) q2) -hh0h{pi--qi)-V -hvh? - ~)' )' -V J7TW 0 n0 = 9i 1 .1 p*i , 9 i ), 1 n ^-W 9i 1 *2k,vh?> 1 fcg^¥.12fco" -h?2k- -- - ^' h?> ¥ -h?0^ ^=_9 (7TW (q27 T ^ ^ '' R ~ I f ( 7 T W " 2i£ {P2 Q = = Q = Q
0
p
ft)
J l 0
Qqi)qi) l (pi {pi{pi 0 0
2 2
%
VTW* ~ '2 2ft V01 2g~ 1>(7TW P+ ~ kj L w « 2 ,x 1\ ^ = ( l + 9i(n - l ) - ^ - - - - ^2 - - _ j
'
+ + ii\ikf --knk(v-i A ;( 0pf ci ( p—-ig-ai)(n gi )i )( (nn22-- l ) W
_ _ D+
R
*fc11
^^
( p( pi i_ 99ll))
ib:^
gga2 1 1
= ¥
0
^
-
fell i
l l
A
( (pP22 gg22 )) A
- f c : ^ ^ -- J'' -^^^
.11 * , 1 1 + 2k l iP2 q2) 0 2T0 - w-
(3.45)
Wee can can see see Eq. H/q. (3.45) ^o.^o; in in aa simpler simpler form, iorm, i.e. i.e. RP < / P> <8„,n+l + QKt+u P^Ktjt QKSit Qum+t\\e£ ++■R<3+i Q<\\* ++ Q< P
m + Q* = = Pm,A,l P£s<,e ■+ Q*< Q'<+i,t +■Q Q*<-i,e ++ R+ <-u +i,t R+<,e <,e+i +i
R+u ++ R+<,e-i m,t-i>,
(3.46)
where Q* is the complex conjugate of Q. The quantities P m ^ and P + € depend upon the variation in r, 0, and 2;. 2. The Q matrix is constant in all three spatial variables; R and P + are dependent on the range variable only. For illustrative purposes, we use a simple example to display Eq. (3.46) in a matrix form. In general, m = 1,2,... , M and £ = 1,2,... , L. Note that m = 0 indicates the surface boundary, and m = M + 1 indicates the bottom boundary. The values £ = 0 and £ = L + 1 are discussed below. We start with assigning m = 1,2,3,4 and I ^ = 1,2,3 at the initial range level n and march to the next range n + 1. In this example, L = 3 and £ = 1,2,3 mean that there are three sectors, as shown in Fig. 3.1. The computation involves the indexes £ — = 0 and £ = 4. Since the index is
A Pseudopartial
Differential
37
Equation
Fig. 3.1. Azimuthal sectors.
periodic with a period L = 3, then £ should be regarded as £ = £ (mod 3). Therefore, £ = 0 is the same as £ = 3, and £ = 4 is the same as £ = 1, as also shown in Fig. 3.1. Now we indicate one attempt to put Eq. (3.46) in matrix form using boundary conditions. Using the convention £ — £ (mod 3), we construct a matrix in a general form making use of the periodic boundary condition in Q. We find the system for the 12 variables umt£ as follows: r\Pl,l
Pl,l 0
0
0
P2,i
0
0 P2,i 0
0
0
0
O
0 P3,i
0
0
O
O
P4,i
O
0 0
0
0
0 P 4 ,) i 0
\ fl R
00
00
\
R
0
0
R
0
0
0
0
H
O
O
f
0
H H
0 0
00
O
0
i
0
O
0
f
l
O
0
O
0
P2,2 00 P ,2 00
00
0
0
0 P3,2 0
0
R
0
0
0 0
O
0
O
R
O
0
O
0 0
H
00
H
O
00
f
R
R R
0
0
O
O
O
O O O0 0
f
l
O
O
O
f
l
O
0 0
00 0
R 0 0
0
00
Pi,3 0
00
O
O
O
Pi,3 Pi,3 0 0
O
0
0
l
O
0
0 0
O
0
°
O
O
H
O
O
f
0
0
°°
00
°°
0
R
R R
0
R 0
0 0
0 P22,3 ,3 0
H 0 0
0
0 0
P3,3 0
II Q 0,1
I Qu5il
**1,2
Quo,2
u« 2 , 2
u
4,2
uu44, ) 22
u
+11 i-inni+n+1
°° I Q«5,l
u 4 >, i1
II II w«1,2 l,2
\
QUuo,i °°
2,2 2,2 "3,2 I «3,2 °° II II «3,2
0
rr
"3,1 u 3 >, i1 u 4,l
0
0
00
n+ 1 nn in ++111
"2,1 "2,1
l
00
u
I II «il,, il
0 - R j
P2,3 0
O
i| pr
°
O H O
R
P4,2 00 P ,2 00
O
0
0
00
O O O O O O O ff l l O O O O O O f Hl O
O O [[ o_ [ _
O
0 P4,2 0
00 l
0
0
0 PP33>,22 0 0 0
O
f
0
0 f Rl O 0 O O
0
00
R
00
O
H
0 P2,2 0
00
O
R
00
*
R
O
0
O 0 f Rl O 0 0
J
0
O
0
R R
l
O
f
R
0
0 Pi,2 0
00
00
0
00 Pi,2 Pi,2 00
0
R
0 0
0
0
*
0 . RR 00
0 P3,i 0
O O O
i
I
l,3
ui, u i , 33
I U2 ',33 I u ,3 u U3 I uu ',,3 2 2
O O O O O 0 3 ff l l O O O O O O f Hl O P33,, 33 0 3 33 O O 0O 0H H O 0 O0 O0 )3J LLuU44,3 > 3 JJ 0 0J il O l 0 PP 4,3j 0 0 i l 0 0 0 H 0 0 0 P44 ,3j L u4,3 J
_l_
, ,
II Quo,2 Q u 0,2 °
° ° ° ° °
—
I
Q**5,2
Q*5,2 <5«5,2
Q«0,3 I
Q«0,3 Qt*0,3
I °°° °°° I 3
u L ^^^S' L 5.3 JJ L ^ u 5.3 J
__ __
38
Numerical Ocean Acoustic Propagation in Three
Dimensions
[>+! !TP+J > + ! oo oo oo ff ll + + o o o o o o ff ll + + o o o o o o ll [[ uu ii ,, !! ]] 77 11 p+,_ oo P + ! oo oo oo p fl+ , + oo oo oo ff ll + +o o oo ii ll U21 P+! op,+ U2fl U2fl 0 0
P+ 2 0 0 P+j 0
fl+ fl+ o0 + R+ 0 R 0
0
0 P+x
0
0O fi li ++ 00
u3tl
0
+
0
0
0
fl+
n44, i U
0o
0o
o ii ll
uu11)2 )2
0o
o i I l I tt u22,2 ,2 O
0
0
R+ R
+
0o R R+ + °0
/*+ 0o R+
R+
0
0
0
0
0
0
fl+
0
0
0
O f l + 0 0 00 0 f fl+ O l + 00
0
0 f fl+ l + 00
P ++22 0° 0° o0 P 0o P p+ 0 °0 2+2
o0 0
fl+
L 0
0
0
P+2 0 P+2
0
0
0 P+2
+ R+
0
0
+ 0O f Rl + 0 0 00 00 R+ R+
O Jf ll + 0
0
0
R+ 0 0
I
Q*«0,2
_i_ I
°
u 3 ti 2
//"} o 47^ A7\
0
u4)2
Q*«5,2 Q*«0,3
0 P 22 + 33 0 0 00 00 P+3 P+3 00
"2,3 t*2,3 "3,3 w3,3
0
fl+
o Q*t*5,l
ui,3
0 R+ 0
0 0
o i l
I
0
0 P+3 0 00
0
n ("Q*«o,il ("Q*«o,iln °°
II
0 P P+^J ^ J LU4'3 J
° 00
II
L^* U 5 ' 3 J
We can now extend the illustration above to the case of arbitrary M and L. In general, the large sparse system to be solved is in the form Aun+1
= Bun + v%+1 + + uS ,
(3.48)
where UQ+1 contains surface and bottom boundary information at the advanced range level and UQ contains surface and bottom boundary information at the present range level. The A and B matrices both possess the format [Ti ii nn [Ti D D 00 .... .. oo oo D T D ... 0 0 0 2 D T2 D ... 0 0 0 00 D 00 00 00 D T T33 .. .. .. (3.49) • . 0 0 Li?
0 0 0
0 0 0
... ... ...
Tn_2 D 0
D T n _i D
0 D Tn\
All the block matrices (T, D and R) are of the same order M x M. Each T matrix is tridiagonal, whereas both off-diagonal block matrices D and R are diagonal matrices. The entire A and B matrices are 7-diagonal with the symmetry property A = AT and B — BT. The right-hand side of Eq. (3.48) can be carried out by one matrix vector operation and two vector additions. Equation (3.48) is a large, sparse system, which we want to solve by taking advantage of the Yale sparse technique, Craig's method. Note that when we consider wave propagation around a complete 360°, then we are dealing with a system where A and B are of the form (3.49), i.e. a 7-diagonal matrix. If we consider that the wave propagates only in an
A Pseudopartial
Differential Equation
39
azimuthal sector, then the periodic boundary condition for the azimuthal plane is absent, and we then solve system (3.48) where A and B are in the following simpler form: rTj D 0 ... [Ti J) \ D T \D T22 D ... ... ... 0 D T3 ... 0 0 L0
0 0 0
0 0 0
0 0 0 0
0 0 0 0
] 01 0 0 0
: • . . . Tn_2 D 0 . . . D T n _ i! D D ... 0 D Tn\
(3.50) (3.50)
These now have the form of 5-diagonal matrices. Further, if we consider wave propagation only in a vertical plane, a two-dimensional case results. Then we deal with the system (3.48) where A and B are tridiagonal matrices, i.e. of the form ["Ti TTi 0 0
o0 o0
LO Lo
0 0 ... T2 0 . . . 0 T33 .... .. :
0 0 0
0 0 0 0 ... ...
0 0
0 0 0
Rl 0 0
0 .. T 0 0 o 0 o .... r„_ o o n _22 0 0 .. 0 _i o 0 o o .... o T r nn_i
.
(3.51) (3.51)
0 0 T Tnn\
It is important to note that when p\ px = p2 = 1/2 and q1 = q2 = 0, the system (3.46) reduces to the 3DPE. The Yale sparse technique (Craig's method) was implemented on a VAX 11/780 computer to solve Eq. (3.38) using the system of equations expressed by Eq. (3.46). We used a known exact solution as a check for accuracy of the implementation. To describe the exact solution, we use the formulation of Eq. (3.37). We seek a solution to Eq. (3.37) in the form im6 u(r, 6, z) = sm{Slz)eirne <j>{0) (j)(6) ..
(3.52)
Substituting Eq. (3.52) into Eq. (3.37), we find
[[ll++ g i ( [ n ftV([„» A zM) -,*)-l]-^)-^]«r l]-J)-^]Wr
*L*L- ak^)-i]4)-^ik. k^)-i]4)-^il.
([nV,)-l]4)-^^. = =* L - ^ g ft) L
V
«o /
*o
r j
(3 53)
40
Numerical Ocean Acoustic Propagation in Three
Dimensions
We select n2{r,0, z) — 1 — p - = 0 for computational simplicity. Since k = kon(r, 0, z) = u/c, then it follows that rr
k03=—
(-)
9 2
-ft
" -1I/2 I1/2
2
(3.54)
.
Equation (3.53) can be simplified using the ko defined by Eq. (3.54) to give 2 2 2 d _fikfiko(p d fik /(k0r) /(k\ 0r)2\ x x _ 0(p 22 - q2)m 0(p 2-q2)m 2 2 2 /(r) Tr -~ ) *' ' ^* '' Tr = { ll-q - ?22mm/(k V0(r)V ) * = "~~llf{r)
(3.55) (3 55)
* ^
which is a first-order ordinary differential equation. The solution to Eq. (3.55) can readily be expressed in the form i f< T)dr f == Ae Ae^ The effort needed to find <j)(r) u(r u(ro,0,z) ,0,z) o
is the evaluation of Jf(r)dr. iTO iTn0m V(ro) = sin(ftz)e sm(nz)e
We use (3.57) (3.57)
as the initial field, as the initial field, ime m(r) = 0 3 58 u(r,e,z ) = sin(Q,zo)e (3.58) u(r, )e i(r) = 0 im0(r) u(r, 0, zB) = sm(Qz (3.59) B)e (/>(r) = 0 for the bottom boundary condition. These boundary conditions require for the bottom boundary condition. These boundary conditions require CIZQ = 0, ilzB = an integer multiple of IT . CIZQ = 0, ilzB = an integer multiple of IT . The initial range 7*0 is selected to start at 50 m so that the far-field approximation is valid. The azimuthal plane is divided into 10 sectors of 36° each. Since there are 10 sectors and we partition the depth into 199 increments, then we solve a system of equations of the size 1990 x 1990, dealing with a 7-diagonal matrix. The results presented below are at the boundary between two adjacent sectors. Not only do we compare the actual computed numerical complex values of the pressure field with the exact solution, but with the decibel values as well.
Case 1: Narrow Angle Propagation (pi = P2 = 1/2, qi = #2 = 0) An evaluation of Jf(r)dr gives -m2/(2k0r).or). This produces the single mode solution 2 i 1-* 2 (3.60) 0(r) (j>{r)= =AeAet^ ^ . . (3.60)
A Pseudopartial
Differential
41
Equation
Table 3.1 describes the results. Each of the first rows indicates the completed values, and each of the second rows indicates the exact solution. The results are taken at the boundary between the third and fourth sectors at 108° and at a range of 50.4 m. Table 3.1. Results of narrow angle propagation.
/
Z (m)
LOSS (dB)
u(I)
3 3
30.00 30.00
12.636 12.636
(0.18834E+00 (0.18886E+00
-0.13793E+00) -0.13722E-I-00)
6 6
60.00 60.00
6.859 6.859
(0.36627E+00 (0.36729EH-00
-0.26824E+00) -0.26685E+00)
9 9
90.00 90.00
3.749 3.749
(0.52397E+00 (0.52541E+00
-0.38372E+00) -0.38174E+00)
12 12
120.00 120.00
1.841 1.841
(0.65270E+00 (0.65451E+00
-0.47800E4-00) -0.47553E+00)
15 15
150.00 150.00
0.688 0.688
(0.74537E+00 (0.74743E+00
-0.54587E+00) -0.54304E+00)
18 18
180.00 180.00
0.108 0.108
(0.79685E+00 (0.79906E+00
-0.58357E+00) -0.58055E-f00)
Imaginary
Real
Case 2: Wide Angle Propagation (pi = p2 = 3/4, ^i = q2 = 1/4) An evaluation of / f(r)dr gives the solution • rn(po-qo)
<j)(r) =Ae Ae~l (j>(r) =
%
2<
4
*2
* n
knr — mqo
in 2 Hr+mq
klr+mql . .
(3.61) ( 3>61 )
Numerical results are presented in Table 3.2 in the same manner as in Case 1.
42
Numerical Ocean Acoustic Propagation in Three
Dimensions
Table; 3.2. Results of wide angle propagation.
J
Z (m)
LOSS (dB)
3 3
30.00 30.00
12.645 12.636
(0.22578E+00 (0.22613E-HK)
-0.58389E+00) -0.57994E+00)
6 6
60.00 60.00
6.868 6.859
(0.43904E+00 (0.43976E+00
-0.11362E+00) -0.11268E+00)
9 9
90.00 90.00
3.757 3.749
(0.62819E+00 (0.62909E+00
-0.16245E+00) -0.16134E+00)
12 12
120.00 120.00
1.852 1.841
(0.78225E-I-00 (0.78365E+00
-0.20236E+00) -0.20098E+00)
15 15
150.00 150.00
0.694
(0.89377E+00 (0.89492E+00
-0.23150E+00) -0.22952E+00)
18 18
180.00 180.00
0.117
(0.95544E+00 (0.95673E+00
-0.24602E+00)
0.688 0.108
u(I) Real
Imaginary
-0.24537E+00)
Before leaving this exact solution accuracy comparison, we briefly mention the relationship between the narrow angle and wide angle solutions, Eqs. (3.60) and (3.61). Specifically, we examine the behavior of the solution of Case 2 for large for. First, we consider the real part of the solution, i.e. X
_ m(p2 -Q2)p -Q2)* ffoT-rriy/q^ /fcor-m^/gi" \ in 2v^2 \k0r + my/(h \for my/q2~ )J
-^--{^[(-^-iw--) cos(rr) - coz(m{P2~q2)\( ™ ^ - - ^ ^ - ^ cos(z)-cosj ^ ^ ...J 2 ^ _ 2(fcor)2 (my/to 1 m2q2 \ 11 V KQTfor 2(for)2^'")\j *
•)]}•
(3.62)
Then, ignoring terms of O(l/(fcor) 3 ) in the argument of (3.62),
/ x
cos(x) = = COS cos COS(x)
frn(p2-q2)
—\ \ _ _ —
V
0
= = COS COS
( ra2lm2(p2-g2)\ ;;
(3.63)
for large for. Consequently, for wide angle parameters P2 — qi — 1/2, Eq. (3.62) reduces to the real part of the solution of Case 1. This provides a connection between the two cases. Moreover in examining coslcos(m2/2for), we note that this function increases monotonically beyond for = ra2/7r. It
A Pseudopartial
Differential Equation
43
approaches unity as fcor —► oo. When the function is close to unity, threedimensional effects are lost, because this solution to Eq. (3.36) behaves like a solution to the two-dimensional parabolic wave equation, i.e.
*
—U =
dr
4&),\ (I u .u,1+. *{1 +n*'ir(>nx)a-1( r ' * ) - 1 + i£)\ 1
-iko
\V
+ lk0
7
a
r-
i+«(» (r,*)-i+4&); (r,*)-i+4^)y
U .
The more rapid the azimuthal variation (i.e. the bigger the parameter ra2), the further out in range do three-dimensional effects influence the solution. An ocean application is presented here as a second example. This particular example has been solved by Perkins and Baer 3 using the split step algorithm on the standard 3DPE, Eq. (2.16). The sound speed profile is taken from an averaged Pacific profile cm(z), with values tabulated below. Table. 3.3. A Pacific profile z(m)
Cm(z) (m/s)
0 152.4 406.3 1015.9 5587.91 5587.91
1539.243 1501.143 1471.882 1549.606 1555.526
1536.500
The example profile has a large linear gradient in the cross range direction, of magnitude 1 m/s per km. The typical North Pacific Ocean profile is taken to lie in the vertical place 0 = 0°. Therefore, the complete sound speed profile is c(r,9,z) = cm(z) + (0.001)rsin#. The source is placed at 254 m below the surface, with a frequency of 25 Hz. We calculated propagation losses up to a maximum range of 140 km. We choose to present below the results on one particular section at 0°, in Fig. 3.2. In addition, along with the 3D wide angle PE solution plot is shown the calculation of Perkins and Baer 3 for comparison. The 3D wide angle PE result is presented in Fig. 3.2 and the Perkins-Baer result is presented in Fig. 3.3. In summary, the numerical solutions described previously demonstrate the general purpose capability of the Yale sparse technique. Since the CG method is an iterative technique dealing with inner products, it is desirable for the implementation on a vectorized computer. This is an advantage
44
Numerical Ocean Acoustic Propagation in Three
Dimensions
Fig. 3.2. Propagation loss vs range at 0° azimuth angle.
Fig. 3.3. Propagation loss vs azimuthal angle at range 120 km and depth 315 m.
A Pseudopartial Differential Equationm
45
of the Yale sparse technique. However, the solution to the wide angle three-dimensional partial differential equation cannot be solved directly by the FFT used for the standard 3DPE. This is another advantage of the Yale sparse technique. Even though we have found that the solution using the CGNE method is accurate, the procedure can by no means be regarded as the most efficient. The method we discussed here requires 5N multiplications per loop, plus two matrix vector products, and only 47V storage locations are required for the vector operations. However, the computation speed is not competitive with the FFT procedure. It is believed that one or more clever preconditioning techniques 14 can be developed to enhance the computational efficiency for our applications or that a reformulation of a representative mathematical wave equation which may be suitable for some numerical schemes that produce efficient solutions; this can be seen in a later chapter. Preconditioning techniques are introduced in Ref. 14 to solve the Helmholtz equation directly. In dealing with the Helmholtz equation, finite differencing may lead to a system of equations whose matrix is not only symmetric but also positive-definite depending upon the boundary conditions. As a result of these favorable properties, there exists a family of preconditioning techniques that can be applied. In our development, Eq. (3.4) is a special form of (3.3). It is suspected that regardless of the choice of the coefficients (pi,P2>
46
Numerical Ocean Acoustic Propagation in Three Dimensions
References 1. F. D. Tappert, "The parabolic approximation method," Wave Propagation and Underwater Acoustics, eds. J. B. Keller and J.S. Papadakis, Lecture Notes in Physics, Vol. 70 (Springer, Heidelberg, 1977). 2. R. N. Baer, "Propagation through a three-dimensional eddy including effects on an array," J. Acoust. Soc. Am. 69 (1981) 70-75. 3. J. S. Perkins and R. N. Baer, "An approximation to the three-dimensional parabolic equation method for acoustic propagation," J. Acoust. Soc. Am. 72 (1982) 515-522. 4. W. L. Siegmann, G. A. Kriegsmann, and D. Lee, "A wide angle threedimensional parabolic wave equations," J. Acoust. Soc. Am. 28 (1985) 659-665. 5. A. J. Berkhout, "Wave field extrapolation techniques in seismic migration," Geophys. 46 (1981) 1638-1656. 6. L. Halpern and L. N. Trefethen, "Wide-angle one-way wave equation," J. Acoust. Soc. Am. 84 (1988) 1379-1404. 7. D. F. St. Mary, "Wide angle parabolic approximations in underwater acoustics," in Numerical Mathematics and Applications eds. R. Vichnevetsky and J. Vignes (North-Holland, Amsterdam, 1986). 8. J. F. Claerbout, Fundamentals of Geophysical Data Processing with Applications to Petroleum Prospecting (McGraw-Hill, New York, 1976). 9. C. C. Lin and L. A. Segel, Mathematics Applied to Deterministic Problems in the Natural Sciences (MacMillan, New York, 1974). 10. H. C . Elman, "Iterative methods for large, sparse, nonsymmetric systems of linear equations," Dept. of Computer Sciences, Yale University, Research Rep. No. 229 (1982). 11. M. R. Hestenes and E. Stiefel, "Methods of conjugate-gradient for solving linear system," J. Res. National Bur. Stands. 4 (1952) 409-435. 12. D. Lee and W. L. Siegmann, "A mathematical model for the 3-dimensional ocean sound propagation," J. Math. Model. 7 (1986) 143-162. 13. D. F. St. Mary and D. Lee, "Derivation, consistency, and stability of an implicit finite difference scheme," in Recent Progress in the Development and Application of the Parabolic Equation, eds. D. Lee and P. D. Scully-Power, Naval Underwater Systems Center, Technical Document 7145, 1984. 14. A. Bayliss, C. I. Goldstein, and E. Turkel, "An iterative method for the Helmholtz equation," J. Comput. Phys. 49 (1983) 443-457.
Chapter 4
A High-Order Wave Equation
The Siegmann-Kriegsmann-Lee (SKL) model for determining wide angle three-dimensional wave propagation, described and analyzed in Chap. 3, is an accurate model. The most highly developed solution procedure for it applies a preconditioning technique to solve the equation iteratively. As was remarked in the previous chapter, if the preconditioning solution is used to produce accurate results, the computation time required to solve long range propagation problems in a reasonably sized sector will become very lengthy and expensive. Moreover, it is usually impractical for short to medium range problems as well. This difficulty was demonstrated in an azimuthally dependent simple case in Ref. 1. To overcome this difficulty, a Du Ford-Frankel explicit scheme was introduced in Ref. 2 as a first step toward improvement of the computation speed for the SKL model. This development improved the computation speed, but only for a narrow angle version of the SKL equation. Thus far, the solution in Ref. 2. has not been extended to handle wide angle capability; such an extension may be another interesting research topic. Consequently, for computational efficiency and practical, realistic applications involving long range propagation problems another model and solution procedure are needed. 47
48
Numerical Ocean Acoustic Propagation in Three
Dimensions
An entirely new model for solving long range propagation problems with wide angle capability was developed by Lee-Saad-Schultz (LSS).1 This chapter is devoted fully to discussing the LSS model, along not only with an efficient numerical solution, but also with a basic research computer code. Simple test examples are included in this chapter to demonstrate the validity of the LSS model. Meeting both the accuracy requirement and the capability of handling azimuthal variation (0 coupling) are the main considerations motivating the construction of analytic test solutions. It was discovered that this family of analytic test solutions can be used to test not only the LSS model but also some other models, such as narrow angle PE, mode coupling models with weak backscattering, and possibly even some ray models. Consequently, the complete development of the analytic solution is worthwhile reporting as an independent chapter. Since accuracy and efficiency are the guiding objectives of developing the new method, Lee-Saad-Schultz observed that, regardless of what numerical techniques are used to solve the one-way outgoing wave equation, the computational effort required is that for solving a linear system of model equations. When the resulting system has a sparse matrix, some indirect method would be expected to be needed in order to gain efficiency. Actually, it does not turn out so favorably, because iterative procedures are quite time consuming. This observation led LSS to introduce an inexpensive way for solving the system directly. The least expensive direct method should concentrate on solving tridiagonal systems. Focusing on this advantage, these authors were motivated (i) to formulate a new representative wave equation which leads to tridiagonal system matrices, and (ii) to employ efficient procedures to solve these systems. In addition to (i) and (ii), the development of an efficient computer code is necessary to implement the numerical solution. 4.1. Lee-Saad-Schultz (LSS) Model In contrast with other acoustic propagation techniques, Lee-Saad-Schultz derived a new representative three-dimensional wide angle wave equation and developed a numerical solution to the representative wave equation that requires solution of only two successive tridiagonal systems. Their method is based on a simple approximation to the square root operator y/l + X + Y, where X and Y are defined by Eqs. (2.18) and (2.19); recall that X is a partial differential operator with respect to the depth z and Y is a partial differential operator with respect to the azimuthal angle 0. The key fact is that the partial derivative term Y is small, but not
A High-Order Wave Equation
49
negligible, compared to other terms. It is then appropriate to replace the square root operator by an expansion that is of order 2 with respect to the X operator and of order 1 with respect to the Y operator. An important consequence of this approach is that it is then possible to derive a rational function approximation to its propagator operator which has the property of being unconditionally stable and accurate. Moreover, the approximation decouples naturally into a product of rational functions of X and Y. As a consequence, a solution technique results that requires only two tridiagonal system solutions per step, one for the X operator and one for the Y operator. The method resembles alternating direction schemes, but its foundation and analysis are different. The theory and validity of the method are verified by a simple numerical test in this section. A comprehensive examination of the accuracy, as well as the capability of handling 0 coupling, are given in Chap. 6 on analytic solution. 4.1.1. The LSS Mathematicalca< Model First, the definitions of X and Y, Eqs. (2.18) and (2.19), are used to express the far-field Eq. (2.2) in the form pp-uu ppQu — _-^_ ++2ik + 2ik0— k20(X (X ++ + Y)u Y)u == 0. 00.. Q 0 -— + kl(X
(4.1) (4.1)
Equation (4.1) can be considered formally as a second-order ordinary differential equation (ODE) with respect to the variable r. Its formal local solution, for the field at r + Ar given the field at r, has the form A ikoAr oA x + yx YY+ + + Ar,0,z) Ar,d,z) = erikerikQAr °^Ar1 '+/I^+ ^x++u uu+{r,0,z) u(r + u(r = e - ' * oe~ V e-*ik^ ( r(r,0,z) ,0,*)
ikoAree-ik + ei*o&r -ik00ArVT+X+7 AWl+X+Yuu--(r +
^ 0Q ^^
>?
(4.2)
(4 2)
where u+(r,0,z) z). and u~(r,0,z) are initial conditions at the range r. This first term in the right side of Eq. (4.2) is the outgoing wave, and the second term is the incoming wave. As the standard parabolic approximation suppresses backscattering, the desired one-way solution for the outgoing wave equation is obtained from (4.2) by dropping the incoming wave term. This yields the local solution svl+x+Y Y u(r + Ar, 6, 0, z) = ee~6see6V1 +x+u(r, u(r, u(r, 9, 0, z) ,
(4.3)
where in this chapter the parameter 6 is ik0Ar . 6 = ikoAr
(4.4) (4.4)
50
Numerical Ocean Acoustic Propagation in Three
Dimensions
Note that solution (4.3) is, as expected a local solution of the one-way outgoing wave equation from Chap. 2, i.e. urr = ik u iko(-l 0(-l
+ + y/l Vl + +X X + +Y Y )u )u ..
(2.37)
The new approach taken by Lee-Saad-Schultz consists of approximating the term e 5 v / 1 + x + y in a convenient and accurate manner. The simplest way in which this can be done is to use a linear polynomial approximation, as described in Eq. (2.31), i.e. Vl + + iIpT +X + + Y £Sil1 + ( X + yY), ),
(4.5)
which yields the standard three-dimensional narrow angle PE (2.15). However, the resulting Eq. (2.15) accurately represents only narrow angle propagation. To accommodate wide angle propagation, LSS apply the high-order approximation + \Y■Y . Vl + X + + Y S 1 + lx \ ;x* - \x2X" + (4.6) 22 8o 22 Using Eq. (4.6) in the outgoing wave equation, Eq. (2.37), a different form is obtained: ^ 22 + + (4.7) (4.7) Ur = = ik^o[-l+(l \x i x- -^X i y Ml«. ) 1u . 0 [-1 + ( l ++ Wr This is the new Lee-Saad-Schultz (LSS) three-dimensional wide angle wave equation in operator form. Then the formula (4.3) for the local solution of Eq. (4.8) becomes s s 1+ x x2+ Y Ar,0,z) = = ee^e^^^-i^^^u^O.z) u(r + Ar,6,z) e ( i -s i MrAz)
Y
K(rAz) .
(4.8)
Assuming that the index of refraction n(r, 0, z) varies slowly with respect to 0, the operators X and Y are nearly commutative, and Eq. (4.7) itself yields the local solution 6 1+ x x s u(r + + Ar,9,z) Ar,0,s) = = ee - e^ V < i1 +-i*^e * -^u(r,e,z) * * V * t i ( r , M ) .•
(4.9) (4.9)
Note that Eqs. (4.8) and (4.9) are identical if and only if X and Y commute. In any application, the commutativity of X and Y can always be wellapproximated numerically by taking a small Ar. An important step in the formulation is how to treat the two matrix 2 exponentials es(1+2x~&xi* )) and e^/ 2 ^ y efficiently. Not only should they be easy and economical to compute, but also their approximations should yield stability in the marchingo solution. For convenience we write G(6,X)^e6^ix-ix2K X -
i*2)
(4.10)
A High-Order Wave Equation
51
Here the function G(8,X) and its approximations should be regarded as functions of the real variable X and 6 is an independent parameter. Applying a Taylor series expansion to (4.10) about X = 0 gives 22 2 G(6,X) -X++III ((£(££---000 X 0(X3)3).. G(6, X) == e* es [l[l++66-X XX ]]]+++0(X*) 0(X
(4.11) (4.11) (4.11)
At the same time, we seek a rational function approximation to G(£, G(<5, X) X) in in the form G{6 ((4.12) 412) G x)KeS S
> \jW> IT&c> ^**
where p is a complex number to be determined and p is the complex conjugate of p. The purpose of Eq. (4.12) is to address the question of stability, as will be seen. A question is whether there exists a p such that the approximation Eq. (4.12) can be made. The resolution of this question becomes clear as we try to determine the p. We impose the condition that the right side of (4.11) is equal to the right side of (4.12), giving 6
2
*!_*W
1 2—l U
1 +f - X +\-
47
1 + pX
"TTW
(4-13)
From (4.13) it can easily be determined that p is p = yP=l Hence, we obtain
« 1 - ++ -\ . 4 4
(4.14)
1 G(S - + ii/*±+! ji )±XM G(6,X)=X) .
l + (J-f)-X"
A similar development for the term in Eq. (4.9) A similar development for the term in Eq. (4.9) H(6,Y) = e$Y H(6,Y)=e%Y leads to the approximation leads to the approximation
w> =TTfr> }±f, mY)
=
(4.15) (4.15)
(4.16) (4.16)
((4.17) 417)
with q = | . Hence, we obtain 1 + -Y H(6tY) = \ ± ^ . 1
4
r
(4.18) (4.18)
52
Numerical Ocean Acoustic Propagation in Three
Dimensions
Therefore, the final form of the local solution (4.9) to the LSS equation (4.7) takes the expression
*+*••■«> = {TT^W))x. (0) «'•»■ *> • <419> )*'
Equation (4.19) can be rewritten as u(r + Ar, 0, z) = Lu(r, 0, z) ,
(4.20)
L = L^LxLy^Ly ,
(4.21)
where in which L = 1+
*
'1
(i
+
L y = 1 + 8-Y . 4'
6s
l)*'
(422) (4.22)
(4.23)
In Eqs. (4.21), (4.22), and (4.23), L~l* stands for the inverse of L* and L* is the adjoint of L r , where r is either X or Y. Equation (4.19) can formally be regarded as an explicit marching scheme. It can be easily seen that the two operators in the denominator of (4.19) are nonsingular, because 6 is purely imaginary and X and Y are both self-adjoint. We next analyze the accuracy and stability of this scheme and show how to discretize it and use it numerically. 4.1.1.1. Stability The operators X and Y defined earlier are self-adjoint and therefore their corresponding eigenvalues are real. Since the numerator and the denominator of each term between brackets in Eq. (4.19) are conjugates of each other, the norms of the bracketed term are both unity, i.e. these two rational function operators are unitary. This property ensures the unconditional stability of the marching scheme (4.19). After discretization, the eigenvalues of X and Y will remain real, provided boundary conditions are properly handled and the discretizations in both numerators and denominators are evaluated at the same range. Under these conditions, the scheme is stable. Note that the second part of scheme (4.20) corresponds to the usual Crank-Nicolson approximation applied here to the term e ^ / 2 ) y .
53
A High-Order Wave Equation
4.1.1.2. Accuracy To analyze the local error of the marching scheme (4.19), one must attempt to find an estimate of the difference between the operator X+Y e-6e6VT+X+Y
( 4 2 4 ) (4.24)
and the operator on the right side of (4.19). In the following, consider X and Y as two independent real variables. After calculation one finds that the second-order Taylor expansion of the operator (4.24) is e-6e6Vi+xW
+Y
=1: 1
+ t(X X 2
+ Y)
+ ^(S - 1)(X2 + 2XY + Y2) 8
+ 0(||(X,r)||3).
(4.25)
On the other hand, the second-order Taylor expansion of the operator of the right side of (4.19) is given by y
11 (i -f) X 11■\y [l +Hit-f)f)* (l-l)x)\l-±Y) U= [l + ^ + ^ - l■)i :)X^ 22 + ...] [i + | y + £y» +...] = l+6(X (X- + Y) + ^XY+6-(6-l)X* -1)X2 2
4
8
+ ^Y> + 8
.... (4.26)
The larger terms in the difference between (4.25) and (4.26) are e"<
■ «
e
« ,
yi+x+F
K
fi + P\ ~V ■+(i+ \-i)x, (i-i)x){l-iY) 1 ' i +Kin V4 i ■+' +f !)x) *
= ~XY-6-Y2+ ; F 2 H 0(\\X,Y\\3). (4.27) ~8' 4 Thus, one can expect high accuracy when Y is very small and X is small. The error in (4.27) is smaller than terms of the form 0 ( X 2 ) , because the error expression is the product of three small terms, namely (5, F , and X. In fact, the expansion is appropriate when ||y|| is 0(||X 2 ||), so that all the error terms are no bigger than cubic in X. A different derivation of this result is summarized in Siegmann et al., Comput. Acoustics (IMACS SI), Vol. 1, pp. 91-109. When using a marching scheme, an upper bound for the global error at any point can be derived from the above local truncation error by expressing the error 4 + 1 < + 1 - u>+1 ,
54
Numerical Ocean Acoustic Propagation in Three
Dimensions
1 3+1 where u3^+1 represents the computed solution at step j and u,i+i the exact solution at the same point. On the other hand, we have
< + 1 = Lhu°h , where Lh is the discretization of the operator L as defined by (4.21). On the other hand, uJ+l
= LhU3 + Sj ,
where Cj is the truncation error incurred at step j . Hence,
u
ejh+l=Lhejhh^h + ej and since the operator Lh is unitary, we have
IK +1 ll<£lMIi=0
Since the number of steps in range is 0 ( ^ _ 1 ) , the above analysis shows that the norm of the global error ||e{ + 1 || is 0(X2). 4.2. A Finite Difference Solution To employ formula (4.19) numerically, one must discretize the operators X and Y by central differences and replace the corresponding operators by their discrete analogues. We first put Eq. (4.19) in the form
G
1
1
U*
"4,
(5 -y x (l1 - 6M f
X
There are several the operators Lx X and Y can also one may consider
4
£>
*] k
. -l
1-1
a fD*l
J (l1-+ V M ' . . J |uv?
"4
(4.28) (4.28)
ways of rewriting (4.28), exploiting the computativity of and L^* and of Ly and Lp*. The near computativity of be exploited to derive alternative formulae. For example, the scheme
ha-5)*](*-H^-hG+9*](1^)"-
(4.29) (4.29)
A High-Order Wave Equationm
55
Although not obvious at first, the above scheme is also unconditionally stable. The reason for this is that the corresponding operator L = LY*LX*LXL>Y(Ly is also unitary, as is readily seen by forming LL which is found to be the identity operator. The question as to which of the various schemes is preferred is certainly worth further investigation but will not be pursued in this book. Let us denote by A the finite difference approximation of the operator Lx = I + (\ - {)X and by B that of LY = I + {Y. Both matrices are tridiagonal with the structure indicated below. Upper diagonal of A : Main diagonal of A :
1 £ 2 2^ (\ ( 44 - '4*\ ) A k$h V
'
(I
^ 2 (I 1 + Q - - J [n2(r,6,z) - 1] - ^ 2 [\ ~ 4 ) ' jfcg/i \ ,4 ' 4 4,
f
1
U
a.
*> ^---J , 4 .4
Lower diagonal of A :
_
Upper diagonal of B:
- ^4jfcg - 2L -
klh?
8_ 1
r
fi 1 1 6_ Main diagonal of B : 1 ++ -
1 , (A0)2 11
A g ) 22
' l\fc0V ((A0)
Lower diagonal of 2?:
,
5 1 1 4&§r (A0)
- | ^ - 2- ^ _ 2 .
When solving tridiagonal systems with the matrices A and 5 , it is of interest to know whether or not these matrices are diagonally dominant. While the matrix B can be shown to be always diagonally dominant, the situation is more complicated for A. In the simple case where n(r,0, z) = 1, the matrix is conditionally diagonally dominant (i.e. when h > 1/ko) in the sense that the modulus of the diagonal term is greater than or equal to the sum of the moduli of the off-diagonal terms in the same row. The more general case, when n is arbitrary, is not easy to analyze. The scheme (4.28) becomes j +1 uj+1 = A-*AB-*BuBv? . u'
(4.30)
Note that we evaluate the matrices A and B at mid-distance between u^1 and u\ i.e. at range r + Ar/2. This is in order to ensure that the operators A* and A, as well as B* and 5 , form two pairs of operators that are
56
Numerical Ocean Acoustic Propagation in Three
Dimensions
conjugates of each other. The choice will guarantee stability, as was seen in the previous section. To perform one step of (4.30), we must start bycomputing wj = BvP and solve the tridiagonal system £ V + 1 = wj . Then we compute v J + 1 = A"1A*u^+1
(4.31)
and solve the tridiagonal system
A*uj+X = Av^1
.
(4.32)
Thus, there are two multiplications of a tridiagonal system by a vector and two tridiagonal systems to solve at every step. Proposed Problem 4.1. A variation of the LSS wave equation can be achieved by considering different approximations of y/1 + X + Y . Show that if another approximation of y/1 + X + Y is made to include the XY term, then the resulting system is NOT tridiagonal. Construct the resulting system matrix. To find an economical solution is a research problem. 4.3. Model Appraisal It was seen in Chap. 3 that preconditioning technique used to solve the SKL pseudopartial differential equation is an iterative marching scheme. Using this model to predict long range propagation is time consuming and thus, impractical. Chan-Shen-Lee's introduction of the Du Ford-Prankel scheme improved the speed. However, this improvement is not considered to be satisfactory because this scheme is only applicable to the narrow angle standard PE and is not capable of handling the wide angle propagation. To improve the computation speed and to maintain the wide angle capability, the LSS model has the advantage. In this section we selected a simple test problem on which all three of these models are applicable. For the same accuracy requirement, we examine the computation speed and give an appraisal of the computer code of LSS implementation (FOR3D). Computations are made on the VAX-11/780 computer using single precision complex arithmetic. This test problem deals with low frequency propagation whose exact solution is known, t*(r, 0, z) = c - ° V
m
V ^ .
(4.33)
A High-Order Wave Equation
57
Expression (4.33) is used to generate the initial field. The surface condition is taken to be 2 u(r,0,z) = eiTneei"%F (4.34) and the bottom condition is taken to be ijoL
t*(r, 0, ^max) = e-nz™*eiTneei7&,'5137 .
(4.35)
The scalar Q in Eq. (4.33) is chosen to be 2k0 and the angular model number M is assumed to be 3. To obtain an accuracy of 10~ 2 , as in Ref. 2, the methods need to take a range step size of 0.001 m. The input parameters are listed in Table 4.1 for convenience. Table 4.1. Input parameters. Input parameters Source Initial range Source frequency Bottom depth Sound speed Reference sound speed Receiver depth Propagation sector Maximum range Depth increment Range step size Angular increment Surface condition Bottom condition Size of matrices A and B
Test problem 10 m 10 m 20 Hz 20 m 1500 m 1500m/s 5m
- 5 ° , 5° 10.5 m 0.2m 0.001m, 0.25 m
1° Dirichlet Dirichlet 1000
We tested two different step sizes, i.e. 0.001 and 0.25 m. The experiment with the first range step size is only done in order to permit comparison with Ref. 2. We should point out that such a small step size is necessary for the Du Ford-Prankel method of Chan-Shen-Lee because the scheme is explicit. In this test computation, we found that the FOR3D method was approximately 1.6 times faster than the Du Ford-Frankel explicit method in Ref. 2, and 17 times faster than the preconditioning solution, described in Sec. 2. Note that as discussed therein, the preconditioning technique
58
Numerical Ocean Acoustic Propagation in Three
Dimensions
uses a stable version of the conjugate gradient method applied to the normal equations. Using the second step size of 0.5 m, we found that the same accuracy could be achieved by FOR3D as with Ar = 0.001, but the execution was much faster. Here our method is approximately 160 times faster than the explicit five-point method and 1600 times faster than the preconditioner. The results are displayed in Table 4.2. Table 4.2. Results of comparison.
Method
Ar
SKL (precond.) Explicit LSS (FOR3D) LSS (FOR3D)
0.001 0.001 0.001 0.25
Relative error (0.18E-01, (0.10E-01, (0.26E-02, (0.22E-02,
-0.12E-01) -0.11E-01) -0.11E-02) -0.11E-01)
CPU time h-m-s 03-47-10 00-21-35 00-13-12 00-00-09
Since obtaining solutions to ocean acoustic propagation in three dimensions can be complicated as well as computationally expensive, fast computation speed is important. Moreover, it is now clear that twodimensional models are no longer sufficiently representative. Efficient methods and clever implementation for dealing with three-dimensional wave propagation are therefore very important. The new LSS method and its implementation introduced in this chapter is not only a fast and accurate method, but is also just as representative as a model as other well-known existing 3D models. The numerical results have demonstrated that the method is efficient and have confirmed the theory that it is also stable. The LSS approach uses a form of the 3D wave equation as an ordinary differential equation with respect to range. Then a formal expression of the solution is written in terms of the exponential of the square root of some operator. The artifice used in this paper is to approximate this exponential in a clever way by the product of two rational functions of the type (1.1). As a consequence, the resulting ODE integration process requires only two successive tridiagonal system solutions. The theory shows that our method is unconditionally stable. Moreover, it is so accurate that larger step sizes can be afforded resulting in substantial savings in computational times. This has been widely confirmed by a set of comprehensive numerical accuracy tests. Moreover, angles of propagation as wide as 31 degrees have been accurately handled.
A High-Order Wave Equation ion
59
4.4. Computer Code — FOR3D A computer code 3 was developed to implement the marching implicit scheme (4.29). The complete development from the mathematical model, Eq. (4.7), to the numerical solution of Eq. (4.30) consists of a Finite difference solution, an Ordinary differential equation solution, and Rational function approximations; this combination is specifically and efficiently developed for solving three-dimensional (3D) problems. That is why the computer code is named FOR3D. Since a complete computer listing is included in this book, the development of FOR3D will be described. Descriptive materials used to design FOR3D should be useful information to help the user to understand the program structure. Materials presented in this section are the basic developments which contain no density variations and will be discussed further in a separate chapter. However, the entire code contains the capability enhancement and the density variation. In addition to a version available for VAX 11/780 computer, an identical version is also available on Cray X-MP also at the Naval Underwater Systems Center, New London, Connecticut, U.S.A. 4.4.1. Computer
Algorithm: \hm. Two-Step>p P\Procedure
In previous sections, it was discussed how Lee, Saad, and Schultz applied finite difference techniques to develop a method for numerically solving the LSS three-dimensional, wide angle wave equation. In this section, the algorithm used to implement the LSS method into computer code will be discussed. Equation (4.29) may be solved in two steps as follows: Writing Eq. (4.29) in the matrix form A * B V + 1 = ABuuj and substituting v J + 1 for B*uj+1
j
(4.36)
and vJ for Bu^, we have
A*vj+1
[vjj .. = Av
(4.37)
Now, solve as follows: Step 1 Compute Ayi and, using a tridiagonal solver, solve the system j
4 V ' + 1 = Avvj J +1
for the vector v ' ,
(4.38)
60
Numerical Ocean Acoustic Propagation in Three
Dimensions
Step 2 Now that yi+1 is known, use a tridiagonal solver to solve the system fl V
+ 1
= vj+1
(4.39)
for the vector u*+1. As previously stated, vP+1 is the acoustic field at all receivers in the cylindrical plane at the advanced range r + Ar. Throughout the test of this section, a capital U is used to denote the wave field w(r, 0, z) because of the computer program designation.
4.4.2. Computation for Step 1
0 = zero
AL =
(; - J) wt? * '°""r <"agon*1
*"-*"-'+(i-l)*'-"-(i-l)iIJEif = main diagonal AU = upper diagonal = AL 6 = ikoAr,
n=—, C\
ko = -—Co
+1 v!*1 = BV^uf+l! ,1-1 + BM J ' +1 uJ+ 1 + BU J ' +1 ii*,*+i 6 1 1 RT.J+ 1 : BL 4 fc2r2 ( A ( 9 )2
6 1 1 BM'+1 = 1 + - — — 2 * 0 V (A*) 2 BUi+1 =
BLi+1
A High-Order Wave Equation
61
0 = zero
AL =
(i + !) fcf(i^ = lower diagonallal
AM =Ait == 1 AU =AL £ = i/coAr,
n. V4
i\l+(l+S-)(n*-l)-2(±+S-)-w-L—2
4/ U 'V
V4
n= — C\
7r/ h --= 2ILHL fco Co j = BL>J ' < * - i f BMlJ' i
BL^* * L_ 4 fcgr2 (A0) 2 (5 1 1 BMJ' : 1 2 fcg 2 ( fl)22 A 2fcgr2r (A0) BIF = BL*
4 / fcg(Az)
62
Numerical Ocean Acoustic Propagation in Three
Dimensions
4.4.3. Computations ions tfor Step 2
0 = zero
BL= BM
=lowerdiasonal - i ^ ( W(A0) 2
+
1
1
= * 5*jp(W =
main diagonal
BU = upper diagonal = BL 6 = ikoAr , fco v?£
2TT/
f Co
2K
= computed in Step 1.
The above summarizes the computations in Step 2 for a system of equations where L = 3 and M = 3.
Ion A High-Order Wave Equation
4.4.4. Computer ter
63
Model
The previous section presented the two-step marching procedure for solving the LSS three-dimensional, wide angle wave equation and the computations required in each of the steps. This section discusses the computer model, FOR3D, which implements the two-step procedure. A flow chart is included. FOR3D is written in Fortran using single precision, complex arithmetic, and has been originally installed on a VAX 11/780 computer. The model was designed, in some instances at the expense of speed, such that additional capabilities may be easily incorporated. Speed improvement is vital to the entire three-dimensional computations. The topic of the development of high-order numerical methods to improve the computation speed is presented in a later chapter. 4.4.4.1. Model capabilities At this stage, the FOR3D model was developed to have the capability to handle the following situations: • • • • • • • • • •
Long range propagation Shallow and/or deep water propagation Shallow-to-deep and/or deep-to-shallow water propagation Range-dependent environment Azimuthal-dependent environment Vertical wide range propagation Arbitrary side wall boundaries Arbitrary bottom boundaries Artificial boundaries Interface conditions
The LSS model handles only flat surfaces. Capability to handle fluid/elastic interface is not included in this volume.
64
Numerical Ocean Acoustic Propagation in Three
Flow chart of computer model.
Dimensions
A High-Order Wave Equation ion
Fig. 4.1. Hierarchical model structure.
65
66
Numerical Ocean Acoustic Propagation in Three
Dimensions
4.4.4.2. Model structure The hierarchical structure of the model is shown in Fig. 4.1. Those subroutines marked with an asterisk (*) are prepared by the user. Input parameters that result in control being transferred to user-supplied subroutines are shown in the figure. For example, if input parameter ISF = 1, then SFLD3D transfers control to USFLD3D. If ISF = 0, subroutine SFLD3D returns a Gaussian starting field to the main program, FOR3D. Note that the hierarchical order shown in Fig. 4.1 is not necessarily the order in which the subroutines are executed. FOR3D can be compiled, linked, and executed by submitting the following commands on VAX 11/780 computer: $FOR
SLINK
$RUN
FOR3D, AMIFD3, BMIFD3, HNKL, PRINTP, TWOSTEP, RHS, TRID3D, INDX3D, SVP3D, SFLD3D, SCON3D, BCON3D, PORT3D, STBD3D, USVP3D, USFLD3D, USCON3D, UBCON3D, UPORT3D, USTBD3D, EXACT FOR3D, AMIFD3, BMIFD3, HNKL, PRINTP, TWOSTEP, RHS, TRID3D, INDX3D, SVP3D, SFLD3D, SCON3D, BCON3D, PORT3D, STBD3D, USVP3D, USFLD3D, USCON3D, UBCON3D, UPORT3D, USTED3D, EXACT FOR3D
4.4.4.3. Geometry of propagation To facilitate subsequent discussions on the purpose of each subroutine shown in Fig. 4.1, the geometry through which the acoustic wave propagates and the data structures in which that wave is contained are presented in this section. Figure 4.2 illustrates the top view of a cylindrical wedge through which an acoustic wave is propagating from the cylindrical plane y to the cylindrical plane x. Figure 4.3 shows a three-dimensional view of one sector of the wedge illustrated in Fig. 4.2. Given the acoustic field along the cylindrical plane y at the present range (r), the purpose of the model is to predict the acoustic field at the cylindrical plane x at the advanced range r + A r . Having solved for the field at range r + Ar, the model can then solve for the field at r + 2Ar. In this manner, the model marches forward, one step at a time, until maximum range has been reached.
A High-Order Wave Equation tion
Fig. 4.2. Top view of cylindrical wedge.
Fig. 4.3. 3D view of one sector.
67
68
Numerical Ocean Acoustic Propagation in Three
Dimensions
4.4.4.4. Data structure of the acoustic field The outwardly marching acoustic field along the cylindrical plane y, as viewed from the source, is shown in Fig. 4.4. Note that the left subscript varies in depth from top to bottom while the right subscript varies in azimuth from port to starboard. The data structures in which the acoustic field is stored are shown in Fig. 4.5. Although the subscript N is used in both figures to point to the bottom, FOR3D will, depending on the type of bottom, use the subscript N + 1 to point to the bottom condition. 4.4.4.5. Main program FOR3D The main program, FOR3D, controls the execution of the various subroutines that make up the model. Initially, FOR3D reads input parameters and environmental data from the input file FOR3D.IN, and performs the required initialization. Depending on input parameter ISF, FOR3D then calls on either subroutine SFLD3D or subroutine USFLD3D to generate the starting field that is to be marched out in range. Selected problem parameters are then printed and, if requested, written in an output file for subsequent use. FOR3D then calls on subroutine INDX3D to compute an index of refraction table that is to be used in the computation of the main diagonals of the tridiagonal matrices A and B. After these preliminary procedures have been accomplished, FOR3D enters the program's main loop and continues to cycle in the loop until the solution has been marched out to maximum range, as requested. At the beginning of each pass through the loop, FOR3D updates the environmental parameters, as required. FOR3D then calls on subroutine RHS to compute the right-hand side of the system of equations to be solved. Subroutines INDX3D, AMIFD3, and BMIFD3 are then called to compute the index of refraction table and the diagonals in the A and B matrices, respectively. FOR3D then calls on subroutine TWOSTEP to march the solution one range step (Ar) forward. The solution returned by TWOSTEP is then printed and written in output file, FOR3D.OUT, as requested by the user. When the solution has been marched out to maximum range, the program is terminated. If the range of the solution has not reached maximum range, FOR3D returns control to the top of the main loop and repeats the above procedures. The computer flow chart summarizes these procedures.
A High-Order Wave Equation
Fig. 4.4. Pictorial view of outwardly propagating wave.
Fig. 4.5. Data structures of acoustic field.
69
70
Numerical Ocean Acoustic Propagation in Three
Dimensions
4.4.4.6. Subroutines This section presents brief descriptions of each of the subroutines contained in the FOR3D package. Subroutine SFLD3D If input parameter ISF = 0, main program FOR3D calls on subroutine SFLD3D to generate a Gaussian starting field at range zero. The Gaussian starting field4,5 is U(M + 1 ) = CMPLX (PR, 0.0) , where M = (J-1)*N) * N ., J = l , 2 , . . . , NSOL , 1 = 1,2,... ,JV, N = number of equispaced points in the vertical column, NSOL = number of columns in azimuth and -r™
^
* /
/ZMz^Sx2
PR = GA fe" ( ~5w-) _ e - (
/-ZM-ZS>>2\
6w ) J
?
with ZM = depth of point = I * AZ(m) , AZ = depth increment (m) , ZS = source depth (m) , GW = Gaussian width = 2/FK , FK = reference wave number = 2 * pi * FRQ/CO , FRQ = frequency (Hz) , CO = reference sound speed (m/s) , GA = Gaussian amplitude = (1/GW) * (2/FK) * *0.5 . Subroutine U F L D 3 D If input parameter ISF = 1, main program FOR3D calls on user written subroutine UFLD3D to generate the starting field, UFLD3D must load N * NSOL valued of the complex starting field in array U. If ISF = 0, UFLD3D is not called and may be a dummy subroutine.
A High-Order Wave Equation ition
71
If the user-supplied starting field is an elliptic solution, then the starting field must be divided by the Hankel function. The solution field obtained must then be multiplied by the Hankel function before computing the transmission loss. This procedure can be accomplished automatically by setting the input parameter IHNK = 1. Subroutine S V P 3 D When the range (RA) of the next solution to be obtained is equal to the range of the next set of sound speed profiles (RSVP), the next set of profiles is input. If input parameter KSVP = 0, then subroutine SVP3D is called to read the profiles from the input runstream. SVP3D then loads the six arrays shown in Fig. 4.6. Array ZLYR contains the maximum depth of each layer as measured from the surface. Arrays RHO and BETA contain density and attenuation, respectively, in each layer. Variable NLYR is the number of layers in the profile. The profile in each layer is stored in arrays ZSVP and CSVP. NSVP is the total number of points in the profile. If an error is detected while inputting the profiles, NSVP is reset to zero. Array IXSVP contains indices that point to the last sound speed in each layer. At the present stage of development, interpolation is performed only in depth. Profile changes in range are abrupt and NSOL profiles, one for each sector boundary, must be provided since interpolation in an azimuth is not performed. Linear interpolation in depth is performed in subroutine INDX3D. Plans for the future include the development of a sound speed profile preprocessor which will perform interpolation in all three dimensions. Given a three-dimensional array of sound speed profiles, this preprocessor will generate profiles as required by FOR3D as it marches through a threedimensional wedge. Subroutine U S V P 3 D If input parameters KSVP equal 0, then subroutine USVP3D will be called on to supply an updated set of sound speed profiles. If KSVP is not reset to zero by USVP3D, then USVP3D will be called at each step in range. User-prepared subroutine USVP3D must load the six arrays with NSOL profiles as described in the previous section. Variables NLYR and NSVP must also be loaded by the user. Variables KSVP may be used in a computed GOTO statement to transfer control within user program USVP3D. When the user no longer
72
Numerical Ocean Acoustic Propagation in Three
Fig. 4.6. Sound speed profile arrays.
Dimensions
A High-Order Wave Equation
73
needs USVP3D, KSVP must be reset to zero within USVP3D. The last profile entered will be used until the solution range is equal to the next RSVP. If KSVP is not reset to zero, then USVP3D will be called until the solution range is equal to RSVP, the range of the next set of NSOL profiles. With this option, the user can generate a new set of profiles at each range step. Sound speed profile values interpolated in all three dimensions may be entered by the user in this manner. When the next solution range is equal to the next RSVP, either SVP3D or USVP3D, depending on the next KSVP, is called to input the next set of profiles. Subroutine P R I N T P Subroutine PRINTP prints selected input parameters. Subroutine I N D X 3 D Subroutine INDX3D determines the values of sound speed (Ci) and attenuation (/?) to be used at the receiver depth under consideration. The index of refraction squared (n 2 ) is then calculated where n = Co/Ci, Co and Ci being the reference sound speed and the speed of sound at the depth under consideration, respectively. Linear interpolation in depth for Ci is performed as required. The index of refraction squared is then modified as follows: n2 ~ (Co/Ci)2 + i(C0/Ci)2 * /?/27.287527 , where f3 = attenuation in dB/wavelength and 27.287527 = pi * 20 * ln(e). Adding the imaginary term to the index of refraction squared accounts for attenuation. 4,6 The new value of n2 is used in the subsequent calculations of the main diagonals in the A and A* matrices. Subroutine RHS The purpose of subroutine RHS is to compute the right-hand side of the system of equations solved in Step 1 of the two-step procedure. After calling on SCON3D, BCON3D, PORT3D and STBD3D for surface, bottom, port, and starboard boundary conditions, respectively, RHS performs the computations summarized in Sec. 4.4.2. The result is stored in the array (D). If the boundary conditions at the advanced range are known, then these conditions are included in the calculation of the right-hand side. Plans for the future include handling cases where the boundary conditions at the advanced range are unknown but may be expressed as a function of the solution to be obtained. Such a case will require modifications to some of the matrix coefficients on the left-hand side of the system of equations.
74
Numerical Ocean Acoustic Propagation in Three
Dimensions
Subroutine S C O N 3 D SC0N3D is called upon by subroutine RHS to supply surface conditions. If input parameter ITYPES = 0, a pressure release surface condition is returned, i.e. the arrays SURY and SURX are set to zero. If ITYPES = 1, SCON3D calls on USCON3D. Subroutine U S C O N 3 D If ITYPES = 1, the user must write subroutine USCON3D to supply the surface condition. The values of the surface condition must be stored in arrays SURY, shown in Fig. 4.5, and in SURX, not shown. SURY is used to store the surface condition at the present range, while SURX is used to store the surface condition at the advanced range. Surface conditions, uJ01 at the present range and u30\ at the advanced range, as described in Sec. 4.4.2, are used in the computation of vJ01 and UQV> respectively. The subscript £ varied from 0 through L + 1. If ITYPES = 1, then USCON3D is not called and may be a dummy subroutine. Subroutine B C O N 3 D BCON3D is called by subroutine RHS to supply bottom conditions. If input parameter ITYPEB = 0, the bottom is set to zero, i.e. arrays BOTY and BOTX are set to zero. If ITYPEB = 1, then BCON3D calls on user-written subroutine UBCON3D to supply the bottom condition. If ITYPEB = 3, then BCON3D supplies an artificially absorbing flat bottom. Subroutine U B C O N 3 D User-written subroutine UBCON3D is called upon to supply the bottom condition whenever input parameter ITYPES is set to 1. UBCON3D must load arrays BOTY, shown in Figs. 4.4 and 4.5, and BOTX with bottom conditions u\t and u3^1, at the present and advanced ranges, respectively. Bottom conditions u\t and u[\l are used in the computation of v\t and v{\x, respectively, as described in Sees. 4.4.2 and 4.4.3. Note that, in Figs. 4.4 and 4.5, the subscript I is varied from 0 through L + l. If ITYPEB = 1, then UBCON3D is not executed and may be a dummy subroutine. Subroutine P O R T 3 D Subroutine RHS calls on subroutine PORT3D to supply the boundary conditions at the port sidewall. If input parameter ITYPPW = 0, PORT3D sets the arrays PORTY, shown in Figs. 4.4 and 4.5, and PORTX equal to
A High-Order Wave Equation '■ion
75
zero. If ITYPPW = 1, user-written subroutine UPORT3D is called by PORT3D. Future plans include addition boundary condition options. Subroutine U P O R T 3 D User-supplied subroutine UPORT3D is called by PORT3D to supply port sidewall boundary conditions whenever input parameter ITYPPW = 1. UPORT3D must load arrays PORTY and PORTX with the wall conditions u3i0 and ^ Q 1 at the present and advanced ranges, respectively. Wall conditions uJi0 and u^1 are used in the computations of v{x and v{\x as described in Sees. 4.4.2 and 4.4.3. Note in Figs. 4.4 and 4.5 that the subscript i is varied from 1 through N-l. - 1 . If ITYPPW = 1, then UPORT3D is not called and may be a dummy subroutine. Subroutine S T B D 3 D Subroutine RHS calls on subroutine STBD3D to supply the boundary conditions at the starboard sidewall. If input parameter ITYPSW = 0, STBD3D set the arrays STBDY, shown in Figs. 4.4 and 4.5, and STBDX equal to zero. If ITYPSW = 1, user-written, subroutine USTBD3D is called by STBD3D. Future plans include additional boundary condition options. Subroutine U S T B D 3 D User-supplied subroutine USTBD3D is called by STBD3D to supply starboard sidewall boundary conditions whenever the input parameter ITYPSW = 1. USTBD3D must load arrays STBDY and STBDX with the wall conditions u\ L + 1 and u3^^ at the present and advanced ranges, ne respectively. Wall conditions u\ L + 1 and i4 L+I a r e u s e ( * *n t the computation j+1 1 as3 shown in Sec.. 4.4.2. Note in Figs.i. 4.4 and 4.5 that Of of
Subroutine A M I F D 3 Subroutine AMIFD3 computes the upper, lower, and main diagonals of the A matrix. The computations performed are summarized in Sec. 4.4.2. Subroutine B M I F D 3 Subroutine BMIFD3 computes the upper, lower, and main diagonals of the B matrix. The computations performed are summarized in Sec. 4.4.3.
76
Numerical Ocean Acoustic Propagation in Three Dimensions
Subroutine T W O S T E P Subroutine TWOSTEP marches the acoustic field one step forward by calling on the tridiagonal solver, TRID3D, twice. Given the A matrix and the right-hand side of the system of equations summarized in Sees. 4.4.2 and 4.4.3, the purpose of the first call to TRID3D is to compute the vector v J ' +1 . Once the vector v^1 has been obtained, TWOSTEP reorders the vector as shown on the right-hand side of the system of equations shown in Sec. 4.4.3. Given the B matrix and the reordered vector v J + 1 , the purpose of the second call to TRID3D is to compute the solution field w-7+1 at the next step in range. TWOSTEP reorders the solution field vP+l returned by TRID3D as shown in Sec. 4.4.5. Subroutine T R I D 3 D Subroutine TRID3D, a modified version of subroutine TRIDAG presented in Ref. 7, solves a system of N linear simultaneous equations having a tridiagonal coefficient matrix. Subroutine function HNKL HNKL computes the Hankel function. The algorithm for computing the Hankel function is given in Ref. 8. Subroutine E X A C T Subroutine EXACT is used for test purposes only. If the exact solution is known, subroutine EXACT may be coded to compute and print items such as relative error between the computed and exact solutions. If the exact solution is unknown, subroutine EXACT should be a dummy subroutine. Common data file In order to facilitate further development of the model, most variables and arrays have been declared in the common file, COMMON.FOR. COMMON.FOR is included in each subroutine as required. References 1. D. Lee, Y. Saad, and M. H. Schultz, "An efficient method for solving the nal Acoustics, three-dimensional wide angle wave equation," in Computational Vol. 1: Wave Propagation, eds. D. Lee, R. L. Sternberg, and M. H. Schultz (North Holland, Amsterdam, 1988), pp. 75-89. 2. F. F. Chan, L. Shen, and D. Lee, "Difference schemes for the parabolic wave equation in ocean acoustics," J. Comput. Math. Appl. 11 No. 7/8 (1985) 747-754.
A High-Order Wave Equation
77
3. G. Botseas, D. Lee, and D. King, "F0R3D: A computer model for solving the LSS three-dimensional, wide angle wave equation," Naval Underwater Systems Center, TR 7943, 1987. 4. F. D. Tappert, "The parabolic approximation method," in Wave Propagation and Underwater Acoustics eds. J. B. Keller and J. Papadakis, (Springer, New York, 1977), pp. 224-280. 5. H. K. Brock, "The AESD parabolic equation model," Naval Ocean Research and Development Activity, TN-12, 1978. 6. F. B. Jensen and H. Krol, "The use of parabolic equation method in sound propagation modelling," SACLANT ASW Research Center, Nato, Italy, SACLANT SM-72, 1975. 7. B. Carnahan, H. A. Luther, and J. O. Wikes, Applied Numerical Method, (John Wiley & Sons, New York, 1969). 8. M. Abramowitz and I. Stegun, Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables, Applied Math. Series 55. U.S. Govt. Printing Office, Washington, D. C , 1964.
Chapter 5
Enhancement of the High-Order Wave Equation
The ocean environment changes constantly in nature. The changes of temperature, salinity, and pressure affect the sound speed and density structure of the water mass, thus creating a layered medium. Sediments that compose the ocean floor are also layered by the periodic decomposition of sedimentary material. These phenomena stratify the ocean environment into a layered medium, thus interfaces are formed. At each interface continuity conditions must hold, i.e. the pressure must be continuous and the normal component of particle velocity must also be continuous. Therefore, techniques must be developed to treat the interface; not only one single interface but multiple interfaces and regular interfaces as well as irregular interfaces. McDaniel-Lee 1 introduced finite difference to treat the interface conditions numerically, for both regular and irregular interfaces. Their numerical treatment was the only one very well-documented in the available literature. Their numerical treatment of interface conditions was aimed at two-dimensional wave propagation in depth and range dimensions, the azimuth dimension was being completely ignored at that time of
79
80
Numerical Ocean Acoustic Propagation in Three
Dimensions
development. In the two-dimensional range-dependent environment, the propagated acoustic field may also be strongly dependent on bottom interaction, necessitating the accurate treatment of the field at the water sediment interface and deeper interfaces within the seabed. However, sound speed and density changes do not occur only two-dimensionally, but also three-dimensionally. Thus, the change in azimuthal direction should not be neglected even though the change is generally small. Moreover when the acoustic field has strong azimuth dependence, the interface must be treated thoroughly. It was noted in Chap. 4 that the LSS mathematical model does not have the capability of handling interfaces. To establish this capability, the LSS model is extended to allow for sound speed and density variations. This new extension will provide the capability for handling interface boundary (regular and irregular), thus creating a capability for handling a rough bottom in realistic ocean environment. This extension introduces a three-dimensional wide angle wave equation with density variations, then a similar numerical marching scheme is developed to solve this new representative wave equation. To complete the extension, the FOR3D code is modified accordingly to handle density variations in all directions. 5.1. Density Variation Capability A finite difference approach by Varga2 is applied for handling the sound speed and density changes on the interface. This finite difference treatment for the interface condition is different from that introduced by LeeMcDaniel. 1 Details of the Varga treatment will be discussed later. 5.1.1. Mathematicalleal Fo\ Formulation The equation of the acoustic field in an inhomogeneous medium takes the form3:
p div ( - g r a d P J + k2Pp = 0 ,
U
(5.1)
where p is the density function and P is the acoustic field which is a function of r, z, and 0. In conventional operator form, Eq. (5.1) can be expressed by
fi.
•VP] +k2•?p pV • (-VP) P = 0. KP
(5.2)
In cylindrical coordinates, 1 d , d , d V = Tr|-+T(,i^ + Tz|-, or r 86 oz
(5.3)
Enhancement of the High-Order Wave Equation
81
where T r = i cos — j sin > , T0 = i sin > + j cos <\> and Tz=k, with the property that T r • T0 = T r • Tz = T* • Tz = 0. Using the definition (5.3) for V, pV(^VP) IP) can be expressed by dPs id I— p-—(-—\ dr \p dr J r dr dp 1 8 fldP\ d ' 1 , (ldP\
p"V(-VP)=IP \p J
+
Thus, if p = p(r,0,z),
^PM{-pM)+Pd-z{-p^)'dz
)
(5 4)
'
Eq. (5.2) becomes
d_(ldP\dP P P dr dr \p &r J
ldPIP +
+
r dr d idP' +PJ dz
i_ d d_(ldP\ ' « ' \p d0 ) r d9 2p
hJb 2 (r,0,z))P = 0 .
(5.5)
Since a marching scheme in range is introduced to solve Eq. (5.5), one can treat the density function p as a function of two variables 0 and z, i.e. p = p{0,z). Then Eq. (5.5) in operator form becomes a ra 2 i_ 1 d 1 d 'i a> r,6,z) P = 0 (5.6) (r, - p ] pdz) [dr2 r dr r2>\P Tz
'ae u>0*/
(IL + e
First, expressing k(r,6,z) = fcon(r,0, z) where k0 is the reference wave number, 7i(r,0, z) is the three-dimensional index of refraction. Then, following the development in Chap. 3 by applying the transformation P(r,0)Z) (kor) and substituting it into Eq. (5.6) and .*) = U(V^0,Z)HQ simplifying, a counterpart wave equation of Eq. (2.37) can be obtained in an identical form, viz ur = (-iko + ik0y/l+X++ +
+y +
) u ,
(5.7)
*♦-.■(„•..)-l + £p£(i£)
(5.8)
where
82
Numerical Ocean Acoustic Propagation in Three
and Y+
Dimensions
1
d (\ d" 2 IP fcgr 'M ;PdO)
(5.9)
when p is constant in both z and 0, and X+ and Y+ reduce to X and F , respectively. Applying the same rational function approximation as described in Eq. (4.7) for the square root operator in Eq. (5.7), the following is obtained:
Vi + x+ + r+ s i +1 \x+ -81,V\{x+)2 + iy+ . 2 2
8
2
(5.10) (5.10)
Substituting (5.10) into (5.7) gives uT = iko ( - 1 4- ( l + \X+
- i(X+)2 + i r + ) ) u .
(5.11)
Substituting the definitions of X+ and y + into Eq. (5.11), a partial differential equation is obtained in the form
«, = *,[-!+(l + i {.'(r,»,») -1 + 4 H G I ) ] } 1 f 22 n■ (r,e) , z ) - 1 8 I
+
1 \d d k0
2^^(p^JJU'
'i a\
V%\pdzj
w
(512)
which is the three-dimensional wide angle wave equation with density variations in operator form. Equation (5.12) accommodates the interface conditions in the ocean. Due to the discontinuity of p(0, z) on the interface boundary, the handling of p j j \\lk)dz ) a n ( ^ P~§o 1 1 must satisfy the interface conditions on the interface boundary. To fulfill this requirement, a finite difference technique, suggested by Varga,2 will be applied to treat the interface boundary. Consistent with the theory in developing the LSS model, the index of refraction, n(r, 0, z), satisfies the same assumption that it varies slowly with respect to 0, and the operators X + and Y+ are nearly commutative, thus Eq. (5.11) yields the solution u(r + Ar,0,z)
= e-ses(1+ix+-*(x+f)es*u(rAz)H wi(r,r,0,z) .
(5.13)
Enhancement of the High- Order Wave Equation
83
Again, following the rational function approximations for the exponentials, one can find es(i+ix*-i(x*)') s
and
,u
1+
(i + f ) X + i + (i-f)*+
(5.14)
£y+
«•* - 1 ^
•
<••»>
How to obtain formulas (5.14) and (5.15) is left for the reader as an exercise. Therefore, the final solution of Eq. (5.13) can be expressed in the form u(r
+
X+ (14 Hf) ' 4/
'1ArAz)=(^l^+_f)Xx+^
r ■a 4
4/
Jt+
/ i . £y+ ( l ± iA £ ) « M , z ) . 1- 4 2 1
(5.16)
There are three issues here which need to be discussed: (i) the nonsingularity of both denominators in Eq. (5.16), (ii) the stability of the marching scheme (5.16), and (iii) the accuracy of the theoretical development. Note that X+ and Y+ are different from X and F , respectively, because X+ and F + both have a discontinuity at the interface boundary. This is due to the special numerical treatment for the interface plus the fact that this discontinuity is denumerable so that the continuity conditions are satisfied. As a consequence, X + and y + are both self-adjoining after special discretization and, with pure imaginary £, the two operators in the denominator of (5.16) can be expected to be nonsingular. Then it is seen in Eq. (5.16) that between two brackets the numerator and its associated denominator are conjugate of each other. Thus, their norms are unitary, i.e. these two rational function operators are unitary. Therefore, the marching scheme (5.16) is unconditionally stable. The accuracy analysis can be done identically to Sec. 4.1.1.2 by replacing X and Y with X+ and y + , respectively. 5.1.2. A NumericalcaZ ScSolution A numerical solution to the three-dimensional wide angle wave equation with density variations, Eq. (5.12), can be developed by using the same scheme as expressed by either (4.29) or (4.30), where X is replaced by X + and Y replaced by y + , which are defined in formulas (5.8) and (5.9). Let the symbol r represent either the depth variable z or the azimuth variable 6. Since X+ and Y + both involve expressions in the form p-jfr ( p ^ ) ) which is discontinuous on the interface boundary, a numerical
84
Numerical Ocean Acoustic Propagation in Three
Dimensions
technique suggested by Varga2 is used to handle the density discontinuity on the interface boundary such that the interface conditions are satisfied on the interface boundary. This is the KEY solution to Eq. (5.12) . Write counterpart expressions of (4.28) and (4.29) as follows: EXPLICIT form:
u' +1
■1-1
[» G- 1)M
x (l - ^y+) (l +
6
[14
'1 v4
K
6* X+ 4,
-Y^ u> ;
(5.17)
IMPLICIT form:
1
e -9
)*
6, ) ^ f> > 4°-r
+
= 1+
[ (3 + iH(1
+ y+
+1
J )"-
(5is)
Exactly the same theory with regard to stability used to prove scheme (4.29) for solving (4.7) can be applied for scheme (5.18) in solving (5.12). If p(0, z) is continuous in both 6 and z, no discontinuity can occur and no interface conditions will exist. What is needed is an efficient numerical technique to handle the discontinuity of p(0, z) on the interface boundary. As a direct generalization of the finite difference, described in Chap. 4, Sec. 4.2, for solving Eq. (4.29), a similar numerical solution to solve Eq. (5.18) can be developed in the form PQuj+1
= P*Q*uj ,
(5.19)
where P and Q are to be determined. To determine the operators P and Q, a technique to discretize the operators A"+ and Y+ needs to be introduced to handle the density function p(0, z) which is discontinuous on the interface boundary. Writing Quj+1 = w J + 1 , then solving system (5.19) can be done in two steps, i.e. (i) (ii)
PWJ+1 = P*Q*ui +1
Qui
1
= WJ+ .
and
(5.20) (5.21)
To obtain elements of P and Q, substitute the definitions of X + and F+ into Eq. (5.18), which gives
Enhancement of the High-Order Wave Equation ition
85
{'♦G-9[»'M->-K(£)]} 8 . ds 8 2 p Um e 4k 4k 0r2 de\pde)\ >
l
x
[
= {1+(l + £)[„>, s , 2 ) - 1 + i4(l|)]} a (Lia\
• 1
X 1+
[ J5F"IG^)]<'-
(522)
Dividing both sides of Eq. (5.22) by p gives
fi . /i _ £^ W(r,e,z) i a fi d\n +
\p
X
\4
4)[
kldz\pdz)\]
[1 _iJ_d_ fld_\] i+i [p 4klr*d9\pd6)\Um'1
r.i
/I
u a ri x
+
p
i
[n2a(r,tf,z)
6^
*
* I
1 3 fld\ a_>
k% dz \pdz)
P
d (i d\\
,
,gM.
+
[ p iIFw (,*)]<«■
(5 23)
-
The major concern is how to treat J j ( ^ Jj)- No difficulty is anticipated in handling ^^u3^]i+i which can be treated by a finite difference discretiza m,£ tion, i.e.
1 I | dV-u+j+i) pdz
=
11 _ ni+i) . ph ( « £ M
I * (yi+i
-<1)
(5.24)
To partially differentiate J j ( - J j ) requires a special treatment because the operand, ^ J j , is discontinuous on the interface. Here is where Varga's treatment is applied.
86
Numerical Ocean Acoustic Propagation in Three
a (id- a uj+1 dz \pdz) Uz)
n a>
1
h [\pdzjm+l_e hi 1 f\
i
r M Pm++ U
i
Dimensions
n a\pdzj _ \
[7.
ULf i+l m+1,£)
Uj+1
m ie 1>
»sjOJ
(u:„i+
- fe [(«»),-(^)]} - —
1
(uj+1 u
- h» [ p m + h t { ™+^
-
u
uj+1}
™><)
"TJ—«1-<+-M)1 •
( 5 - 25 )
where the numerical subscripts indicate the medium. In view of the continuity of pressure on the interface,
1 ■fl tt;.J+ i,£
(u;»i+!^
/l
f.^'+^ W j '2
Making use of (5.25), one can go back to (5.23) to discuss how to solve the system and how to determine the elements of P and Q. The system is solved by two steps given by Eqs. (5.20) and (5.21). The task here is to determine the elements of P and Q. System (5.20) can be represented by the left-hand side of (5.23) where
^+(H)p^Hiei)i «*> and
^+i - [I _ * J_ A (i£\\ ui+i w -[pLP 4kydo\pde)\Um>eA finite difference discretization of formula (5.25) gives
(5 27) {b zl}
-
Enhancement of the High-Order Wave Equation
87
7+1 Pwj+1
, fl
(1
6\[n*(r,e,z)-l z) -1
-\p + U 4 J [ _ [l " L2
1 KPm+i,i
I 2
& /i
+
2
/I ,4
+
p
1
i1
^ 22
P m~h^ -i,^
6s
1 d /ia\ll
2 6s (n n+J - 1 I m-
ri
u
1
47
1
4 ; \Pm+J,<
+1
kldz\pdz)\r^
KQ
n2 x m—7j
-v
pm-\,t U
Pm+\,l \W .i+i 'm,/
Pm-\,l
W(^9(^<- + ^ ^ ) '
(528)
where n ^ + i is evaluated at n 2 [r, 0, zo-h(mH-|)Az] and n ^ _ i at n2[r, 0, z0 + (m-I)Az]. Then the elements of matrix P can be described as below.
Upper diagonal:
1 /I £> 1 -^-r2 I - - - J , fcg/l 4 4, Pm 2 > *
Main diagonal:
1 1 - [ 1 ) PmPm-\tl) 2 \Pm+±,£
7
1 _i_
f\
6\
2 \4 (I
klh? 4 Lower diagonal:
-l
JL 4J \ Pm+lt *
_
1
n2
m
^ 4;
1 / m + J ,*
1 1 6\ - ^ -2^ /fI7 - 7 J . ifcgft ,4 4 // Pm m+\,l:,£
It can be easily seen that the matrix P* must contain
n2
- P
_i
m-
2
Pm-l,t 1 Pm-J
■
,
*
J
88
Numerical
Ocean Acoustic Propagation in Threee DDimensions
1 k*h
(I
6^
U
4/
P™
1
1
Upper diagonal: - ^2 f - + - ) 1
1
Main diagonal: - I
2 \Pm
r 2>
t
1
, 2 >*
1
Pm- >-*,<,
n2
2
2 .4
4>
Prr
2 'c
1 2 1\4 (\. 4J ^\ Pm+\,t
k20h?
.4
n,4
4/
\An
klh?
4
1
»
-
*
■
2 >*
Pm1-i,e
}
Pm--\*)
2't
1klh2 \4 ^ 1) \p 1 m+i,e
Lower diagonal:
-1
mPm-
Pm-\,t)
Pm
1 f 6\ 1 2>* Lower diagonal: -r^—r 7 + 7 . k$h2 V4 4 / p m + i ) £ The elements of matrix Q can be determined in the same way. System (5.21) can be rewritten below,
ri <5 J_2 r 3 ' 1 au U ; fcgr d 0 \ 50, LP 44kyde\pde)\
u
J+i «-
,J+i
~ww
•
(5 27)
-
A finite difference discretization of formula (5.27) gives
A finite difference discretization of formula (5.27) gives QuJ+i W
£0
ri " [p 1
1
2" / m ,
,*+*
6
'1 5
u«.i+!
4 fcgr de \f ae 4k*r*d6\pde)\
m,£
2
LP»
44
5
11
1
1 Pm,
*
1
m1
'
^'+!
2
f klr fcgr' (A*)» Aoy [Pm,eH
u
Um i+1
'
{pm>e+i -I + Pm,e-$ ) %m<1 2
+ VJ — < l - i • Pm,l-\ J Then the elements of matrix Q can be described below:
(5-29)
Enhancement
Upper diagonal: Main diagonal:
of the High-Order
1 1 6 1 - f ^~2 r 2- ^ - 22J L 4 ^ (A(9) P™ •* 1 - [ 2 \Pm>i+$
1
, 2
_ L
I
PmPrn,l-\) y
t^_L 1_ / 1 + 4fc 2 r 2 (A0) 2 \pmMi+pmMi) Lower diagonal:
-
6 1
89
Wave Equation ion
1
1
TTHTTMO
1
\
Pm,£-\
'
2
•
4fc2r2(A0)2pm^+i
The matrix Q* should contain the following elements: Upper diagonal: Main diagonal:
1 - -j-^ —— , 4fcgr 2 (Ar) 2 p m ) £ _i 1 - ( 1 2 \Pmt£+i 2i _6_1 2 2
)
PmPm,i-iJ
1
4fc r (A0) Lower diagonal:
1 / 2
1
1
+
\
\pm,t+l Pmj+l) X-
1 "2
'
1 1 -yrr, >2 . 4 f c 2 r 2 ( A 0 ) 2 p m ^ + "2 i1
Prom the information of upper and lower diagonals of matrices P and Q, it is not easily seen that both matrices are self-adjoint. As an example, an examination of matrix P on the interface boundary (indexed by m) reveals that
Pm
-^ = W?(\-i)^rr
p +
™ ^ = w (i" 9 ^
•
(5 30) (5.30)
-
{5 31)
-
Note that the element above the interface boundary m is
P
— = ^ U - 4J ^
'
(5 32)
-
90
Numerical Ocean Acoustic Propagation in Three
Dimensions
and the element below the interface boundary is Pm,m+l
like
1
= ^klh? ( I - ! )1 _ i _ . Pm-\-h*
(5.33)
It is seen within that small block that a portion of the matrix P looks
/
\
•
Pm,m-1
•
Pm-i,m
•
Pm+i,m
•
Pm,m+1
•
\
<— interface boundary m . /
We use the analysis below to relate these four P elements. Let the interface index be m. For every fixed range index n and azimuth index £ within a small neighborhood block with respect to the interface, the elements of matrix P are given by (5.28). Regarding p m , m as the center point, it is seen that the coefficients associated with the matrix elements have the following density dependence: Pm,m—1
involves density in water {prn_i^),
Pm m + l involves density in water (pm-i
designated by pw ?
/ ) , designated by pw ,
Pm- l,ra involves density in water ( p m + i €), designated by pB ,
Pm-i,m involves density in water ( p m _ i £), designated by pw , involves density in water (p m +i £ ), designated by pB , water where subscript where subscript W of p indicates that the density value is taken in water above the interface, and B of p indicates that the density is taken in the bottom, which is regarded as being below the interface. There, it is seen that the matrix P is still self-adjoint. The same analysis can be applied to show that Q is also self-adjoint. 5.1.3. Theoreticalzal Ju Justification In order to validate the numerical solutions (Eqs. (5.20) and (5.21)) to Eq. (5.12), one needs to discuss (i) the interface conditions, (ii) the numerical treatment of discontinuities, and (iii) the theoretical justification of the numerical treatment. This section is devoted to discussing the above three issues.
Enhancement of the High-Order Wave Equation
91
5.1.3.1. Interface conditions The symbol "+" is used as superscript to indicate the medium below the interface; "—" is used as a superscript to indicate the medium above the interface. In the ocean, a layered medium can be created by the changes of sound speed and density structure which are affected by temperature, salinity, and pressure. Thus, the layered medium forms an interface, i.e. a kind of boundary that is often referred to as an interface boundary. Continuity conditions must hold on the interface boundary even if both the sound speed and the density function are discontinuous across the interface. The interface conditions required on the interface boundary are (i) the continuity of pressure and (ii) the continuity of normal components of particle velocity. Since solutions deal with three dimensions, these interfaces are possible in all directions, therefore, these continuity conditions must hold at every arbitrary interface boundary. As a simple illustration, Fig. 5.1 shows a simple plane interface boundary where p is the density function and C is the sound speed function in two different media. Medium 1: u~, pu Cx _. ,. — — Medium 2: n+, p2, Ci
. , r , , interlace boundary
Fig. 5.1. Simple interface boundary.
On the interface boundary, the first interface condition requires the continuity of pressure, i.e. u+ = u~ . (5.34) The sound interface condition requires the continuity of normal components of particle velocity, i.e.
. du n \-p8N)
(\ du y
={-pdN)
'
(535)
where ^ means normal derivatives. To solve Eq. (5.12) by means of scheme (5.22), it is valid to use a two-step scheme, i.e. Eqs. (5.20) and (5.21), for the density function p(0,z) which is continuous in both 0 and z. Using Eqs. (5.20) and (5.21) to solve Eq. (5.12) is still valid even if p(0, z) has discontinuities across the interfaces in both 0
92
Numerical Ocean Acoustic Propagation in Three
Dimensions
and z planes because the above numerical technique is designed to handle specifically on the interface boundary. However, justification of such validity needs to be discussed. 5.1.3.2. The numerical treatment of discontinuities In deriving a numerical finite difference scheme to solve general second-order ordinary differential equations, Varga2 discussed the problems of using such a numerical scheme because it can handle the discontinuities in these variable coefficients. In many problems that arise in science and engineering, the function contained in the representative equation may only be piecewise continuous and actually has finite number of discontinuities in the interval of interest. Such phenomenon occurs in many branches of science and engineering, for example, the interface problems for layered media in ocean acoustic propagation where the function in the representative equation is a density function expressed by p(0,z). In deriving a numerical finite difference scheme to solve ocean acoustic propagation problems involving interfaces, it is assumed that u(r,0,z) and p/g1z\^ du are both continuous in W?) dr * the intervals zrn_\ < z < zm+i and 6t_\ < 6 < 0i+i. The techniques introduced below particularly match the interface conditions in a small neighborhood of the boundary. Since the interface conditions require the continuity both in pressure and in normal component of particle velocity, the assumption of both u(r, 0, z) and ( J z ^ | ^ being continuous in the small interval of interest is legitimate. Here the dummy variable r is used to represent either 9 or z because the same treatment is applied to handle both d u | d u- ^ n e assumption of - | ^ being continuous Plk \hlk) u« anc * P§o . The 80 do in the interval of interest implies that
<\ du\\ + \p ( dr
(I du^ \P or,
(5.36)
at all interior points r^-i < r < r»+i. The + and — symbols are right- and left-handed limits, respectively, and the equality (=) in Eq. (5.35) matches the conditions on the interface boundary. Observe that (5.36) is (5.35), which is the second continuity condition on the interface boundary. Note that in Eq. (5.25) and the statement below it, the treatment already made use of the first continuity condition on the interface boundary. With regard to the numerical treatment of discontinuities, attention is called to focus on Eq. (5.25),
93
Enhancement of the High- Order Wave Equation ation
d <\ d u'+1 dz dz■ \p<\pdzj dzj _ J_ 1 / j+i _ j+A m-\ 1,1 m,£ J /I |Pm+J,/ ^ '
1 / j+i _ j+i \ l m-l,e V m,t P m -J f * 'J
( 5 25)
where the first interface condition was applied. Justification is needed to show that this treatment also fulfills the requirements of the second interface condition, which will be discussed in the next section. 5.1.3.3. Theoretical justification of the numerical treatment An integration of -J^ ( - § 7 ) over the interval z m < z < zm + ^Az as well as0i<0
z
-+i y fldu f d(ldu\ J ^]dr / dr ,Pdr/
fldu\ f\du\ pdzj m+\,l
f
ldu^+ (\du\ ,pdz,
,ro_ (5.37) m,t
m
and 7 i+ + i *<
f dd f\du\dus dr ,pdr
l
Ot
,
dr
ldudu" fldu\ pd6y m,l+\
+s (ldu\ (I du
\P W.
+
, .
rno (5.38)
m,£
Similarly, an integration of ^ ^ § 7 over the interval z m — \&z < z < zm as well as 0t - | A 0 <0 <0e gives
(539)
7£e£)*"esL-e£U -
2 m-J 1
and
/ies)-es);„-G£L. r <«•»
94
Numerical Ocean Acoustic Propagation in Three
Dimensions
Adding (5.37) to (5.39) gives z
" + i1
d 'Idu dr\pdr) 0 r ' Kpdr)
J/
drT ~
(\\du [\pdz)mti '
'\ du \p-i dz \pdz) j m,£] m£\
m,t
m— ^
+ (I£)
_(!*) m
.
m-
\-h*
2 >*
(5.41)
1
(5.42)
Similarly, adding (5.38) to (5.40) gives e
t+i
/J
"<-i
+ / i du , \Pd9)m,t\ ,pd9, m\
(I
d fl . du du dr T dr{pdr) ~[\pd9) dr ,pdi~, mtt' m,l \P dOJ, x
+
'1 0UN
(I 3w
' m,l+ * \pd9Jm,e+i
XpMJmj-i'
" 2
In view of the second interface condition, (5.35) or (5.36), the terms inside the square brackets in both Eqs. (5.41) and (5.42) vanish which implies that Z Z
m+J m+J
J/
a
i a«\ (l 3^' dr T dr\pdr) ~\pdz) ^ Pm+^ ^>e
7n-
vh*
/ Il d u ' \pdz) ' ,pO«y m_itlm-±,«
. ^ (5.43)
Z
rrx-\
0l+l
a /ia«'
J dr\pdr) ar p 5 r y «M
' 1 , a«^ drT ~\pde) . prni^^_;/ m,£-
1 '2
/ ILdu [pdej^i \pd6)
'~i *
m,i—
Therefore,
n
d_ fldu\ dz \p dz J
= I \(l±) h
•+i.^
- (1°.)
/ m-
[\pdzjm+ie
1 1 ft2 [Pm- 2 ' *
u
7+1
n+l,l
\pdzjm_ie\ 1 " - uJ+ m,i)
1 u^ 1
Pm-
-.i+i u 2»*
..3 + 1
'..<)
^ ^ (5.44)
95
Enhancement of the High-Order Wave Equation
which is exactly formula (5.25). Similarly,
d_ (ldu\ 89 \pdO) 1 i 2 2 ;A0) ' [Pm ,e+i
(
■uj+j
1 Pm,t-
l 2
«l
u;j +• i-■ j
1
I (5.45)
Note that in order to derive formula (5.25) and (5.45) the first interface condition must be correctly applied. The above density treatment describes the handling of the case of a horizontal interface, i.e. the normal derivatives in interface condition (5.35) are treated as d/dz or d/80. Upon examination of the irregular interface, one can apply piecewise linear approximation to a curved interface with a sloping angle <\>. Then the normal derivative (say outward) operator can be expressed by
(546)
m = §-zC0S-Trsirut>■- sin ^ .
The second interface condition for curved interface would read flM dm ~ \Pi dr
1 du2\ . 5— cos<£p2 dr ) ( 1 <9^i dui 5 >Pi dr
/., 1 \ (\ Ui [ik0 - — —ui \ 2r J \pi 1 du2\ . £ - sin* = 0 .
1 \ . . u2 sm
P2 dr
. v (5.47)
It can be seen that when the interface boundary is flat, i.e. when sin <j) = 0, condition (5.47) reduces to
1 du\ 1 dui - - ! - - — i = 0.
5.48
pi or p2 or This is the treatment used in the present development. When the curve interface is not flat, the appropriate second interface condition (5.47) should be used for better adequacy. In this volume, the condition (5.47) is not incorporated fully. For a small sloping angle, the second and third terms of Eq. (5.47) are small and negligible. This is the approximate treatment of density variation in the present model. 5.1.3.4. Enhanced computer code FOR3D with density variations Computer code FOR3D is modified accordingly to produce the capability of handling density variation on the interface boundary. Inclusion of the
96
Numerical
Ocean Acoustic Propagation in Three DiDimensions
capability is to modify elements lying on upper, main, and lower diagonals of matrices P and Q as described explicitly below Eqs. (5.28) and (5.29). For an accuracy check, see Chap. 6 of this book for validation of this modified computer model (FOR3D). Proposed Problem 5.1 Does another technique exist that handles the density variations more efficiently than the present one? If the answer is "yes," (i) describe the technique, (ii) show its advantage(s) over the present technique. If the answer is "no," explain why not. 5.2. Enhancement of Computation Speed In view of the large-scale three-dimensional problem, even with supercomputers, the ocean acoustic propagation problem can only be solved partially. 4 Moreover, the eventual goal is to solve sophisticated ocean acoustic propagation problems in real time. The realization of this goal relies on computation speed, computer memory capacity, and the physical size of the computer. This section is devoted to discussing how to improve the computation speed by means of high-order numerical schemes. The advantage of these high-order schemes is that they allow the use of a larger step size than low-order schemes and, thus, improve the computation speed and save memory capacities. There are a number of ways to improve the computation speed. However, a few ways can improve the speed which after the improvement, either cannot be improved further or can be further improved but requiring a great deal of effort. Our considerations to improve the speed deal with these possibilities: (i) relaxation of the accuracy requirement, (ii) hardware, (iii) skillful implementation, (iv) adaptive schemes, and (v) numerical schemes which allow the use of a larger step size. Accuracy is the keyword in the entire model development of this book and a minimum two-digit accuracy requirement was already taken into consideration. Therefore, no further relaxation of the accuracy should be allowed. It is true that the advancement of computer hardware is moving ahead constantly. However, the improvement may take time to become a realization and it may not be immediately available. Moreover, it is
ion Enhancement of the High-Order Wave Equation
97
uncertain how big the improvement will be due to newer hardware. The possibility of new hardware should not be an immediate consideration. Implementation of a numerical solution into a computer code is done when the solution is final. Often modifications of a numerical solution involve reprogramming. The skillful effort spent to implement the solution may be in vain or may require more effort when the program is not final. The efficiency of adaptive schemes should be a serious consideration. Adaptive schemes are attractive and should be applied when the model is final. All these analyses lead to one choice at this time, i.e. the numerical schemes, because they allow the use of a larger step size. The numerical scheme introduced in the previous section is of the Crank-Nicolson type which is second-order both in the depth (z) and azimuth (8) directions. The next economical numerical scheme to be introduced is of fourth-order accuracy in both z and 9 directions. Due to an efficient procedure to carry out the computation, the overall structure still solves two tridiagonal systems of equations, thus only increasing a limited number of computations in generating matrix elements. Due to maintaining of the marching solution structure, the modification of the FOR3D to include such improvement is not considered difficult nor does it require extensive effort. A possible computation speed improvement not included in the above possibilities is the specialization of the algorithm under a special environment such as the range-independent case. This possibility will be discussed in the section on recursive formulas for solving the tridiagonal system of equations. 5.2.1. Differential tial and Differenceice Op( Operators Let D b e a differential operator such that Du = (d/dz)u , and Sz be a difference operator such that 6zu = um+i - um , where the depth (z) direction is chosen arbitrarily, and the finite difference is a forward difference. It is important when a numerical finite difference scheme is developed to solve a partial differential equation that the relationship between a differential operator and a difference scheme should be established. A good development of such a relationship can be found in Lee and McDaniel.1 In brief, such development considers both operators obeying the definitions above. The relationship is found to be
98
Numerical Ocean Acoustic Propagation in Three
D = lsmh-l6f,
Dimensions
sz
(5.49)
2
where h = Az. Exercise: Prove identity (5.49). (Hint: Consider Szf(z) f (z ~~ f)> * n e n u s e Taylor expansion upon z = 0.)
= f (z + f ) -
A series expansion of sinh - 1 4f- in Eq. (5.49) gives
D
-\{'--£ifi +£*?■—) ■ <"°>
Then
1 l 1 61 2 :«JH h 90<£ 12 "-P^-^B*-")D2
(UI)
Expression (5.51) can be written approximately as £>2
1 fc2l
S22 -ad2 '
(5.52)
for the time being a remains a parameter. As to the application of the operator D of different orders, consider the parabolic equation du d2u Lu . (5.53) dr dz2 If Eq. (5.53) is treated as a first-order ordinary differential equation, it has a solution in the form u(r + Ar, z) = eArLu(r,
z) .
(5.54)
Using a Pade (1,1) to approximate the eArL and solving (5.54) implicitly, the numerical scheme becomes (l - \&rL)
un+1 = (l + \^rL\ L
un ,
(5.55)
where L = D2. Equation (5.55) becomes
(l - \^DA
un+1 = (l + \&rDA un .
(5.56)
Enhancement of the High-Order Wave Equation ation
99
If a second-order scheme is used, D2 = ^62z which brings (5.56) into 1 -Ar (( ' 1" 2-* ^ / i,)22
U
„n+l
U
2/
+
I
1 +'
= (•
l1 . ■ 1! Ar- 2 ^22" )ft
*
z/
un . -
(5.57) {5 57) -
This is known as the CRANK-NIC OLSON scheme. If a fourth-order scheme is used, one may use formula (5.52) to obtain
u
i 1 -Ar 2 ft2l
*2
^v
.1-+1
).'
1A 1 \r
^
).-. ' + -A,'h? 1- <*%,
(5.58)
where a — ^ . Note that a takes on only two values: •— if a fourth-order scheme is chosen or zero if a second-order scheme is chosen. Scheme (5.58) is a Crank-Nicolson scheme if a = 0 and a Douglas scheme5 if a = ^ . Now the following operator definitions with respect to (5.52) were obtained:
D% 1
-h ^ , •
/i2
a
{
0 1 —
<5 52 »
(5.52)
(Crank-Nicolson), (Douglas) .
The sample equation (5.53) used here for discussion is a two-dimensional (range and depth) case. The stability of scheme (5.57) has been proven in most numerical analysis books. A clear, easy-to-follow proof can be found in Ref. 1. The stability of scheme (5.58) can also be found in a number of numerical analysis books. (For details see Ref. 5.) Proceeding forward the sample equation describes how to apply the Douglas operator to solve the LSS equation, Eq. (4.7), including the discretization of the finite difference scheme, the stability of the scheme, and the size of the improvement. IS 5.2.2. The Douglas
Si Scheme
In this section, discussions will be given on how to construct the Douglas operator, the stability of the Douglas scheme, and the matrix structure of the Douglas operator. 5.2.2.1. The Douglas operator Recall that the three-dimensional wide angle wave equation takes the form in operator notation,
100
Numerical Ocean Acoustic Propagation in Three
ur = i t o [ - l + ( l + i x - i x where
r =
1
+ M j u ,
(4.7)
d2 +± ^ 2 kf
X = n2(rAz)-l and
2
Dimensions
(2.18)
d2
(2.19) (2 19)
ifcp^2'
'
2
Relationship (5.52) reveals that the differential operator D is related to the difference operator 62 in two different ways depending upon what value a takes on. Therefore, a distinction has to be made between the Crank-Nicolson operator and the Douglas operator with respect to D2. Writing explicitly the Crank-Nicolson operator, the definition of the X operator becomes X = n2(r,6,z)-l
+ 1 ^2 S 2
kh'
(5.59)
l ,
and
Y
= WW?6''-
(5 60)
'
The corresponding Douglas operators can be defined as 1 s2 J f - „ * < - , » . , ) - 1 + ^ 2 2j ^ g 2 k h '. ¥a6 and Y
(5.6D
1 1 61 2 2 kfcgr r {M) l 1-+ a8 ' [Aey asy
(5.62) (5,62)
2 22
=
where a = ^ . Therefore, the three-dimensional wide angle wave equation in the operator notation, with respect to the solution by the Douglas scheme, becomes ur = ik0 j - 1 + [l + \xd - ±(Xd)2 + \YA I u . (5.63) (5.63) The marching scheme, Eq. (4.29), developed to solve Eq. (4.7) uses the relationship (5.61) for -^ and (5.62) for J^ with a = 0. When the Douglas operator is applied, relationship (5.61) still holds for Jp- and (5.62) still holds for ^ 2 where a = ^ . 2
c2
,-»2
>»2
Therefore, substituting -fa by ^r1+±S2 «2 and 552 ^ by ^ p - 1 + j _ g 2 into scheme (4.29), one obtains the Douglas scheme for solving the threedimensional wide angle wave equation which is
101
Enhancement of the High-Order Wave Equation
1+ 2M,2) 1 +
[ 4
- ^rry]
1 Q Jfc2r2
('
=[
1 A 09) )2 2 1 -
% <*%.
«?
1+p n2(r M) 1 +
(
x 1+9
(
u.n+l
' -
^TT^f)]
fc0i
^(WrrW)un-
(5 64)
-
Note that when a = 0, (5.64) reduces to (4.29) using the Crank-Nicolson operator. Multiplying (1 4- a82z) and (1 + aSj) on both sides of (5.64) and simplifying, Eq. (5.64) becomes | l + p[n2(r,9,z)-l]+(a+ 1
•
■q-
1
r. 1
2
fcgr
= [l + p[n2(r,0,z)-l]+(a
M)\
1 p-^j P • 2 /> 2
62z + pa62[n2(r,6,z) *) - 1]]
Si ut n + l a +p
1 ^
2 2
fc /i
\ b\ + pa622[n2(r,6,z)*) - l]j
X 1+ a +
[ ( ^(w)^]ttB'
(5>65)
The right-hand side of (5.65) is denoted as RHS. The solution of (5.65) can be carried out in two steps, i.e. (i) [ 1 + p[n2(r,6,z)-l]+(a
2 2 2 a + p - 2 ^2 \ S + pa6 2[n (r,6,z) fc fr
= RHS
- 1]] wn+1 (5.66)
and (ii)
[1 + ( " + » £ ( S > 0 *]•""■"""■
<56T)
'
102
Numerical Ocean Acoustic Propagation in Three
Dimensions
5.2.2.2. Stability As n(r, 0, z) is a function of z, the resulting matrix operator in step (i) will not be symmetric; this will be seen later after the matrix operator elements are tabulated. But the resulting matrix operator in step 2 is a symmetric matrix. This makes it easy to see that [(1 4- qYd)~1{l 4- qYd)] is a unitary operator. However, it is not easy to see that [(l-\-pXd)~1(l-\-pXd)] is also unitary without clear proof. This is the main part to prove the stability of marching scheme (5.64) after 62 and 6$ are carried out by finite difference expressions. When D2 is related to Crank-Nicolson operator 82, it is easily seen that d X has real eigenvalues because 82u is discretized into a symmetric matrix. An examination of whether Xd has real eigenvalues or not needs to be done. Excluding the surface and bottom boundary points, it is seen that [-2 1 0 ... 1 - -22 1 ... 0 1 - 2 ... S2zu = \ 0 0 L 0
0 0 0
0 0 0
0] 0 0 \u
• 0 0 0
0 ... 0 ... 0 ...
(5.68)
-2 1 0 1-2 1 0 1 —2j
which will result in a symmetric matrix; therefore, 62 is symmetric. Since 1 and a are scalars, (1 4- a82)u only appears in the diagonal elements of (5.68), therefore, (1 4- a62) is also symmetric, i.e. (1 + ad2) symmetric —► (1 + otb2)-1 isis also symmetric. Based on the fact that 82 commutes with itself, then (1 + a ^ ) " 1 ^ = 62z(l + aft-1 Therefore, (1 + a82)~l82
.
(5.69) (5.69)
is symmetric and has real eigenvalues.
The above properties imply that (n 2 (r,0, z) — 1 4- ^ r 1 _ t _ ^ 2 j is sym metric and has real eigenvalues, therefore, Xd has real eigenvalues. Conse quently, the norm of (1 -\-pXd)~1(l + pXd) is unity, thus establishing the stability of scheme (5.64) for solving (5.63).
Enhancement of the High-Order Wave Equation
103
5.2.2.3. Matrix structure To determine the matrix structure, one should look at (5.66) and (5.67). Expressing (5.64) as PQu^1 = P*Q*un , (5.70) the two-step solution to (5.70) corresponding to (5.66) and (5.67) involves (i)
Pwn+1
= P*Q*un
(5.71)
Qun+1 = wn+1 .
(5.72)
and (ii)
With respect to the left-hand side of (5.71) the expression is exactly the left-hand side of (5.66), which is
l
(l+p[n2(r,e,z)Az) - 1] + ( « + P * 4 » ) 62z+pa62z[n2(r,0,z) *) - 1]) wn+1 , where 1 + p[n2{r,6,z) — 1] operating on vf^} will determine only the elements appearing on the main diagonal and (a + P j ^ ^ ) ^ ^ 4 " / will determine elements not only on the diagonal but also on both the upper and lower diagonals. In addition, pa62z[n2(r,e,z)
- 1 ] < # = i » { [ n a M , * m + i ) - % ; \)w^t 1 -2[n2(r,e,zm)-l]w^l-1)W. .."+ m,t
2 2 + [nai(r,,0, Zm[n-1) (rAzm-i)-l]wl+\i) >
(5.73)
Then the matrix elements associated with the P operator should contain the following. Upper diagonal:
pa[n2(r,0, z m + i ) - 1] + f a + P p r j ] = d(z) ,
klh\
Main diagonal: 1 +p[n2(r,6, zm) - 1] - 2 (a + p-j^) k20h?
Lower diagonal:
pa[n2(r, 6, zm-i)
- 2pa[n2(r,8, zm) - 1] = D(z) ,
- 1] + ( a + PTJT^ ) •
klh?;
104
Numerical Ocean Acoustic Propagation in Three
In expanded matrix form Pwn+1 f" D(*i) d(z2) c£(z!) £>(z 2) 0
0 d(z3)
d(z2)
D(z3)
...
looks like
0
...
0
0
...
0
0
0
0
1 [" WJ+1 1
I
o
o
... D(zm_2) ^ m - i )
[" d(z0)w^+1 1
°
"^t1
°
°
W
°
X
3*
: o
Dimensions
o
+
:
hCtV* 1
°
0
0
0
... d(z m _ 2 ) £>(z m _i) <£(zm)
U^t !^
0
0
0
0
...
L ^mT/ J
L ^ ^ + l^m+VJ
0
c£(z m _!)
D(zm)J
(5.74) The nonsymmetric property of matrix P , mentioned earlier, can be seen clearly from the above matrix structure. With respect to the left-hand side of (5.72), the expression is exactly (5.67) which is
[ 1+ ( a+ *^^)*]-
(5 67)
-
(1 + a6j) operates on um*} and determines the elements appearing on the main diagonal; (a+Q-^2 (Ae)2 )^eum+i W1^ determine elements on the upper diagonal, the main diagonal, as well as the lower diagonal. Thus
Q
1
ky
1 (A0) 2
tf
:
4
1
1
^
n x + ^»**+! n,*+l ' -2^uX m,-£ fcgr2 A0) 2
..n+1
-14lm l-lj y
. (5.75)
Then the matrix elements associated with the Q operator should contain the following. Upper diagonal: Main diagonal: Lower diagonal:
a + q-^
1
1 -—^
2 fcgr* ( A0)
1 - 2 (a + gfc2?,22
fcgr
(Ag)2 2)
1 j ^ . fc2r2 ;A#) 2
a + q-^
1
= g(r) ffM ,,
In expanded matrix form, Qun+1 looks like
A0)
= G(r) G(r), ,
Enhancement \G(r)
0
g(r)
...
of the High-Order 0
0
105
Wave Equation
0
l L ^ l
I" g(r)u^
1
°
g(r)
G(r)
g(r)
...
0
0
0
u"*
0
g(r)
G{r) ...
0
0
0
u ^
j
°
(5.76) 0
0
0
. . . G(r)
0
0
0
... g(r) G(r) g{r)
L °
°
0 ...
0
g(r)
0
K#-2
°
K # J
°
g(r) G(r) J [ *»+/ J
L^)<"/+iJ
The matrix expression in (5.76) is symmetrical and is a function of the range variable r. In addition, this matrix has Toplitz structure, i.e. there exist scalars r _ n + i , . . . , r o , . . . , r n +i such that gij = rj-i for all i and j . 6 In the foregoing section, when the density variations in both z and 6 directions occur, matrix expressions will no longer maintain the expression as in (5.74) and (5.76). Instead, elements in P and Q are functions of density and sound speed on the interface. Prior to further developing the capability of density variation, a specialized tridiagonal solver will improve the computation speed of system (5.71) and (5.72). nal! Sc 5.2.3. A Tridiagonal Solver In developing the numerical solution of the three-dimensional wide angle wave equation, a scheme must be designed to solve two tridiagonal systems of equations. The solution of a tridiagonal system is by means of a recursive formula.7 In describing the recursive formulas to solve any tridiagonal system, Carnahan et ai7 assume no symmetry. In general, the tridiagonal system to be solved takes the form [ 6i ci 0 ... ai
0
0
0 | [ «i 1
&2 C2 . . .
0
0
0
\ 0 a2 b3 ...
0
0
0
w
; 0
0
0
0
0
0 . . . ajv_2 &w_i cw_i
0
0
0
...
2
<^2
u3
d3
;
0 . . . &JV-2 cN-2
0
«iv-i
bpf
u
[ dx 1
=
;
iV-2
d.W-2
Ujv-1
d/v_i
UN
djsf
•
(5-77)
As reported in Ref. 7, the recursive formulas to solve a system of N x N equations, such as (5.77), are
106
Numerical Ocean Acoustic Propagation in Three
Dimensions
UN = OLN , CiUi+i -
Ui=OLi
,
Pi
Pi = 6l ,
aya2Cl
R 2 h P2=0
PN-I
=
-5— , Pi
ajsf-iCN-2r - 2
ON-I
Q
PN-2- 2 (INCN-1 Q
PN — ON
,
,
N-l
PN-I
and and
di
Oil
Pi
a2 =
OLN-l =
«iv =
C?2 — Q>2&1
—ft-'
rfiV-1 -
J=
dN-lOLN-2
N-l
dN -aNaN-i N-l
^
, /K 7 o \
.
PN
(5.78)
A count of the number of operations for solving system (5.72) in terms of addition (+), multiplication (*), and division (-r) can be summarized by Table 5.1. Table 5.1. Total operational counts. Component
No. of operations
+
fi
N -1
a u
N-l N -1
Total
3(N - 1)
*
N-l N-l N-l 3(N - 1)
_^ N-l N N-l 3N-2
Enhancement of the High-Order Wave Equation
107107
The number of operations in computing the above recursive formulas can be reduced by taking advantage of the properties of matrices P and Q. Matrix P is symmetric and all the elements are equal on the upper and lower diagonals. In addition, the Q matrix is Toplitz. These properties would imply that a = a,i = c for solving the first system. In addition, these properties plus b{ are all equal in solving the second system. Thus dividing both sides of (5.77) by c and writing B{ = b{/c and D{ = di/c, the simplified system of (5.77) becomes
\Bi
o ...
o
o
o 1 [ ui 1
1 B2 1 ...
0
0
0
w2
D2
1 B3 ...
0
0
0
u3
D
0
l
! 0
0
0 ... BN-2
0
0
0 ...
[ O O O . . .
[ Z)i 1
=
3 !
1
0
UAT-2
U>JV-2
1
BJV-I
1
Ujv-i
A/v-i
0
1
Bjv J [ u*r J
■
(5.79)
L ^ J
A modified recursive formula of (5.78) to solve system (5.79) can be written as
UN
= OtN ,
Ui = ai Pi=BlBi ,
U{.
— , Pi
fa = B2 - i - , Pi
pN-l = PN
BN-1- l
— o
1
fV-2 &N-2
= BN - —
1
N-l PN-I
,
,
108
Numerical Ocean Acoustic Propagation in Three
Dimensions
and D1 Hi D22 -Oil -ai
ai 0L2
fo
OLN-1 =
aN =
DN-1
— OtN-2 n > PN-1
DN
OLN -1
PN PN
.
(5.80)
The set of recursive formulas of (5.80) can be rewritten in the following way, if one writes ai = \/f3i\ UN
=
&N
,
Ui = ai — iii+i • ai ,
Pi = Bi , $i = B2 - a\ ,
PN-I
=
BN-I
— aN-2 ,
/?# = BN - CFN-I ,
and ai=Di-a1i -
«N-1
= (DN-I - l - OLN-2)VN-I
aiv = (DN - aN-i)
,
(5.81)
A careful examination of the recursive formula (5.80) and (5.81) where, for example, a\ = D\/0i goes to OL\ = D\a\, shows an increase in the number of operations. The term Di//3i requires only one division while D\a\ — Di(l/Pi) /M requires one division and also one multiplication. If one can precompute cr^, fa and store for subsequent use, one would only pay the
Enhancement of the High-Order Wave Equation
109
cost of multiplication operations to compute "iV*" and "iV-f-" for the entire range interval for the system involving P. If matrix P is constant in range, at every range step, it is not necessary to reconstruct P , in particular, it is not necessary to compute Pi and trf-. Tables of operational counts are presented in Table 5.2, one for system Pwn+1 = RHS and one for Qun+1 = w n + 1 . Table 5.2. Total operational counts. pwn+l
Component D a u l/c b{ * l / c
No . of operations
+ N -1 N-l
N N N-l 1 N N
l/fc
Total
2(N - 1)
Qun+1 Component D a u l/c bi * l / c <Ti =
- RHS
=
4N
wn+1
No. of operations
+ iV-1
N-l
*
-7-
N N N-l 1 1 N
1/Pi
Total
N+l
-1
2(N - 1)
3N
N+l
At the initial step, N multiplications are needed for computing l/c, fa = b{* l/c, and &i = 1//3;. But in solving the system of the second step, (N — 1) multiplications are saved from bi * (l/c) because the B matrix has the Toplitz structure.
110
Numerical Ocean Acoustic Propagation in Three
Dimensions
Therefore, in every range step, paying a cost of (N + 5) multiplications can save 2(N — 1) additions and (2N — 16) divisions. This specialization is economical especially for large N. This approach is useful in special ocean environments but is not advised as a general practice. Proposed Problem 5.2 Can the above specialization of the recursive formula be modified to gain computation speed if the Douglas operator is applied? If so, how much is the saving? Proposed Problem 5.3 Can a set of specialized recursive formulas be developed to solve any tridiagonal system with Toplitz property? If so, how much is the saving? Thus far, all discussions have focused on an environment that has no density variation. Handling the density variations using the Douglas scheme requires a fresh development, first, of the Douglas operator with density variations. Then the density function must be included in the Douglas scheme and the interface conditions must be satisfied. 5.2.4. The Douglas
Scheme with Density ity VaVariations
Parallel to Sec. 2.2, this portion extends the Douglas scheme to handle density variations in both depth and azimuth directions. The Douglas operator with density variations will be developed first. Then the stability analysis will be discussed and the layout of the Douglas operator in matrix structure with density variations will be presented. 5.2.4.1. The Douglas operator with density variations As a preliminary illustration, an example similar to (5.49) is used to relate the differential operator to the difference operator in the scheme of CrankNicolson. The counterpart equation to (5.53) with density variations is du
=
,
x
d (
1
d \
* ^Uo*r
_ = Ltt
'
,„ _ (582) 0
but the operator L takes a different definition. The counterpart solution to (5.54) becomes u(r + Ar, z) = eArLu(r, z) . (5.83)
Enhancement of the High-Order Wave Equation
111
Then the implicit Crank-Nicolson scheme to solve (5.83) is (1 - \&rL\ un+l = (l + \&rL\ un .
(5.84)
Note that if p(z) is constant in z, (5.82) reduces to (5.53), (5.83) reduces to (5.54), and (5.84) reduces to (5.55). Scheme (5.84) is equivalent to 1
fl[ - Urpiz)! 2 HK'dz
W +1 (4T7T)1 " \p{z)dz)\
1 u 2 = fL + 2%<*)#f-TT^l ^\P( )^/J "
(5.85)
whose finite difference operator expression is
(l " ^4^>) Un+1 = i1 + | A r ^ - > ) U" •
(5.86)
This simply relates _1_LA2 h2 ' P «
:pl(*
5 ' 1 a' 3z ,P(*) dz j
(5.87)
Now, back to (5.52), which is the case for a = 0. Does this suggest that
,a
P>(z)
dz
( i
a
/>(*) dz
\_ h?
8
h)
(5.88;
P(*)
The Douglas operator is applicable for constant coefficients. When the coefficient is a variable, such as in the case where p = p(z), a modification is needed. In treating the density variation to satisfy the interface condition, Varga' s technique suggests that the integration be taken over the interval z™ < z < zm+i below the interface boundary and over the interval zrn_ i < z < zm above the interface boundary. Over the entire small interval zm_ i < z < 2 m + i , *ke v a r i a k l e coefficient p(z) can be treated as p(*)~!(pm+j+pm-j) Let p(z) = Pa±%
•
(5.89)
(Pm+\ + P m - l ) -
The first effort is to connect ^ y ^ to 6p^ and then to develop a relationship to connect p ( z ) £ ( j p j & ) to <^ (z) . Consider '
M
W
a / *
I
s\
Uo & J
2,
= P {z)
, 1 a/ 1 a\
W)d~z \Az)Tz) = P
2,
{Z)
xM
a
V
\Az)d-z)
;
(5.90)
(5 86)
-
112
p(z) and
Numerical Ocean Acoustic Propagation in Three
Dimensions
in general do not commute. One cannot expect that
~Tz] TzJWz
h0
•M
2
\1
2
U.) 35os)
unless p(z) has special properties such as p(z) = const, in z. Relationship (5.89) allows (5.90) to be expressed by
"
,, \, au f/ 11 dd\
2 ./ .\
:p(z)-{Z) ] =p
(z)
Tz\ ^ \A£)d~z)
i1
1 <9\
d ,/ d
~p~{z PV)Tz \7G)Tz) fey 1 11
92 (/
\^
d , \\ ^
M7)d~z d~z)
M m D:
(5.91)
'4-rJ M<\Tz)
(5.92)
i2
Define
)l)
" * . - *
■
Exercise: Prove 1
~- 2y~
= sinh I £> =sinh (2 * *^)J • >
(Hint: (Hint: Follow Follow the the proof proof used used to to obtain obtain (5.49).) (5.49).) From From the the above above exercise exercisee
«rf.)
I) 1• s i n h " j' ~- 2 ~ hi>£)
* * > - *
' • \*') 11 ,(c
ll22
2 ll 22-•3 -32
, c2
\
c3 ^ == 1 !$«) ++ 2r^r^w"---J 75!' fth 'V' (z) ~2 2_ 3!*/K*) • • ■ ■ )
,r_N (5.93)
(5.93)
Therefore, i D%)-PI{P
1
d>
%->-'4(j5jK) fa)dzj
2
,
1 1 4 -6 6* - ±6 + 2 M*) \°p(*) yu h? \ = ^ ( * - ) - n12 * -' > B * - >-- - )
;«Jw
■ • ■ )
(5.94)
• (5M)
An approximation to the right-hand side of (5.94) by a rational expression gives the counterpart Douglas operator to (5.52) as D2 2
p zz) P\
=
11
6S
%) P(Z) P\*)
^ ' fa2h? 11 ++ OL6 h? 1 OL6 * *zz\\
Enhancement of the High-Order Wave Equation
113
which is exactly the expression (5.88).
{
0 (Crank-Nicolson), 1 — (Douglas) . 12 The development here uses the variable z; when dealing with the variable 0, a similar expression should be obtained easily as shown below: a =
6
D
1 ^-(A0riA0) 2 ! 1 - +
m
a6l{e)'
(5 95)
-
Expression (5.88) and (5.95) are enough to develop an implicit scheme, counterpart to (5.65), for handling density variations. The starting point is to replace b\ by 62,z s and 6$ by 6\0^ in formula (5.65). Then apply the Varga technique to treat the interface conditions and solve system (5.66) and (5.67) in two consecutive steps. An extension of scheme (5.65) to handle density variations in both depth and azimuth directions gives the expression [l +p[n2(r,9,z) z) - 1] + (a+P-Jptf) k0h
X 1+ a +9
[ (
$ , ) +pafyx)[n2{r,6,z) e,z)
- 1]]
"^P(w)^] U n + 1
= [l + p[n2(r,0,z)
X 1+ a+9
j
1 ' 2 - 1] + (a + p-^j 6 p{z)+Pa62p{z)[n2(r,e,z)Az) -- i 1]] i ]
klh?)
un 2 \jfl.ft.)
[ ( ww?)^] -
'(«)J
wn
(5(5.96) 96)
-
Denote the right-hand side of (5.96) by RHS p . 5.2.4.2. Stability One way to analyze the stability of scheme (5.96) is to examine the matrix structure. As an illustration, readers are advised to solve a simple exercise problem below. Proposed Problem 5.4 Consider a simple case where the resulting matrix is of order 5 and the interface occurs at the 3rd row. Also consider the application of Varga's technique to handle the interface. Determine the elements a23, a32^ ^33, ^34, and a43, below.
114
Numerical Ocean Acoustic Propagation in Three
62p(z)U =
I" - 2 1
1 0 0 -2 a23 0 «3«32 a,«33 <*>',0,34 0 a 43 -2
00
0
[ 00
0
0
1
Dimensions
0 1 0 0 0 (im (interface). 0
-2 J
After this exercise, the reader can follow the proof in Sec. 5.2.2.2 to establish stability. 5.2.4.3. Matrix structure The two-step solution to (5.96), counterpart to (5.66) and (5.67), is (i) 1 + p[n 2 (r, 9, z)-l]+(a
a +p - L )
klh?
2 6 p{z)
+ paS^[n2(r, (r, 6, z) - 1] v,**1
= RHS^
(5.97)
and (ii) 1
«
(•
Q
1 2
1
tfr I A6)2,
IA2.
V)
n u„ +i
.n+1 u/
(5.98)
Thus, (5.96) becomes PpQpun+1
= P;Q*pun .
(5.99)
The two-step solution to (5.99) corresponding to (5.97) and (5.98) involves (i) (i)
;n+: > n+1 Pp P = P;Q*pun pw
(5.100) (5.100)
and and (")
(ii)
n+1 .n+] . \-uw vT G, QpPun+1 +wn+1 .
(5.101) (5.101) Pp is a tridiagonal matrix when operating on wn+1 whose upper diagonal, main diagonal, and lower diagonal elements are determined by the left-hand side operation of (5.97). In consistency with the implementation of the Crank-Nicolson scheme used to solve the three-dimensional wide angle wave equation with density variation, Eq. (5.96) can be put in an equivalent expression as follows:
115
Enhancement of the High-Order Wave Equation
fa p 1 \ 2 I" .E Pr > 2/ .in <Mz) ( r , 0 , z-. ) - 1] l!] ]+ + y(r,e,z)-i]\ [I t (2 ^ *«$„[„»(,•,*,*) 1]] [I (2 *£_£-) *2 )j ft,, ?aft + [nHrAz) + + z ,[n M ,z) -- 1]] + [n + + + «fa\ $*) .) + 1/P^ J p LP P \ 2 ri f a. + qiJ:1 1— \s ]vn«"+! +* xX\l+(° a 2 - ++ 2j fa) pk^r {Ae) J U Vi,/9 P p^r (A0)V H 1
== [J[I ++ y™* Jn'M,,) -- *1] ++{"W) ( H J ^ )fa ft.,++E^p«faln [ - ' ( r2M*) . M ) ~- 1]] [1
q 1
(5(5.102) 102)
1 >
v)fa\un Lp V/» P%T*(M)*) ^^(^^(W)^]""fa
-
2 n l ^ ^{nz) (rAz)-l})w (pp + f fa2(r,0, — 1]] w n ++1 determines only the diagonal elements, the
other two operators, ( j + f p^r) % z ) a n d1 f a ^ ( z )s[ra [ n 2 (2r(r,(9,z)-l],oi ^ ^ ) ~ 1]> operate n+1 on w and determine elements not only the diagonal but also on the upper and lower diagonals. Using Varga's technique,
f «$.>!
(" + ?S^j fa '
(
a ( 1 «^l n+1 (2. + l _A\* J 2_ 2)I sifa = 2 (_i_ +1- J —m) < + / Mw<+* (Z) »™
\P VP VP
pklh />fc 0 ftV) " pkih?) **
p
1
m+
1
+w ■pk
'' 2 22 \\ K^ m + .i ,, ,, pP™+\,i
2
fco^
1
1
W
m+1,£ + | PPm+\,l m+J,/ *
\ ^P m m ++ Ii , *f
rrift
P Prn-\,l) m _- ^^; P m
m*' e
'
,n+l
P m-J,«/ Pm-^l)
'
1 1
—?/;
n + 1
a P m - I / "*
M
J
(5.103) (5.103)
and and
2a62p(2)[n2(r,e,z)-l]wn+1 wn+l ?a^[n2(r,^)-lK+1 h r n2 xa i. , -"lI v = pa\ m+l,t ,t ' Pm+±,* [ Pm+J,^ n2
-1
2= e + 'iJ • i ^~V 1...n+1 Um-\,l\ m
x
Pm-\,l
2
1 / 2n MI (n x l -- l / m+4
\ ^m+J,/ Pm+\,l
2
n2 n
! -- ln\ x
Pm-\yyll Pm-\
JJ
m.t
(5.104) (5-104)
Therefore, the matrix elements associated with the P Ppp operator should contain the following.
116
Numerical Ocean Acoustic oustic P\ Propagation 2^1071 t in Three Dimensions 1510715 nca/ 0( 1
Upper diagonal:
2 _ a nn m - i21 ~- X1l
1
f-?a ^"P
a+PTTT^ a +PTTT^ kk,h? -U 0h PrnPm-\,l
Main diagonal:
- - la f a + VITV; p-r^nr )
|_2 L2
V
m— -j
Pm-^ Pm-\,l
I
f-£±I — ~T~^ ■a-) i V \V2 2 y y Prn+i,t pp i , y y
++ pP k - aa +o(i U"
2
m+ >f
m+if
1 1 Lower diagonal: c Lower diagonal: a + Ppk%h* . 2 Pm+J^
(5105)
(5.105) 1
^V Vm+ift ^+i^ ^ V JJ \p / '<+§_ n 2 x l i -- 11
= ^dPp(z) ( ^ ) »,
I
Prn-\t) Pm-^tJ
n2 X-1N ==Z J£*(*) . 4 ++ ~——* T ^-±,e PW > P m (5.106) P m j ^ / (5106) p _< j m it
(5106)
^ j ~- 11 _ n^m+i m + 5s +h pp*-aa .
(5.107) (5.107)
Pm+£,€
The expanded matrix form ppwn+l looks exactly like (5.74) with d(z) and D(z) replaced by dp(z) and Dp(z), respectively. It is not a difficult task to modify the solution of (5.70) to handle density variations vertically. Similarly, in determining the matrix elements of Qpi
w p*gr2a(A^) -
fl—!—
1
1
,,"+1
U Um ++1 -" % i m f £ + ji ^ ^ \ VV (A*)» (A0)a [p [pTO)€+
_ |
*
^^ Pmm,t ,£ ++ ji
4.
+ +
1
] Mn+1 +,
ppmm,/€_i _j jJ "^ ^
+
!
n+1
tt 1 ^-iJJ •' m ,_M ppm>£ j U -^"
(5.108) Therefore, the matrix elements associated with the Qp operator should contain the following. Upper diagonal: «<*/ ( 1l 11 \ \ 11 1 1 11 = 9P(r) , q 2 (A0)» Pm,«-£ =9 o ^Pm,f+i + Pm,l-\j + g*W17X^2 t f ;r a/Affii = 9PP(r), (r) , klr* 2 2 2 \Pm,£+i Pm,l-\ J kp (A0) p m ^ _ 1 Main diagonal: G
G r (V2 J + +« 7 T2JW ) \p I —^— + —^—I (l ^-QT^77CZvi)\—^— + —^—)= 2 - H?k72r2^(A9) Pm,i-\)p(=)> p( mie+i
r
)>
(5.109) (5.109 (5.109)
5 110 ((5.110) ) (5--110)
Lower diagonal: a /I
1
+
1
+\
_ 1 __1
1
1
22 ^P«/f ^p m t € J+ l /Pms-i) pmt£+j '• W - J J '%^ v (m* ^) P«/+J +
+
A
2
(. (5 mj. (5.111)
-
Enhancement of the High-Order Wave Equation
117
The expanded matrix form of Qpun+l looks exactly the same as (5.76) with g(r) and G(r) replaced by gp(r) and Gp(r), respectively. Thus it is seen that it is quite easy to modify the solution of (5.70) to have the capability of handling density variations horizontally. References 1. D. Lee and S. T. McDaniel, Ocean Acoustic Propagation by Finite Difference Methods (Pergamon, Oxford, 1988). 2. R. Varga, Matrix Iterative Analysis (Prentice Hall, New Jersey, 1962). 3. L. M. Brekhorskikh, Waves in Layered Media (Academic, New York, 1960). 4. D. Lee, M. H. Schultz, and F. Saied, "Supercomputers in computational ocean acoustics," Proc. Supercomputing '89 (ACM Press, 1989), 133-140. 5. A. R. Mitchell, Computational Methods in Partial Differential Equations (John Wiley & Sons, New York, 1960). 6. E. Golub and C. F. VanLoan Matrix Computations (The Johns Hopkins Univ. Press, 1989). 7. B. Carnaham, H. A. Luther, and J. O. Wilkes, Applied Numerical Methods (John Wiley & Sons, New York, 1969).
Chapter 6
Numerical Accuracy Test: A n Analytic Solution
In developing a solution for the three-dimensional wide angle wave equation, one necessary requirement must be met: accuracy. This is universally true for checking accurate solutions of any model developed for a special purpose. After accuracy is established, an additional requirement must also be met: capability. A large number of scientists and engineers examine a model's validity by comparing the model's results against their measurements. This examination determines whether the model is capable of performing real applications. Often the accuracy of the model is not considered until later when an examination of the model demonstrates that it is accurate but is not capable of handling certain physical situations. Developers of this type of model need not despair because the accuracy is there and an accurate model can be modified to create the required capability. In numerical computations, the measure of accuracy is usually in terms of digits within the allowance of a computing device. Therefore, one can talk about accuracy in terms of the required number of digits. An important point to be made in this chapter is that a model whose accuracy is uncertain 119
120
Numerical Ocean Acoustic Propagation in Three
Dimensions
should not be used for real applications. A necessary requirement of our FOR3D model is accuracy. But, how do we measure a model's accuracy? Searching for a reasonable answer led to the construction of an analytic solution. This analytic solution was developed particularly for testing the accuracy as well as the important azimuthal coupling (8 coupling) for the FOR3D. Later it was realized that this analytic solution can be used to test other three-dimensional models developed by methods other than the finite difference. As to the question of how do we measure a model's accuracy, we need to know how much accuracy is required. In our computational acoustic results, the answers are displayed in decibels (dB) which we take to be 101og10 |IA|2, where u is the wave field. The accuracy requirement varies depending upon the particular applications; it could be off by ± 3 d B or within l d B . Accuracy which is poorer than ± 3 d B should be considered unacceptable. Based on this requirement, we have determined the following accuracy table: Table 6.1. Accuracy requirement. Number of digits
Accuracy (dB)
1 2 3
5.6 0.78 0.1
From the above table, we choose the two-digit requirement (with an accuracy of ±0.78 dB) as a reasonable requirement. Now we must proceed to construct an analytic solution for testing the accuracy for FOR3D. We shall demonstrate that the FOR3D code can produce as accurate results as we need, thus satisfying the acoustic accuracy requirement. This analytic solution can be used not only to test the accuracy of FOR3D but also to demonstrate the capability of handling 6 coupling in three dimensions because a relaxed accuracy requirement will suppress the 0 coupling. This analytic solution is appropriate for testing vertical narrow and wide angle parabolic equations. The analytic solution formulas are of a novel type and cannot be obtained by the classical method of separation of variables. The expressions are valid for propagation over a range of frequencies without backscattering and are available for comparison tests among existing propagation models (ray or other wave types).
Numerical Accuracy Test: An Analytic Solution
121
In the development of this analytic solution, the following five items are important for discussion: (i) How are the mathematical expressions constructed? (ii) What is their mathematical validity? (iii) Are they capable of handling 6 coupling? (iv) Is there applicability to other propagation computations? (v) Are there some demonstrative computational results? Prior to this development, some early work was done by Siegmann et al.1 that described a simple exact solution used to test a three-dimensional preconditioning numerical model. To suit out purpose, our principal concern is to find an exact solution to parabolic approximations of the Helmholtz equation that involves speed variations in both range and azimuthal directions. These are to be designed for use in testing accuracy and in examining the 6 coupling capability. The need for such types of solutions, among others, has been discussed at a number of professional meetings. Among them are the (i) First IMACs Symposium on Computational Acoustics, Special Sessions on Benchmarks, held on 3-6 August 1989 at Yale University, USA, (ii) 112th Meeting of the Acoustical Society of America, Panel Discussions: What Benchmark are Relevant? held on 8-12 December 1986 at Anaheim, California, USA, (iii) 113th Meeting of the Acoustical Society of America, Numerical Solutions of Two Benchmark Problems, held on 11-15 May 1987 at Indianapolis, Indiana, USA. The specific need for an accurate model was emphasized at the Workshop on Three-Dimensional Ocean Acoustic Interfacing sponsored jointly by the Office of Naval Research and the Institute for Naval Oceanography. The workshop was organized by M. Orr, J. Lynch, and C. S. Chiu in July 1988 at Stennis Space Center, Mississippi, USA. A few types of three-dimensional analytic test solutions are known to exist for special cases. One collection is an extension of known two-dimensional results by Siegmann and Lee1 for index of refraction in the form n2(r,z)
= 1 + ni(z) + n2(r) ,
(6.1)
which was used to test the accuracy of a two-dimensional finite difference propagation prediction model IFD. 2 This idea led to the construction of
122
Numerical Ocean Acoustic Propagation in Three
Dimensions
an analytic solution to the three-dimensional wide angle wave equation. Another collection is an extension of known two-dimensional results 3 and is obtained from separation of variables, for index of refraction in the form 1 (r,9, z) = h{z) + f/22(r) (0) n2(rA (r) + + l±f/233(0) r '
(6.2)
for arbitrary function fj. These have a severe restricted type of dependence on r and 0, and their 9 variation is negligible for range values of typical interest. Two other three-dimensional solutions, one by Siegmann and Lee 1 and one by Ames, 4 are of similarity or invariant type. As an example, the index of refraction is of the type 22
{02 + z2\
= l l- -aa( ^ ± £ ! ) n (r,0,z) (r,0,z) =
\ ~ ^ >
,
(6.3)
where a is a constant. Limitations of these solutions include difficulties with computational domains and boundary conditions. Other solutions include one discussed at the 113th Meeting of the Acoustical Society of America on Quality Assessments of Numerical Codes applied to obtain numerical solutions of two benchmark problems; another one was discussed by Baer and Moseley.5 Unfortunately, both solutions are unsuitable for examining horizontal refraction. A procedure used to obtain a relatively large family of analytic solutions will be discussed in this chapter; the details of one member will be fully discussed. There are several advantages for our solution family. They are (i) If the solution values computed from an implementation of the parabolic approximation deviate from evaluations of the exact solutions, then the deviations must result from computational errors or algorithmic inaccuracies. The focus is centred on the three-dimensional Lee-Saad-Schultz (LSS) equation 6 and its implementation, known as the FOR3D. 7 The numerical results are mainly for the narrow angle version. However, extensions to the wide angle LSS equation, and to other parabolic approximations, are quite straightforward. (ii) Effects of horizontal refraction are modeled using parameter, coordinate, and sound speed values that are typical of those used in the actual computations. For example, solutions can be employed to appraise model capability for handling 0 coupling by means of sound speed variations up to a few percent. (iii) Solutions can be constructed by means of elementary functions that are convenient to evaluate and easy to display.
Numerical Accuracy Test: An Analytic Solution
123
(iv) Features of the solutions permit their use for accuracy and capability testing with other three-dimensional propagation models. There is significant interest in three-dimensional propagation modeling and there have been two recent developments, i.e. one based on ray theory by Newhall et al.s and the other by Chiu and Ehret. 9 There was also renewed interest with an earlier three-dimensional parabolic approximation by Baer. 10 It should be remarked here that this analytic solution family has certain limitations, including forward acoustic propagation, sound speed distributions that need not be dynamically realistic, and specific source intensity patterns. Nonetheless, these analytic solutions appear to have advantages that, taken together, are unmatched by previous analytic solutions of which we are aware. 6.1. Exact Solutions A procedure is formulated for deriving exact analytic solutions. This procedure can be applied to a variety of parabolic approximations to the Helmholtz equation. This portion is focused on the three-dimensional wide angle LSS equation for the pressure envelope function u(r, 0, z)6 i.e.
(6.4)
. ^0 A . ! *2> = Y)U, - ih(x-\x '■ ++ Yy, (x- 4
(6.4)
U r = Ur
~T\
where k0 is the reference number defined equal to 27r//co, / being the acoustic frequency and CQ the reference sound speed. Operators X and Y have the same definitions as expressed by (2.18) and (2.19). The definition of the operator X, in general, involves the index of refraction n{r, 0, z) which is a function of three variables. In this case, in order to investigate horizontal refraction and 0 coupling effects, the index of refraction is restricted to be dependent on the two horizontal coordinates r and 0 and independent of z. A flat pressure release surface boundary is considered along with a flat rigid bottom at z = H, i.e. u(r, t*(r, 9,0) 0,0) = 0
and
uz(r, (r, 6, 0, H) = 0 .
(6.5)
Solutions of (6.4) are expressed in such a way that boundary conditions, Eq. (6.5) are satisfied, i.e. u(r, 9, z) = U(r, 9) sm(rjz) exp
UJv
ik0r |
fco \
il -
i
" 4 \ iko) \
, (6.6)
124
Numerical Ocean Acoustic Propagation in Three
where
rj = j+ Tj =
H)
{ 1) W IT
Dimensions
7 ( 6 -(6.7) )
1 2 3=0,1,2...
J = °> > -> ,
and the reduced envelope function U satisfies
H
ikp Ur + \[n\r,6) \[n2(r,0)-l]-2 I] 2 + + y Y\u. \u . Ur = = ^ {l[n\r,6) [ n 2 ( r , 0 )-- l1] ] fl - I ( g ) 1 + 2
W J
(6.8) (6.8) Following Lee and McDaniel,2 the decibel propagation loss PL is calculated by the expression
PL = -20 log10 \U\ - 20 log10 | sin(r sin(r^)| i z)| + 10 log10 r .
(6.9)
The key step in this procedure is to search for solutions in the form U(r, 6) = R(r,0)exp[iF(r,9)] R(r, 9) exp[iF(r, 0)] U(r,0)
(6.10) (6.10)
where the (signed) amplitude R and phase F of U are both real functions. Substituting Eq. (6.10) in Eq. (6.8) and dividing by the exponential gives 2
2
ik0 2 iFrR [n 2 (r,0)-l] (r^)-l] iF *|>jjj[„»( 1 j[n + \[n (r,e) J- 1]2| rR++RrR= r= r,*) - 1] [l - \ ( g )+ ~2R [ 2 Uo/ J + +
i R 2iRF9 F RF . (Ree + iFiF R +R 2iR -<>RF$) 2lh* e) ■ 2fc0r2 ( <"> + ee<"> + e <>
(6.11) (611)
Equating the real and imaginary parts of Eq. (6.11) to zero separately gives 1 rA
F R=0 jRe + ,2fc0r?5 "), ) J '- 0 V ^ , * («5**)* (»S?*
Rr++
(6.12) 612
< >
and
, i+ ^e)-11?>-l-F [ 2 \k0J J+ [ni^"*••('■•)-•][»-s(£)T -s*r [n 2 (r,0)-l] -
1
p2 , 1 (Ree\ _ n (fc0r) '' (k ( V0r))22 I\ R )J 2
(6.13)
Numerical Accuracy Test: An Analytic Solution
125
Observe that Eq. (6.12) does not involve the index of refraction. Also suppose that the reduced envelope phase F(r,0) is a specified function, then the terms in parentheses in Eq. (6.12) are known, and Eq. (6.12) is regarded as a linear, first order partial differential equation for the reduced envelope amplitude R(r,0). Its solution involves a single arbitrary function that can be specified in some way, such as from the field at an initial range. It follows that if both F(r, 9) and R(r, 8) are known, then the right-hand side of Eq. (6.13) is fully specified. Consequently, Eq. (6.13) can be solved algebraically for n2(r,0). Finally, from Eq. (6.10), we see that \U\ = R, so that in Eq. (6.9), PL is explicitly independent of F(r,0). In the sense described above, both n 2 (r, 6) and PL are functional of the phase F(r,0). Therefore, the objective is to make some choice of F(r,8). The selection criteria are that the resulting index of refraction has certain desirable properties, depending upon the application, and also that the resulting non-negative amplitude \R\ gives a reasonable representation for PL. Also, other requirements can be included, such as simplicity of formulas and ease of integrating Eq. (6.12). Thus, even though F(r,0) does not appear in the formula for PL, its role in our procedure is primarily to determine both n 2 (r,0) and PL. 6.2. Test E x a m p l e s For simplicity in testing, examples in this section are considered in the sensor of narrow angle version of Eq. (6.4), i.e. without the X2 term. Thus, Eq. (6.12) is unchanged and Eq. (6.13) reduces to n ( r , 01) - l = =
"^-
F/' fc 0
x
r
+J
m-
Fl W)f,-(^(^)1 ,
(fc^r)
1 (fc0r)2 '
i
(6.14) (614)
where n denotes the index of refraction for the narrow angle LSS equation. It is clear from Eqs. (6.13) and (6.14) how to convert results for n into those for n. The simplest possible choice is F(r,0) = 0, for which Eq. (6.12) implies R — g(0) depends on 6 alone. From Eq. (6.14)
n M ) ==1l n(r,6)
1
9"
-(^7 (fc r) g 0
2
<(6.15) 615
>
and Eq. (6.15) corresponds to a restricted example of the separate case of Eq. (6.2). A salient feature is that using ko of interest, the index of refraction from Eq. (6.15) differs from unity only by a term multiplied by
126
Numerical Ocean Acoustic Propagation in Three
Dimensions
(k0r)~2. One choice is to pick the function F(6) of moderate size, in which case the sound speed becomes effectively constant for nearly all r values of interest. The other possibility is to pick F so that g"/g is large, in which case the sound speed becomes excessively large for smaller values of r. These characteristics are not desirable for the objective of horizontal refraction testing, and they prompt other choices for F. Another simple example is g{6) = aO for a being a constant. Then, Eq. (6.12) can be solved in the form
JL\ R(r,6) + j^j R(r,0) = gg((e {e + k0rj
(6.16)
,
where F is to be specified and Eq. (6.14) yields
M , == Il n(r,0)
"
1
- (korj (^ 2
(6i7 (6.17)
(?-')•
»
9"
\ [J
■
«
-
Equation (6.17) is not a separate case from Eq. (6.2) because of the argument of F from Eq. (6.16). However, Eq. (6.16) shows that the amplitude R tends to lose its range dependence for increasing range. Consequently, Eq. (6.17) has characteristics much like Eq. (6.15). A related but richer class of examples follows from choosing g = a(r)0 where a(r) is now a nonconstant function. It follows that Eq. (6.12) has the solution
R(r,d)= =g R(r,6)
d s g 8-L -ko±. j^ s^-ds\
/
^2 )
.
(6.18) (6.18)
Prom Eq. (6.18),
e) n2(r,0) 9 ) =l 1 l-
1 a2 a 2 (fcor)2 ' 9
)eW ^ -^ = -j^(?i- ( ^ ? (Ut-A. 7 - )+h^ ) + ^5"<"*-
(6.19) <619)
A number of choices of a(r) were examined, including combinations of polynomials, inverse trigonometric functions, and exponentials, for which the integral in Eq. (6.18) has closed form expressions. Also, considerations were taken for various possibilities of the function g. One seemed appropriate for testing purposes and will be discussed later. It is remarked that some general forms for F(r,0) also appeared feasible for azimuthal coupling investigations, but are not pursued here. The focus is centered on a test example for use with the research code FOR3D. The choice for the function a{r) is linear in r, i.e. a(r) = a0k0r ,
(6.20) (6.20)
Numerical Accuracy Test: An Analytic Solution
127
where ao is a constant. It is found from Eq. (6.18) that R(r,0) = g(0 — aologr). Requiring that the arbitrary function g has a trigonometric behavior for R at an initial range, a convenient expression is R(r,0) = sm[(3 a 0 logr)] , sin[A)A;o(0 0k0(0 - oologr)]
(6.21)
where fio is another constant. Equation (6.21) is to hold between initial value ro > 0 and maximum range r m a x , and 0 between boundary values OL and OR. fako need not be required as an integer because Eq. (6.21) is only used in a horizontal wedgelike domain with {OR — OL) < 27T. The first task is the examination of the distribution of the sound speed arising from Eq. (6.20). From Eqs. (6.19) and (6.21), one finds
. 01
+ % n 2 (r, (r,0) 0) = l1 + aa2g + 22a a 0o00 -+ "2" '.
(6.22)
Equation (6.22) represents a family of indices of refraction depending upon two parameters a 0 and /?0- Note that 0 and r variations of such appear in separate terms, but the r and 0 dependence of the solution U is definitely not separate in any sense. One way to visualize the sound speed distribution from Eq. (6.22) and c(r,0) = co/n(r,0) is to consider isospeed contours in the (r, 0) plane. Figure 6.1 shows some of these for particular parameter value indicated, in a domain of angular width 120° and a radial extent of 4.5 m. The curves have a spiral form. They tend toward radial lines as r increases, due to the third term on the right-hand side of Eq. (6.22), and toward circles as r increases, from the fourth term on the right-hand side of Eq. (6.22). The choice of ao, made to produce substantial 0 variation, led to a sound speed 0 derivative with magnitude |f^| of about 7.5 m/s per radian. For example, at range 2.5 km, the azimuthal change is about 3 m/s per kilometer. Thus, the medium possesses a mechanism for horizontal refraction and, presumably, 0 coupling as well. The values of sound speed, shown in Fig. 6.1, decrease with increasing r and increasing 0 (left to right), in accordance with Eq. (6.22). Using (6.10) and (6.21) in Eq. (6.9) yields PL = - 2 0 log 10 | sinL/30k0(0 - a 0 logr) sm(rjz)\ + 10 logr .
(6.23)
Figure 6.2 is a qualitative display of Eq. (6.23), using the same parameter values and domain as in Fig. 6.1. In addition to the parameters ao and /?o, specifications of ko and Tj are required. With / = 50 Hz, it follows that &o = 0.209 m - 1 , and the product of Tj and relative receiver depth
128
Numerical Ocean Acoustic Propagation in Three
Dimensions
F i g . 6 . 1 . Isospeed contour from exact solution, Eq. (6.22), for specific parameter values. Contour interval 2 m / s .
F i g . 6.2. Surface display of propagation loss from exact solutions, Eq. (6.23), for same domain and parameter values as Fig. 6.1.
Numerical Accuracy Test: An Analytic Solution
129
is chosen as 7r/8. The scallop shell appearance of Fig. 6.2 corresponds to a pattern of broad intensity peaks and sharper intensity fades from Eq. (6.23). Any given fade trough may seem to lie along a radial line 0 = const. However, this observation is incorrect, as is suggested along the right boundary 6 = OR. The four short triangles, extending from the top of the surface between r = 500 m and about r = 1000 m, are the result of the ray 6 = 6R cutting the fade trough. Thus the PL pattern is not axisymmetric, as can be confirmed by Eq. (6.23). Finally, some properties of this particular family of exact solutions should be noted. The operator X can be shown from Eqs. (6.4), (6.6), and (6.22) to be
.£,
ii\, ) -
+ ^ JuU . XU = lal XU al + 2a 2a0060 + &2 + r
(6.24)
For values of parameters ao, /?o> fj, and ko and for corresponding ranges of r and 6 as in Figs. 6.1 and 6.2, it follows that the norm of the operator in Eq. (6.24) is small. From Eq. (6.4), the term X2/4 is small compared to X. This, even though these particular solutions are exact for the narrow angle LSS equation, they are very good approximations for the wide angle LSS equation which has been implemented into the research code FOR3D, and presumably for other wide angle three-dimensional equations as well. On the other hand, if analogous exact solutions are desired to a wide angle equation, either LSS or another, they can be obtained by deriving a new formula of the index of refraction and by specifying larger values of rj/ko. Next, recall that there are no frequency limitations on either the governing equation or the solutions, other than as noted above for keeping rj/ko small. Therefore, the solutions may be appropriate for use in tests with other three-dimensional propagation models that are efficient for higher frequencies. An example of one important state-of-the-art model, based on the ray theory, is discussed in Ref. 8. Lastly, let the forward scattering approximation in terms of these solutions be appraised. Neglect of backscattering in the LSS equation, Eq. (6.4), amounts to neglect of urr compared to 2ik0ur (D. Lee et aln). Using the exact solution expressions from Eqs. (6.6), (6.10), (6.20), and (6.21), one finds ia 2 0 k$ '-2ia 2ik0U Ur = M ^k ooTo■fl)*3r _- 22k^A j f c 2 A \ Jv U 2ik 0 r = r
V
((6.25) 6 25)
130
Numerical Ocean Acoustic Propagation in Three
Dimensions
and
Urr
fa0/3oko\ 2_ _2iao(3 = \^oko 2 * a o0ko M o r A _ 22 J ^ a o A ^TT , _ (aoPohA -klA \U f ,, 2 r \ r / r
"r^~
(6.26)
where - aoo logr)] rT = cot[A)fco(0 cot[/? o fco(0-a
(6.27) (6.27)
and A = ao0 -
1 2
\ 2
UJ '
(6.28)
The first two terms on the right-hand side of Eq. (6.26) are smaller than the magnitude of the first term on the right-hand side of Eq. (6.25) by factors of l/2kor and /3oao/2r respectively, both of which are very small for range and parameter values, used in these examples. This last two terms on the right-hand side of Eq. (6.26) are smaller than the terms of the right-hand side of Eq. (6.25) by a factor of the quantity A from Eqs. (6.27) and (6.28) which is also small in the above situation. It follows that the choice of the exact solution parameters corresponds to very weak backscattering. Therefore, the solution may be appropriate for use in tests with other full wave three-dimensional propagation models that permit backscattering. An example of one significant recent model, based on coupled normal modes, is described in Ref. 9. 6.3. Numerical N u m e ;rical r i c a l Computations C o m p u t a tions tions The exact solution, discussed in the previous section, is employed to test the three-dimensional model FOR3D with respect to accuracy and capability of handling 0 coupling. The FOR3D is an implementation of a stable numerical scheme for solving the LSS equation. As reported in Ref. 7, it incorporates capabilities for both ^-dependent index of refraction and 6 coupling. A detailed discussion of the so-called 3D, N x 2D, and 2D cases is to appear in the following chapter, which references specifically to the FOR3D model. It is beneficial to the reader that a summary is given on various capabilities with regard to different cases.
Numerical Accuracy Test: An Analytic Solution
3D:
N x 2D:
2D:
131
This case corresponds to Eqs. (6.4), (2.18), and (2.19), and allows for both energy exchange across planes 0 = const. (0 coupling) and azimuthal refraction of wavefronts (0 dependence). This case corresponds to Eqs. (6.4) and (2.18), but without the Y operator, and hence has 0 dependence but no 0 coupling. This case corresponds to Eqs. (6.4) and (2.18), but without the Y operator (no 0 coupling) and without 0 dependence in the X operator.
Calculations performed here used the sound speed field derived from Eq. (6.22). Then the numerical results were compared with both exact field values u(r, 0, z) and propagation loss PL. The former are obtained from the narrow angle version of Eq. (6.6) and Eq. (6.10), (6.20), and (6.21) as 1
s .VI
u(r,0,z) u(r, 0, z) = sin(rjz) sm(rjz)sm[/3oko(0 sm[/3oko(0 -—a ao logr)] exp< ik00rrr \ao0 \ao0 - - (II f -^- j I ik 0 logr)]exp ~2
> ,
{k0J (6.29)
and the later are found from Eq. (6.23). The same values of parameters are used, as shown in Fig. 6.1, with / = 50 Hz, j = 0, H = 40 m, and z$ = 20 m. In addition to those of Eqs (6.5), subsidiary conditions were taken from Eq. (6.29) at r = r 0 , 0 = 0L - A0, and 0 = 0R + A0. Computations were performed with depth and range increments of Az = 1 m and Ar — 20 m and various azimuthal increments A0. A sample of results is shown in Table 6.1 for a range of 2500 m and azimuthal bearing of 120°. For each depth, the first row shows FOR3D computations with a large increment A# = 30°. The second row shows results with a small increment A0 = 1 ° . The significant differences between the corresponding numbers verifies that 0 coupling definitely occurs 11 for this propagation model. Therefore, the constructed analytic example does satisfy one of the primary objectives of providing an opportunity to test for 0 coupling. The third row shows evaluations of the exact formulas. The argument between rows two and three is very good, always to two digits and often to three. Evidently, from the computational results, the FOR3D is shown capable of producing highly accurate results in this test media with strong horizontal sound speed gradients. This reaffirms the accuracy of
132
Numerical Ocean Acoustic Propagation in Three
Dimensions
F0R3D as demonstrated in previous test examples 1,11 Moreover, the close agreement between rows two and three, along with their disagreements with row one, demonstrates that FOR3D can handle the mechanism of 0 coupling. There were similar results for other locations and for other parameter values. Note that the FOR3D calculations have used a sound speed distribution from an exact solution to the narrow angle LSS equation, even though FOR3D solves the wide angle LSS equation. Table 6.1. Comparison of FOR3D computations and exact solutions (Eqs. (6.23), (6.27), and (6.28)); r = 2500 m, 0 = 120°. Receiver ZR
(m) 5
Real part
Solutions Imaginary part
Propagation loss PL (dB)
0.07873 0.03865 0.03907
-0.07948 -0.04253 -0.04241
A0=3O° A0=1° Exact
53.00 58.79 58.76
10
0.14928 0.07588 0.07664
-0.15106 -0.08339 -0.08319
A0 = 30° A0=1° Exact
47.44 52.94 52.91
15
0.20721 0.11024 0.11127
-0.21318 -0.12099 -0.12077
A0 = 30° A0=1° Exact
44.52 49.70 49.67
20
0.25370 0.14042 0.14162
-0.25691 -0.15398 -0.15371
A0 = 30° A0=1° Exact
42.83 47.60 47.58
25
0.28065 0.16532
-0.27752 -0.18107
42.05 46.19
0.16653
-0.18074
A0=3O° A0=1° Exact
0.27870 0.18407 0.18504
-0.20113 -0.20083
A0 = 30° A0=1° Exact
42.13 45.27 45.26
0.24951 0.19589
-0.25374 -0.21337
0.19643
-0.21320
A0 = 30° A0=1° Exact
42.95 44.74 44.74
30
35
-0.27454
46.17
These types of numerical results just discussed can also be represented graphically. The solid curve in Fig. 6.3 is a display of PL from Eq. (6.23)
Numerical Accuracy Test: An Analytic Solution
Fig. 6.3. Propagation loss vs range.
Fig. 6.4. Propagation loss vs range from FOR3D for A$ values.
133
134
Numerical Ocean Acoustic Propagation in Three
Dimensions
using the same parameters and coordinate values as before, for range values up to 3 km. It is evident that one of the fade troughs seen in Fig. 6.2 crosses the ray 0 = 110° at a range near 1.5 km. The long-dashed curve is the N x 2D calculation from FOR3D, which is produced by suppressing all calculations of 0 coupling.7 There is a sharp difference between the two curves, often over 5dB, and, near the deep face, over 50dB. This figure demonstrates conclusively the presence of 0 coupling. We remark that an analogous curve can be calculated using the 2D IFD model 2 with sound speed distribution from Eq. (6.22) for 0 = 110°. There is no visible difference between the dashed curve and the curve from IFD. This agreement is to be expected but is not theoretically absolute, since the IFD implementation solves an equation difference from Eq. (6.4) with Y = 0. We have seen such agreement in a large number of test calculations. Given the strong differences between the exact and N x 2D solutions in Fig. 6.3, the effects on 3D computations can be illustrated by varying the increment A0. In Fig. 6.4, the long-dashed curve was computed with A0 = 10°, or for a total of 12 azimuthal sectors. This curve is quite close to, but not identical to, the long-dashed N x 2D curve in Fig. 6.3. The dashed dot curve of Fig. 6.4 came from A0 = 5°. This curve, unlike the long-dashed curve, shows a hint of the deep fade in the exact solutions near 1.5 km. However, the fade location and depth are incorrect, and overall the curve differs significantly from the exact solution. The short-dashed curve, from A0 = 2°, has the same qualitative features as the exact solution. The solid curve is computed with A0 = 1° and, on the scales of Fig. 6.4, is visually identical with the exact solution (solid curve of Fig. 6.3). The curves of Fig. 6.4 vividly demonstrate the computational transition using FOR3D from N x 2D solution at large A0 to 3D solution for small A0. The construction, characteristics, and applications of a family of closed form analytic solutions to parabolic equations have been described. Although the focus was on the LSS equation and its FOR3D implementation, yet this procedure extends readily to other parabolic approximations to the Helmholtz equation. The procedure is relatively straightforward to carry out and contains considerable freedom in determining the forms of the exact solutions. An objective is to use this freedom to obtain solutions that have desirable features, such as appropriate sound speed structures, reasonable propagation loss patterns, and simple mathematical expressions; these are left for the readers as exercises. The particular case carried out here is useful to model effects of azimuthal (0) refraction and energy coupling. The examples examined do not have distribution of sound speed or propagation
Numerical Accuracy Test: An Analytic Solution
135
loss that occurs in the real ocean. The solution for a given sound speed distribution typically satisfies only one particular initial (effective source) intensity pattern. Nonetheless, the values of the propagation parameters, domain coordinates, and sound speed are reasonable for ocean acoustic testing applications. Moreover, the examples employ simple functions for ease in evaluation and display. Numerical calculations with FOR3D demonstrate conclusively that the example solutions possess the 9 coupling property. In addition, they illustrate the high numerical accuracy attainable with FOR3D. Also, computational results show the transition from an incorrect omission of 9 coupling to a correct, highly accurate treatment of 9 coupling as the azimuthal resolution is increased. Consequently, the use of these solutions shows how FOR3D can accurately treat the mechanism of 9 coupling when it is present in the propagation environment. It can be said that the analytic solutions possess features that permit them to be available for use in 9 coupling tests with other propagation models. References 1 W. L. Siegmann and D. Lee, "Aspect of three-dimensional parabolic equation computations," in Computational Ocean Acoustics, eds. M. H. Schultz and D. Lee (Pergamon, Oxford, 1985), pp. 853-862. 2. D. Lee and S. T. McDaniel, Ocean Acoustic Propagation by Finite Difference Methods (Pergamon, Oxford, 1988). 3. R. M. Fitzgerald, "Helmholtz equation as an initial value problem with application to acoustic propagation," J. Acoust. Soc. Am. 57 (1975) 839-842. 4. W. F. Ames, "Invariant solutions of the underwater acoustic wave equation," in Computational Ocean Acoustics, eds. M. H. Schultz and D. Lee (Pergamon, Oxford, 1985), pp. 681-685. 5. R. N. Baer and W. B. Moseley, "Three-dimensional propagation modeling using the parabolic approximation," J. Acoust. Soc. Am. 61 (1977) SI, Sll(A). 6. D. Lee, Y. Saad, and M. H. Schultz, "An efficient method for solving the three-dimensional wide angle wave equation," in Computational Acoustics — Wave Propagation eds. D. Lee, R. L . Sternberg, and M. H . Schultz (North-Holland, Amsterdam, 1988), pp. 75-90. 7. G. Botseas, D. Lee, and D. King, "FOR3D: A computer model for solving the LSS three-dimensional wide angle wave equation," Naval Underwater Systems Center, New London, TR 7943, 1987. 8. A. E. Newhall, J. F. Lynch, C. S. Chiu, and J. R. Daugherty, "Improvements in three-dimensional ray tracing codes for underwater acoustics," in Proc. Second IMACS Symposium on Computational Acoustics, eds. D. Lee, A. Cakmak, and R. Vichnevetsky (North-Holland, 1990), pp. 169-186.
136
Numerical Ocean Acoustic Propagation in Three Dimensions
9. C. S. Chiu and L. L. Ehret, "Computations of sound propagation in a three-dimensionally varying ocean: A coupled normal mode approach," in Proc. Second IMACS Symposium on Computational Acoustics, eds. D. Lee, A. Cakmak, and R. Vichnevetsky (North-Holland, 1990), pp. 187-202. 10. R. N. Baer, "Propagation through a three-dimensional eddy including effects on an array," J. Acoust. Soc. Am. 69 (1981) 70-75. 11. D. Lee, G. Botseas, and W. L. Siegmann, "Examination of threedimensional effects using a propagation model with azimuth-coupling capability (FOR3D)," J. Acoust Soc. Am. 91 (1992) 3192-3202. 12. W. L. Siegmann, D. Lee, and G. Botseas, "Finite difference computations of three-dimensional sound propagation," in Computational Acoustics — Wave Propagation, eds. D. Lee, R. L. Sternberg, and M. H. Schultz (North-Holland, Amsterdam, 1988), pp. 91-109.
Chapter 7
Three-Dimensional Effects
Two three-dimensional mathematical wave propagation models have been discussed in the previous chapters, i.e. a pseudopartial differential equation and a high order differential equation. The pseudopartial differential equation is solved by a preconditioning technique and the high-order partial differential equation is solved by a combination of numerical ordinary differential equation methods, rational function approximations, and implicit finite difference schemes. The high-order and pseudopartial differential equations both have the same mathematical physics but the higher order equation is much easier to solve because of its formulation and efficient numerical solution. This high-order equation was solved by an implicit stable marching scheme which was implemented into a computer code labeled FOR3D. Computations presented in this chapter were carried out mainly by FOR3D, a model that has the capability of handling three-dimensional azimuthal variation effects, i.e. 8 coupling. In situations when the 9 coupling is weak, users often rely on two-dimensional models for computing propagation. Since no a priori knowledge is available as to whether three-dimensional effects prevails or not, it is desirable to use a true three-dimensional model so that one can ask for the three-dimensional 137
138
Numerical Ocean Acoustic Propagation in Three
Dimensions
6 coupling. This is one of the main attractions of the F0R3D model. Before the demonstration, it is necessary to establish some basic definitions. The index of refraction n(r, 0, z) is called ^-dependent if it has 9 dependence, range-dependent if it has range dependence, and depth-dependent if it has depth dependence. These definitions seem to be unnecessary because in notation n(r, 0, z) is dependent on all three of these variables. In some realistic ocean environments, n(r,0,z) can be either n(r,z) or n{z) or a constant of these variables. Associated with the above definitions of the index of refraction, problems can be classified in different categories. This can be accomplished by examining the representative wave equation, i.e.
2+ + M l u , (l + \x - ±X H*-i* H]-2
uurr = = iko ik)0 -[-1 1 ++ where
X = n2{r,0,z)-l (r,0,z)-l
i a2 1-+ ± ^ 2 kl dz
(4.7) (4.7) (2.18)
and
i d2 Y = 22 2 19 (2.19) Y ' k r 50 2 " A problem that deals with the solution of Eq. (4.8) and its associated initial and boundary conditions is classified as having 6 coupling if the Y term is present. The same type of problem is classified ^-dependent if the Y term is absent but the index of refraction is ^-dependent. Similarly, a problem is called range-dependent if the Y term is absent and the index of refraction is only dependent or r (range) and z (depth) or on r alone. A problem is range-independent if the Y term is absent and the index of refraction is either a function of z alone or a constant of all three variables. The above definitions may seem to be vague and, thus, an explanation is required. Problems in which the Y term is absent and the index of refraction is independent of the range variable r can still be range-dependent if either or both the horizontal surface and bottom boundaries are range-dependent. The range-independent case should mean the absence of the Y term and the range independence of the index of refraction plus both horizontal boundaries are plane parallel and range-independent.
= WW-
<- >
7.1. Concepts of 3 D , Nx iVx 2D, and 2D Thus far background materials have been adequate for the discussion of the concepts of 3D, N x 2D, and 2D. These discussions are generally divided into three categories: mathematical, computational, and physical.
Three-Dimensional
Effects
139
7.1.1. Mathematical tical Clai Classification Now, a mathematical classification of problems based on the influence of azimuthal variations can be described. Equation (4.7) is a complete three-dimensional (3D) problem if 9 coupling is present (Y term is present), i.e. ik 1 (x-\x* - \x2 + + Y\U Y}u. . (7.1) 3D: ur = ^ 0 (x ~ 2 V In contrast, when 9 coupling is negligible (Y term is absent) but 9 dependence is present (index of refraction = n{r, 0, z)), the problem is N x 2D, i.e. ik i ^ 0 (x - ^X2\ 2 u . N N xx 2D: ur = ■ 2 \
^-4-* h
(7.2) (7.2)
The N x 2D terminology was introduced by Perkins and Baer 1 to denote the solution (uncoupled azimuthal variations) in two-dimensional (2D) problems in N vertical planes. If both 9 coupling (Y term) and 9 dependence are negligible, the problem is strictly 2D, i.e. 2S <> I 2D: 2D:uur r =_ th(x-\x ' )u, l * ik
"""TV
u
H '
(7.3) (7.3)
where the operator X=nHr,z)-l X =n2(r,z)-l
1 d2 + f ±2 ^ 2 2, kkldzdz ''
(7.4) (7.4)
contains no 9 dependence whatsoever. The same classification could also be applied to more general prop agation models. For instance, the corresponding equations for the wave Eq. (2.2) are 1 3D: urT —uee + + kl[n2(r,9,z) {r,d, z) - l]u = 0 , (2.2) rr + 2ik0ur + uzz + -^uee r2 N x 2D: urr + 2ik0ur + uzz 2D: urr + 2ik0ur + uzz
l]u = = 0 , (7.5) + kl\n kl[n22(r,9, (r,0,z) z) - l]u 2 kl[n2(r, l]u = 0 . + fco[n (r, z) - l)u
(7.6)
140
Numerical Ocean Acoustic Propagation in Three
Dimensions
7.1.2. Computational tional ClaClassification In order to discuss the computational classification of the 3D, N x 2D, and 2D concepts, it is helpful to recall the numerical solution to Eq. (4.7) which is
m
hG-9*]('-H- -NHHK')-'-
(4.30) (4.30)
Equation (4.30) is solved in two steps, i.e. Equation (4.30) is solved in two steps, i.e.
X wi+1 1+ X 1+6 I[1+1 +{\-l) ( i -!) ] x ]=[•"■ {\u)- ['}(+ (i4+Y)?)UJ x ] 0 + \ Y ) " <"> <"»
and ( l _ £ y ) yij+1+ l = yji+1 . (l - ^ Y \ u = w3+1 .
(7.8) (7.8)
The above two steps can be rewritten in the form of (4.38) and (4.39) as The above two steps can be rewritten in the form of (4.38) and (4.39) as j+11 A*ww* = = ABv? A*wj+l = ABu3
and
B*uj+1 = wj+1 . B*u3+1 = w3+l . Operators A and B have been defined following Eq. (4.30) in Chap. 4. Each of the above two steps requires the solution of a symmetric tridiagonal system of equations. The symmetric B matrix has diagonal elements 1 + 25 and upper and lower diagonal elements —5, where 5S
_ i Ar 22 "~44f& c oorr ((AA00))22 *'
•
(7.9) (7,9)
Thus, each row of Bu3+l, excluding those with boundary terms, has the form {Bu^) = -su%} + (1 + 2 «a ) « $ - *su^l, (7.10) (Bu^)mm Jm — -sv£}+i < ! _ ! •. (7-10) +1 Note that in the 2D case when 6 variation of u is negligible, one must have = u j+ = u so tnat tne U um£] iduces U ini+i right-hand side of Eq. (7.10) reduces m,£+1 m,£-1> 'm,£ = m£-i> to Iu^l > where I is the identity matrix. In the N x 2D case when 0 coupling is negligible, the near equalities of u3J^l+1, u3^], and u3r^t_l will cause B to approximate I very closely. In both cases, Eq. (7.8) reduces to uJ+1 = it; J+1 , u
U
Three-Dimensional
Effects
141
and only Eq. (7.7) needs to be solved (in the N x 2D case, Eq. (7.8) is an uncoupled set of N tfidiagonal subsystems). One should also note that for small s Eq. (7.10) reduces to approximately Iu3^]. There, with a choice of large A0, resulting in a sufficiently small s, the solution of the N x 2D case can be approximated. Further, choosing A8 will produce 8 coupling in the solution if that effect is, in fact, present in the propagation problem under consideration. On the other hand, if 8 coupling is not present in the problem, then even choosing small A0 will not produce a solution that differs significantly from the iVx2D case. In such a situation, the finite difference approximation for operator Y will differ negligibly from zero, so that matrix B will effectively be the identity. In summary, the computational classification of problems consists of
»=[i+(I-£)x](.-iy)^ = i+
[ (i+j)x](i+Hu'"* 2 D : [ 1 + (i-3) X H + I = [' + (i + 3H"'
(429) (7J1)
a +
4 G-!)*F +l -Ni + !)*]*'>. 18)
where X takes on definition (7.4). As indicated above, flexibility in choosing parameter s allows the 8 coupling to be examined. It ought to be pointed out that this is an important feature of the FOR3D model which is an implementation of the numerical solution to the LSS equation. 7.1.3. Physical sical Class Classification This section describes a physical classification for the 3D, N x 2D, and 2D problems. In the 2D case of Eq. (7.3), there is no variation with 8 in the acoustic pressure. In a mean wavefront, the range variable r is a constant and, thus, there would be no variation in the acoustic field. This physical situation is one that has no horizontal refraction. In the N x 2D case, referring to Eq. (7.2), one integrates the resulting energy equation over depth from the surface z = 0 to the base z = ZB of the artificial bottom layer, and the boundary condition u = 0 at both depths. The result is
142
Numerical Ocean Acoustic Propagation in Three
Dimensions
ZB ZE
I
iNV x 22D: D : jd_- f \u\2dz = 0 . dr o0
(7.13)
Since Eq. (7.13) states that the depth average of acoustic energy is constant in range, it follows that energy in any vertical plane 9 = const, is preserved. Thus, as the acoustic wave propagates, no net energy is exchanged between the vertical planes in the absence of 9 coupling, as noted previously for the narrow angle version of version of Eq. (7.2). l From Eq. (7.13), in the case when the source is axisymmetric (omnidirectional for 360° field width), the depth-averaged acoustic energy is the same at any horizontal position (r,0). Both the amplitude and phase of the acoustic field can vary with 9 as a result of the horizontal refraction of wavefronts because the index of refraction is a function of 9. It is correct to interpret the case of no 9 coupling as the one with horizontal refraction but without net energy exchange between the vertical planes. Finally, in the 3D case with 9 coupling, the solution of Eq. (7.1) does not satisfy Eq. (7.13). The case of 9 coupling can be interpreted as admitting both horizontal refraction and net energy between the vertical planes. The actual physics associated with different classes of problem can be summarized in one table (see Table 7.1).
Table 7.1. Table of classification.
Problem
e coupling 1 d2U dr2
r2
3D ATx2D 2D
x
Physics 0 dependence n(r
,*, *) X X
-
X indicates presence. - indicates absence.
It is easily seen that the 2D case is a special case of N x 2D and the N x 2D case is a special case of 3D. This can be visualized in the following two diagrams constructed using the far field wave equation.
Three-Dimensional
Effects
143
Mathematical model
Computer model
From this classification, it is clearly seen that if the 9 coupling effect exists, it cannot be neglected. In the application for solving realistic problems in the region of interest, the existence of 9 coupling effects is not known beforehand; then, it is preferable to apply a model capable of handling the 9 coupling. An important feature of the FOR3D model is the capability for the user to call for 9 coupling. How to call for 9 coupling needs to be clearly discussed. First, recall symbol s defined by Eq. (7.9) below: lAr Ar _ ** s— (7.9) 22 ~4fc^2 (A0) 2 ' 5~~4fc ( ) o r• (A0)2 Suppose a computing device carries a single precision arithmetic operation to 7 significant digits, then any number less than 1ID lun—8 m magnitude can be regarded as machine zero. From the definition of s as r increases, if A9 is chosen to be large so that for fixed Ar the magnitude of 5 is machine
144
Numerical Ocean Acoustic Propagation in Three
Dimensions
zero, this would imply that the B matrix is an identity. Then, there is no need to solve the second system; the resulting problem is at most N x 2D and no 0 coupling can be seen. On the other hand, a small A0 chosen for an increasing r and fixed AT* would call for the FOR3D code to produce 0 coupling results if they physically exist. It is of great interest to consider the situation where the 0 coupling is actually absent. Then, the question of what shall happen if 0 coupling is called for must be examined. The answer can be seen through mathematics. If 0 coupling is called for, |s| > 10" 8 (s is defined by Eq. (7.9)). If \s\ > 10~ 8 , then the B* matrix in Eq. (4.39) is not an identity in theory. However, due to the absence of 0 coupling the field u(r, 6, z) is constant in 0, then Umj+i = Umt£ = ttm,/_i, according to the finite difference discretization in formula (7.10), and B* should become an identity in calculation. All these indicate to the user that (i) when the 0 coupling is physically in existence and the user calls for it using the FOR3D model, the computational results will show 0 coupling; (ii) when the 0 coupling is physically nonexistence and the user calls for it using the FOR3D model, the computational results will clearly indicate no 0 coupling. 7.2. Numerical rical Exa Examples In the section describing the analytic solution, a test of the code's capability for handling 3D effects was shown using an exact solution as a reference. In this section, two numerical examples are presented: one with 0 coupling and one without. But in computation, both examples ask for 0 coupling. In order to demonstrate whether or not 0 coupling exists, results produced by a 2D model (IFD) are used for comparison. Data used for these two examples are realistic ocean environmental data supplied by a group of ocean scientists at the Center of Earth and Planetary Physics of Harvard University.2 This group developed an Ocean Descriptive Predictive System to perform nowcasting and forecasting accurate ocean environmental data in real time. An ocean dynamic model employed in this predictive system is the Harvard Open Ocean Model2 used for real time nowcasting and forecasting of the basic physical fields of velocity, pressure, density, temperature, and salinity in the Gulf stream region. This predictive system predicts the location and evolution of mesoscale phenomena in the ocean region of interest. Important and valuable data to the acousticians are the fronts and eddies connected to the Gulf stream region that predict the sound speed descriptions. It is advantageous to process this type of data to (i) exercise an acoustic
Three-Dimensional Effects
145
model's capability for handling actual ocean phenomena and (ii) help ocean modelers to improve their measurement requirements. This system led to an independent research topic in the scientific community on the interface between ocean models and acoustic models. Initiatives were taken in this area by Robinson and Lee 3 in 1986. Since this is an interesting area of research with many different environments, it is beyond the scope of this book to discuss it in more details. In this book, the application of the Harvard Open Ocean Model data is limited to demonstrating FOR3D's capability of handling 3D effects. These actual 3D effects will be demonstrated whenever they are present and cannot be neglected. Two sets of data were used for two different examples. These two sets of data were obtained from the Harvard Open Ocean Model (one generated in August 1986 and the other in October 1988). } 7.2.1. An cean 1Environment ment without w thout 6 An Ocean
Coupling iling
A typical data set consists of six horizontal layers, ranging from the depth of 100 m, 300 m, 700 m, 1100 m, 2200 m to 3900 m, relative to the surface, as shown in Fig. 7.1. The Gulf stream, meandering from west to east, gave birth to five eddies and shows a section of sound speed at 100 m depth. Three warm core eddies lying north of the Gulf stream trapped the warm water from the Sargasso sea. The two cold core eddies lying south of the Gulf stream contained colder slope water. The data domain, as shown in Fig. 7.2, is centered at (37°30'N, 66°48'W). The propagation direction is towards south. The square domain in 810 km in length. For an additional illustration, Fig. 7.3 shows a contour plot of sound speed in vertical plane. The input parameters for this example are Frequency Source depth Water depth Sound speed Density in water Density in bottom Attenuation in water Bottom attenuation Artificial absorbing bottom Bottom sound speed Maximum range Left sector Right sector
= = = = = = = = = = = = =
25 Hz 100 m 5000 m extracted from Harvard data 1.0g/cm 3 1.0g/cm 3 0 0 5000-6000 m sound speed at 5000 m 300 km 330° 30°
146
Numerical Ocean Acoustic Propagation in Three
Dimensions
Fig. 7.1. Sound speed in six levels (Aug. 16, 1986).
To call for the 0 coupling, an increment of 10° is used for the azimuth and a step size of 10 m is used for the range. It can be seen that the interval, say, between short and medium ranges, as defined by Eq. (7.9), is greater than 10~8. This is sufficient to call for 9 coupling.
Three-Dimensional
Effects
Fig. 7.2. Sound speed at 100 m (Aug. 16, 1986).
Fig. 7.3. Sound speed in the vertical plan (Aug. 16, 1986).
147
148
Numerical Ocean Acoustic Propagation in Three
Dimensions
Fig. 7.4. Propagation loss vs range from FOR3D: TV x 2D and 3D with A0 = 10°, zr = 100 m, and 0 = 180°.
Figure 7.4 presents the propagation loss results plotted vs range in the sector 0 = 0°. A two-dimensional model IFD is used to compute the propagation loss values at different sectors (340°, 350°, 0°, 10°, and 20°). Numerically result at sector 0 = 0° agree identically with FOR3D results. Computations show that for very weak azimuth coupling problems, 3D and AT x 2D results agree identically. 7.2.2. An Ocean Environment nent with 0
Coupling
In order to illustrate a situation with the presence of 0 coupling, a location was selected with variations in ocean bottom topography. A representation of bottom topography in a 900 km by 1950 km region is shown in Fig. 7.5. This was also obtained from Harvard University Open Ocean data. Also shown in Fig. 7.5 is the source location and the wedge-shaped domain of acoustic propagation. Note that the domain straddles a region of significant topographical variation, from the continental slope on the left boundary (viewed from the source in the propagation direction), 0 = 0 L , to the continental shelf on the right boundary, 0 = 0R. Representative sound speed profiles along the vertical sections are presented in Fig. 7.6. The data set also consists of six horizontal layers similar to the previous problem. However, the sound speed values were provided by a forecast at a
Three-Dimensional
Effects
149
Fig. 7.5. Bottom topography.
different date, 3 October 1988, from the Harvard Open Ocean Model. Sound speed information is preprocessed for use in FOR3D. The sound speed profiles can be considered as typical representations of the mean sound speed that might be expected in the propagation region. Figure 7.6 shows sections through the center and both boundaries of the wedge. The sketches include both sound speed and bottom topography. The ocean channel is modeled for acoustic computations by including the given sound speed profiles and bottom topography down to a maximum depth of 1900 m. A sediment layer 100 m thick is added below the bottom interface. The sediment sound speed is 1.005 times the value of water sound speed at the interface, a sound speed gradient of 1900 m is maintained in the layer, and sendiment attenuation is 0.1 dB per wavelength. The depth interval below the sediment layer and above z& = 2000 m, if any, is filled with an artificial absorbing layer with the same value of sound speed as at the base of the sediment layer. The ocean surface is taken as pressure release, and the solutions of the side boundaries are computed from the 2D version of FOR3D, i.e. using Eq. (7.2). The initial condition is an azimuthally symmetric Gaussian starting field.
150
Numerical Ocean Acoustic Propagation in Three
Dimensions
Fig. 7.6. Representative sound speed profiles along vertical sections: (a) east boundary, (b) center line, (c) west boundary.
Three-Dimensional
Effects
151
Fig. 7.7. Propagation loss vs range from FOR3D: n x 2D, and 3D with A0 = 1°, zr = 100 m, and 6= 180°.
The input parameters for this example are Frequency Source depth Water depth Sound speed Density in water Density in bottom Attenuation in water Bottom attenuation Artificial absorbing bottom Bottom sound speed Maximum range Left sector Right sector
= 50 Hz = 100 m = 2000 m = extracted from Harvard data = 1.0g/cm 3 = 1.7g/cm 3 = 0 =0.1 = 2000-2100 m = 1.005 x sound speed in water = 40 km = 320° = 40°
To call for the 9 coupling, an increment of 1° is used for the azimuth, a step size of 2 m is used for the range, and the depth partition is 2 m. The dashed curve in Fig. 7.7 is the N x 2D calculation with Eq. (4.39) suppressed. The solid curve shows a FOR3D calculation with A0 = 1°. The two curves nearly coincide out to 10 km. Beyond this range a small phase
152
Numerical Ocean Acoustic Propagation in Three
Dimensions
shift starts to appear and by 20 km the patterns of the two curves differ markedly. After 20 km, the intensity of the differences becomes strong, up to 20 dB. In general, the A0 = 1° result has significantly higher intensity. These calculations confirm the existence of substantial 0 coupling in this domain with bottom topographical variations. The accuracy of the 3D calculation may be confirmed by a computation with small A0. We note that decreasing the azimuthal increment increases the computation time proportionately because of the increased number of sectors. One effective procedure for reducing the cost, if an accurate solution at only one sector is required, is by reducing the field width 0R — #L- The success of this method was observed by comparing solutions computed with the same small increment over both larger and smaller field widths. In treating the prediction of 3D ocean acoustic propagation, the mechanism of 0 coupling is important in some situations. If 0 coupling is present, its treatment would call for the use of fully 3D model. If 0 coupling is weak or absent, accurate 2D models may be applied to process the prediction in N different sectors, for which case the terminology N x 2D has been used. This chapter reviewed the background and features of the FOR3D model. Then, 3D, N x 2D, and 2D propagation cases were discussed mathematically, computationally, and physically using the model. In order to establish FOR3D's accuracy and to demonstrate its capability for handling 0 coupling, an analytic solution test was performed in the previous chapter. An exact solution of the propagation equation that is the basis of FOR3D was used. Both high accuracy and full 0 coupling occur for computations with sufficient azimuthal resolution. We have seen an application of FOR3D made to an ocean environment with realistic bottom topography and sound speed profiles, obtained from the Harvard University Gulfcasting Group. A propagation in a shelf slope region was examined. The occurrence of substantial 0 coupling was demonstrated in the domain with significant bottom variations. In a situation such as this, only accurate 3D propagation models should be used, rather than N x 2D models. It is apparent that not every 3D ocean acoustics problem can be adequately solved by 2D propagation models. References 1. J. S. Perkins and R. N. Baer, "An approximation to the three-dimensional parabolic equation method for acoustic propagation," J. Acoust. Soc. Am. 72 (1982) 515-522.
Three-Dimensional Effects
153
2. A. R. Robinson and L. J. Walstad, "The Harvard Open Ocean Model: Calibration and application to dynamical process, forecasting, and data assimilation studies," J. Appl. Numer. Math. 3 (1987) 89-132. 3. A. R. Robinson and D. Lee, Oceanpgraphy and, Acoustic-Prediction and Propagation Models, AIP Press, New York, 1994.
Chapter 8
The Computer Model — F O R 3 D
This chapter presents a complete listing of the latest version of the computer code, FOR3D, written in FORTRAN language for a CRAY computer. Some program structures of the earlier versions of FOR3D were discussed in Chap. 4. To make the user's life as easy as possible, the FOR3D code was designed to be easy to use and to have as many complete, desirable capabilities as possible. Usage is straightforward and the input runstream format may be found in the program listing. Users should bear in mind that one should take advantage of the code design and ask for the 0-coupling; blind use of the code may neglect some important threedimensional effects that should not be ignored. Generally, for large-scale propagation problems, supercomputers are required to obtain solutions. These supercomputers may still be time-consuming. Therefore, a constant search for computing speed continues. Users are welcome and encouraged to contribute suggestions. This computer code was originally developed on the VAX 11/780 computer at the Naval Undersea Warfare Center, New London, Connecticut, U.S.A. This code was made operational on three supercomputers: The CRAY X-MP, the iPSC (Hypercube), and the CM2 (Connection Machine 155
156
Numerical Ocean Acoustic Propagation in Three
Dimensions
2nd version). Installing the code on different computers may or may not be simple. Users should be aware of operating systems and machine dependencies when considering installing FOR3D on the computer of their choice.
The Computer Model — F0R3D FOR3D
C C C C Q Q C C C C C C C C C C C C C C C C C C C C C C C C C C C Q C C C C C C C C C C C C Q C C C C C C
157
FILE FOR3D.F F0R3D.F VERSION 1.2 - 2/MAY/94 ****************************************************************** ****************************************** PROGRAM PROGRAM FOR3D FOR3D ****************************************************************** ****************************************************************** * THIS IS AN IMPROVED VERSION OF THE RESEARCH CODE FOR3D. * * THIS IS AN IMPROVED VERSION OF THE RESEARCH CODE FOR3D. * ****************************************************************** ****************************************************************** ****************************************************************** ******************************************************************* MATHEMATICAL MODEL BY: * * MATHEMATICAL MODEL BY: * * DR. D. LEE , CODE 3122 * * DR. ENVIRONMENTAL D. LEE , CODE AND 3122 TACTICAL SUPPORT SYSTEMS DEPARTMENT * ANDSYSTEMS TACTICALCENTER SUPPORT SYSTEMS DEPARTMENT * * ENVIRONMENTAL NAVAL UNDERWATER * NAVAL UNDERWATER SYSTEMS CENTER * NEW LONDON, CT 06320, U.S.A. * * NEW LONDON, CT 06320, U.S.A. * * PROF. M. H. SCHULTZ * PROF. DEPARTMENT COMPUTER SCIENCE M. H.OF SCHULTZ * * DEPARTMENT YALE UNIVERSITY OF COMPUTER SCIENCE * * YALE NEW HAVEN, CT 06520, U.S.A. UNIVERSITY * * NEW HAVEN, CT 06520, U.S.A. * * PROF. YOUCEF SAAD * * PROF. DEPARTMENT COMPUTER SCIENCE YOUCEFOFSAAD * * DEPARTMENT UNIVERSITY OF COMPUTER MINNESOTASCIENCE * * UNIVERSITY MINNEAPOLIS, 55455-0159, U.S.A. * OFMN MINNESOTA * MINNEAPOLIS, MN 55455-0159, U.S.A. * * PROF. W. L. SIEGMANN * * DEPARTMENT MATHEMATICAL SCIENCES * * PROF. W. L.OF SIEGMANN * * RENSSELAER OF POLYTECHNIC INSTITUTE * * DEPARTMENT MATHEMATICAL SCIENCES * * TROY, NY 12180-3590, * * RENSSELAER POLYTECHNICU.S.A. INSTITUTE * ****************************************************************** * TROY, NY 12180-3590, U.S.A. * * ORIGINAL VERSION OF MATHEMATICAL MODEL REPORTED IN: * ****************************************************************** * AN EFFICIENT METHOD FOR SOLVING THE THREE-DIMENSIONAL WIDE * * ORIGINAL VERSION OF MATHEMATICAL MODEL REPORTED IN: * * ANGLE WAVE EQUATION, RESEARCH REPORT YALEU/DCS/RR-643, * * AN EFFICIENT METHOD SOLVING WIDE * * YALE UNIVERSITY, NEWFOR HAVEN, CT.,THE OCTTHREE-DIMENSIONAL 1986. * * ANGLE WAVE EQUATION, RESEARCH REPORT YALEU/DCS/RR-643, * ****************************************************************** * YALE UNIVERSITY, NEW HAVEN, CT., OCT 1986. * ****************************************************************** ******************************************************************* COMPUTER MODEL BY: * ******************************************************************* G. BOTSEAS , CODE 3122 * * COMPUTER ENVIRONMENTAL MODELAND BY:TACTICAL SUPPORT SYSTEMS DEPARTMENT * * G. NAVAL UNDERWATER BOTSEAS , CODE SYSTEMS 3122 CENTER * * NEW LONDON, CONNECTICUT 06320, U.S.A. * * ENVIRONMENTAL AND TACTICAL SUPPORT SYSTEMS DEPARTMENT * ****************************************************************** * NAVAL UNDERWATER SYSTEMS CENTER * * ORIGINAL VERSION OF COMPUTER MODEL REPORTED IN: * * NEW LONDON, CONNECTICUT 06320, U.S.A. * ******************************************************************* FOR3D: A COMPUTER MODEL FOR SOLVING THE LSS THREE-DIMENSIONAL * * WIDE ANGLE WAVE EQUATION, NUSC TR 7943, 14AUG87, * * ORIGINALG.VERSION OFD. COMPUTER MODEL REPORTED IN: * * BOTSEAS, LEE, AND D. KING * * FOR3D: A COMPUTER MODEL FORMAT FOR SOLVING THEIMPROVED LSS THREE-DIMENSIONAL * * SEE COMMENTS FOR INPUT FOR THIS VERSION * * WIDE ANGLE WAVE EQUATION, NUSC TR 7943, 14AUG87, * ****************************************************************** * G. BOTSEAS, D. LEE, AND D. KING * ****************************************************************** * SEE COMMENTS FOR INPUT FORMAT FOR THIS IMPROVED VERSION * * PROJECT SPONSORED BY: * ******************************************************************* DNL - PROGRAM MANAGER, DR. G.W. MORTON * ******************************************************************* NUSC - IN-HOUSE LABORATORY INDEPENDENT RESEARCH * BY: * * PROJECT SPONSORED PROGRAM MANAGERS, DRS. W.A. VONWINKLE AND K. LIMA G.W. MORTON * DNL ONR - PROGRAM MANAGER, MANAGERS,DR. DRS. R.L. LAU, R. OBROCHTA, M. ORR, ** IN-HOUSE LABORATORY INDEPENDENT RESEARCH * * NUSC - AND R.BAER * PROGRAM MANAGERS, DRS. W.A. VONWINKLE AND K. LIMA * * ONR - PROGRAM MANAGERS, DRS. R.L. LAU, R. OBROCHTA, M. ORR, * * AND R.BAER *
158
C C Q C C C C C C Q C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
* NORDA - PROGRAM MANAGER, R.W. MCGIRR * ********** ************************************************************ ****************************************************************** * VAX/VMS VERSION - FORTRAN * ****************************************************************** * MAIN PROGRAM IS FOR3D. * ****************************************************************** * COMMON BLOCK IS IN FILE FOR3D.CMN * * DIMENSIONAL PARAMETERS ARE IN FILE FOR3D.PAR * ****************************************************************** * ALPHABETICAL LIST OF SUBROUTINES FOLLCWS * ****************************************************************** * AMIFD3 - COMPUTES DIAGONALS FOR MATRIX A. CALLED BY FOR3D. * * BCON3D - SUPPLIES BOTTOM CONDITION. CALLED BY RHS. * * BMIFD3 - IF ITYPEB = 0, BOTX AND BOTY ARE SET TO 0. F0R3D. IF ITYPEB 1, UBCON3D IS CALLED. * INDX3D ) XN2. - IF ITYPEB = 3, AN ABSORBING LAYER IS INTRODUCED. * * BMIFD3 - COMPUTES DIAGONALS FOR MATRIX B. CALLED BY FOR3D. * * INDX3D - COMPUTES INDEX OF REFRACTION ARRAYS XNl AND XN2. * - CALLED BY FOR3D. * * PORT2D - GENERATES 2D SOLUTION AT PORT SIDEWALL IF ITYPPW=2 * * PORT3D - SUPPLIES BOUNDARY CONDITIONS AT PORT SIDEWALL. * - IF ITYPPW = 0, THE FIELD ALONG THE WALL IS SET TO 0.* - IF ITYPPW = 1, UPORT3D IS CALLED. * - IF ITYPPW = 2, PORT3D PREPARES FOR A 2D SOLUTION * PRINTP ALONG THE PORT WALL. * RHS OF SYSTEM OF EQUATIONS. - CALLED BY RHS IF NDIM = 3 . * * PRINTP - PRINTS SELECTED INPUT PARAMETERS. CALLED BY FOR3D. * * RHS - COMPUTES RIGHT HAND SIDE OF SYSTEM OF EQUATIONS. * - CALLED BY FOR3D. * * SCON3D - SUPPLIES SURFACE CONDITION. CALLED BY RHS. 0. * - IF ITYPES = 0, SURX AND SURY ARE SET TO 0. * - IF ITYPEB = 1, USCON3D IS CALLED. * 2. * SFLD3D - GENERATES GAUSSIAN STARTING FIELD IF ISF = 0. * * STBD2D •- CALLS USFLD3D IF ISF = 1. ITYPSW=2 - GENERATES GREEN'S STARTING FIELD IF ISF = 2. * - CALLED BY FOR3D. * * STBD2D - GENERATES 2D SOLUTION AT STBD SIDEWALL IF ITYPSW=2 * - AND NDIM = 3. CALLED BY TWOSTEP. * * STBD3D - SUPPLIES BOUNDARY CONDITIONS AT STARBOARD SIDEWALL. * - IF ITYPSW = 0, THE FIELD ALONG THE WALL IS SET TO 0.* - IF ITYPSW = 1, USTBD3D IS CALLED. * - IF ITYPSW = 2, STBD3D PREPARES FOR A 2D SOLUTION. * SVP3D ALONG THE STARBOARD WALL. * - CALLED BY RHS IF NDIM = 3 . * * SVP3D - READS SOUND SPEED PROFILES IN INPUT RUNSTREAM. * - CALLED BY FOR3D IF KSVP = 0 . * * TRID3D - SOLVES A TRIDIAGONAL SYSTEM OF EQUATIONS. * - CALLED BY PORT2D, STBD2D, AND TWOSTEP. * * TWOSTEP - MARCHES THE ACOUSTIC FIELD FORWARD. * - FIRST STEP SOLVES IN RANGE. * TWOSTEP CALLS PORT2D. - SECOND STEP SOLVES IN AZIMUTH. * - CALLED BY FOR3D. * - IF NDIM = 3 AND ITYPPW = 2, TWOSTEP CALLS PORT2D. *
The Computer Model — FOR3D F0R3D
C C C Q C Q C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
159
- IF NDIM = 3 AND ITYPSW « 2, IWOSTEP CALLS STBD2D. * - IF NDIM - 1 OR 2, TRID3D IS CALLED ONCE. * - IF NDIM = 3, TRID3D IS CALLED IWICE. * ****************************************************************** ****************************************************************** * USER SUBROUTINES SUBROUTINES * * USER * ****************************************************************** ****************************************************************** * UBCON3D - USER SUPPLIED BOTTOM CONDITIONS. CALLED BY BCON3D. * * UBCON3D CALLED BY BCON3D. * * UBOTTOM - USER USER SUPPLIED SUPPLIED BOTTOM BOTTOM CONDITIONS. PROFILE INPUT ROUTINE. * * UBOTTOM -- USER SUPPLIED BOTTOM PROFILE * CALLED BY FOR3D IF KBOT NE 0.INPUT ROUTINE. * BY FOR3D USER IF KBOT NE 0. FOR TEST PURPOSES. * * UEXACT -- CALLED EXACT SOLUTION. WRITTEN. * * UEXACT - EXACT * CALLEDSOLUTION. BY FOR3D.USER WRITTEN. FOR TEST PURPOSES. * BY FOR3D. * * UPORT3D - CALLED USER SUPPLIED PORT WALL CONDITIONS. CALLED BY PORT3D* * UPORT3D WALLCONDITIONS. CONDITIONS.CALLED CALLEDBYBY PORT3D* * USCON3D - USER USER SUPPLIED SUPPLIED PORT SURFACE SCON3D. * * USCON3D CALLED BY SCON3D. * * USFLD3D - USER USER SUPPLIED SUPPLIED SURFACE STARTINGCONDITIONS. FIELD. * * USFLD3D - USER SUPPLIED STARTING FIELD. * CALLED BY SFLD3D IF ISF = 1. * BY SFLD3D IFWALL ISF = 1. * * USTBD3D - CALLED USER SUPPLIED STBD CONDITIONS. CALLED BY STBD3D* * USTBD3D STBDPROFILE WALL CONDITIONS. CALLED BY STBD3D* * USVP3D - USER USER SUPPLIED SOUND SPEED INPUT ROUTINE. * * USVP3D - USER SOUND SPEED IF PROFILE INPUT * CALLED BY FOR3D KSVP NOT 0. ROUTINE. * CALLED BY FOR3D IF KSVP NOT 0. * ****************************************************************** ******************************************************************* ALPHABETICAL LIST OF SOME PROGRAM VARIABLES FOLLOWS: * ****************************************************************** * ALPHABETICAL LIST OF SOME PROGRAM VARIABLES FOLLOWS: * ******************************************************************* AL - ARRAY - LCWER DIAGONAL OF MATRIX A - COMPLEX * AL ALFA - ARRAY SET TO-1/12 DOUGLAS OF METHOD REQUESTED LCWERIFDIAGONAL MATRIX A - COMPLEX * ALFA ALPHA - VOLUME - DB/METER SET TO ATTENUATION 1/12 IF DOUGLAS METHOD REQUESTED AM ARRAY -ATTENUATION MAIN DIAGONAL OF MATRIX A - COMPLEX * ALPHA - VOLUME - DB/METER * AM ANG - ARRAY RELATIVE BEARING - DEGREES - MAIN DIAGONAL OF MATRIX A - COMPLEX * ANG AU - ARRAY - UPPER DIAGONAL OF MATRIX A - COMPLEX RELATIVE BEARING - DEGREES * AU ATT - ARRAY ATTENUATION FOR ARTIFICIAL ABSORBING LAYER - UPPERCOEFFICIENT DIAGONAL OF MATRIX A - COMPLEX * ATT BETA - ATTENUATION ARRAY - ATTENUATION IN LAYERS - DB/WAVELENGTH COEFFICIENT FOR ARTIFICIAL ABSORBING LAYER * BETA BL LCWER DIAGONAL OF MATRIX B - COMPLEX - ARRAY - ATTENUATION IN LAYERS - DB/WAVELENGTH * BL BM - ARRAY - LCWER MAIN DIAGONAL DIAGONAL OF OFMATRIX MATRIX BB--COMPLEX COMPLEX * BM BOTX - ARRAY - MAIN COMPLEX PRESSURE AT BOTTOM ADVANCED RANGE RA+DR DIAGONAL OF MATRIX B -AT COMPLEX * BOTX BOTY - ARRAY - COMPLEX PRESSURE AT BOTTOM AT ADVANCED PRESENT RANGE RANGERA RA+DR * BOTY BTA - ARRAY - COMPLEX PARTIAL PRESSURE SOLUTION AT OF BOTTOM SYSTEM AT OF PRESENT EQUATIONS RANGE RA * BTA BU UPPER DIAGONAL MATRIX - COMPLEX - ARRAY - PARTIAL SOLUTIONOFOF SYSTEMB OF EQUATIONS * BU CO - ARRAY REFERENCE SPEED OF SOUND METERS/SEC - UPPER DIAGONAL OF-MATRIX B - COMPLEX * CO CSVP - REFERENCE ARRAY - SOUND VELOCITY METERS/SEC SPEED OF SOUND- METERS/SEC * CSVP D RIGHT VELOCITY HAND SIDE-OF SYSTEM OF EQUATIONS - COMPLEX - ARRAY - SOUND METERS/SEC * D DEG - ARRAY CONVERSION FACTOR DEGREES/RADIAN - RIGHT HAND -SIDE OF SYSTEM OF EQUATIONS - COMPLEX * DEG DOUGRA--CONVERSION 0 - DON'T USE-DOUGLAS METHOD FACTOR DEGREES/RADIAN * DOUGRA - NOT 0 0 - RANGE DON'T AT USEWHICH DOUGLAS TO BEGIN METHODDOUGLAS METHOD - METERS * DR - RANGE NOT 0STEP - RANGE - METERS AT WHICH TO BEGIN DOUGLAS METHOD - METERS * DR DTH - RANGE WIDTH STEP OF SECTOR - METERS - DEGREES - WIDTH SECTOR * DTH DZ DEPTH OF INCREMENT OFDEGREES SOLUTION - METERS - METERS * DZ DZZ - DEPTH INCREMENT OF FORSOLUTION ADJUSTING LAYER DEPTHS IN SLOPING BOTTOM DEPTH OF INCREMENT ADJUSTING LAYER DEPTHS IN SLOPING BOTTOM * DZZ FLEW - WIDTH FIELD -FOR DEGREES OF FIELD * FLEW FRQ - WIDTH FREQUENCY - HZ - DEGREES - HZ H0(1) * FRQ HNK - FREQUENCY HANKEL FUNCTION H0(1) * HNK HNKL - HANKEL EXTERNALFUNCTION FUNCTION - COMPUTES HANKEL FUNCTION H0(1) FUNCTION COMPUTES HANKEL FUNCTION H0(1) * HNKL IBOT - EXTERNAL BOTTOM DEPTH PRINT-FLAG * IBOT - BOTTOM PRINTBOTTOM FLAG DEPTHS 0 - DO DEPTH NOT PRINT NOTBOTTOM PRINT BOTTOM 10 - DO PRINT DEPTHS DEPTHS - PRINT BOTTOM FLAG DEPTHS * IHNK - 1 HANKEL FUNCTION * IHNK - HANKEL FUNCTION FLAGNOT USED. 10*LOG(R) ADDED TO SOLUTION. 0 - HANKEL FUNCTION 0 - HANKEL FUNCTION NOT USED. 10*LOG(R) ADDED TO SOLUTION.
160 C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
Numerical Ocean Acoustic Propagation in Three
* * *
*
*
* * *
*
*
*
* *
*
*
*
Dimensions
1 - STARTING FIELD DIVIDED BY HANKEL FUNCTION. SOLUTION MULTIPLIED BY HANKEL FUNCTION BEFORE COMPUTING PROPAGATION LOSS. ILYR - INDEX FOR ARRAYS BETA, ZLYR, AND RHO IPZ - EVERY IPZ'TH VALUE IN DEPTH IS PRINTED ISF - STARTING FIELD FLAG 0 - PROGRAM GENERATES GAUSSIAN STARTING FIELD AT RANGE - 0.0. SEE SUBROUTINE SFLD3D. 1 - USER SUPPLIES STARTING FIELD. SEE SUBROUTINE USFLD3D. 2 - GREENS WIDE ANGLE STARTER 3 - AVAILABLE ISFLD - STARTING FIELD PRINT FLAG 0 - DO NOT PRINT STARTING FIELD 1 - PRINT STARTING FIELD ISVP - SVP PRINT FLAG 0 - DO NOT PRINT SOUND VELOCITY PROFILE 1 - PRINT SOUND VELOCITY PROFILE ITEMP - TEMPORARY VARIABLE ITRK - ARRAY - INDICES FOR ARRAY TRACK ITYPEB - TYPE OF BOTTOM 0 - BCON3D SETS BOTY AND BOTX = 0.0 1 - USER SUPPLIES BOTTOM CONDITION. SEE SUBROUTINE UBCON3D. 2 - SPARE. 3 - ABSORBING LAYER INTRODUCED - BOTTOM OF LAYER IS FLAT 4 - SPARE. ITYPES - TYPE OF SURFACE 0 - PRESSURE RELEASE. SCON3D SETS SURY AND SURX = 0 . 0 1 - USER SUPPLIES SURFACE CONDITION. SEE SUBROUTINE USCON3D. 2 - SPARE ITYPPW - TYPE OF PORT SIDEWALL BOUNDARY CONDITION. 0 - FIELD ALONG PORT SIDEWALL IS SET TO 0.0. 1 - USER SUPPLIED. SEE SUBROUTINE UPORT3D. 2 - MODEL GENERATES 2D SOLUTION IF NDIM - 3. ITYPSW - TYPE OF STBD SIDEWALL BOUNDARY CONDITION. 0 - FIELD ALONG STBD SIDEWALL IS SET TO 0.0. 1 - USER SUPPLIED. SEE SUBROUTINE USTBD3D. 2 - MODEL GENERATES 2D SOLUTION IF NDIM - 3. IWZ INDEX INCREMENT OF RECEIVER SOLUTIONS TO BE WRITTEN ON DISK. IXSVP - ARRAY OF POINTERS WHICH POINT TO ENTRIES IN CSVP AND ZSVP. - IXSVP(1,L) POINTS TO BOTTOM DEPTH AND SPEED IN LAYER 1 ON SECTOR BOUNDARY L. - IXSVP(2,L) POINTS TO BOTTOM DEPTH AND SPEED IN LAYER 2 ON SECTOR BOUNDARY L. ETC. KSVP - SVP PROFILE FLAG. 0 - PROFILE IS IN RUNSTREAM - SEE SUBROUTINE SVP3D. NOT 0 - USER ROUTINE GENERATES PROFILES - SEE SUBROUTINE USVP3D. - KSVP MAY BE USED AS AN INDEX IN A GOTO STATEMENT IN USVP3D. KBOT - BOTTOM PROFILE FLAG. 0 PROFILE IS IN RUNSTREAM . NOT 0 - USER ROUTINE GENERATES PROFILES - SEE SUBROUTINE UBOTTOM. MLYR - TEMPORARY - NUMBER OF LAYERS INVOLVED IN SPECIFIC CALCULATION.
The Computer Model — F0R3D C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
*
MM
*
MXLYR
* * * *
MXN MXSVP MXTRK N
* * * * * * * * * * * * * * * * * * * * * * * * * * *
Nl NA NDIV NIU NLYR NOLD NOU NPU NSEC NSOL NSVP NTOT NWSVP NZ OLDR PDR PDTH PDZ PHI PI PL PORTX PORTY RO Rl R2 RA
* * * * * * * * * * *
RA+DR RHO RHOG RMAX RSVP STBDX STBDY SURX SURY TEMP THETA
* *
TITLE TM
161
INDEX - MM+1 POINTS TO FIRST VALUE OF ARTIFICIAL ABSORBING LAYER IN ARRAY U. - PARAMETER - MAXIMUM NUMBER OF LAYERS. - MAX DIMENSION OF ARRAYS BETA,RHO,ZLYR,IXSVP. - PARAMETER - MAXIMUM DIMENSION OF C, X, Y, AND U ARRAYS. - PARAMETER - MAXIMUM DIMENSION OF ARRAYS CSVP AND ZSVP. - PARAMETER - MAXIMUM DIMENSION OF ARRAY TRACK. - NUMBER OF EQUI-SPACED POINTS IN U. - INCLUDES BOTTOM POINT - DOES NOT INCLUDE SURFACE POINT. DIAGONAL ELEMENTS Nl THRU N WILL BE COMPUTED - NOT USED. NUMBER OF POINTS IN ABSORBING LAYER. - IF DOUGLAS METHOD IS REQUESTED, DIVIDE N BY NDIV. - PARAMETER - INPUT UNIT NUMBER. - NUMBER OF LAYERS. - NUMBER OF RECEIVER DEPTHS ON ENTRY TO ROUTINE CRNK. - PARAMETER - OUTPUT UNIT NUMBER. - PARAMETER - PRINTER UNIT NUMBER. - NUMBER OF SECTORS. - NUMBER OF SECTOR BOUNDARIES (NSEC+1). - NUMBER OF POINTS IN CSVP AND ZSVP. - TOTAL RECEIVER DEPTHS AT EACH RANGE STEP (N*NSOL). - NUMBER OF POINTS IN LAYER 1 SVP. NUMBER OF SOLUTION DEPTHS TO BE WRITTEN ON DISK. - RANGE INCREMENT AT START OF PROBLEM. - RANGE INCREMENT AT WHICH SOLUTION IS PRINTED - METERS. - AZIMUTHAL INCREMENT AT WHICH SOLUTION IS PRINTED - DEGREES. DEPTH INCREMENT AT WHICH SOLUTION IS PRINTED - METERS. WIDTH OF SECTOR IN RADIANS. 3.141592654 PROPAGATION LOSS - DB. - ARRAY - COMPLEX FIELD AT PORT SIDEWALL - ADVANCED RANGE. - ARRAY - COMPLEX FIELD AT PORT SIDEWALL - PRESENT RANGE. INITIAL RANGE - METERS. RANGE AT WHICH BOTTOM DEPTH IS AVAILABLE - METERS. NEXT RANGE AT WHICH BOTTOM DEPTH IS AVAILABLE - METERS. HORIZONTAL RANGE OF STARTING FIELD FROM SOURCE - METERS. - RA IS SET TO 0.0 IF STARTING FIELD IS GAUSSIAN. RA IS - INCREMENTED BY DR AS SOLUTION IS MARCHED OUT IN RANGE. - RANGE TO WHICH SOLUTION IS TO BE ADVANCED - METERS. - ARRAY - DENSITY IN LAYER . - ARRAY - DENSITY GRADIENT IN LAYER. - MAXIMUM RANGE OF SOLUTION - METERS. - NEXT RANGE AT WHICH SVP IS AVAILABLE - METERS. - ARRAY - COMPLEX FIELD AT STBD SIDEWALL - ADVANCED RANGE. - ARRAY - COMPLEX FIELD AT STBD SIDEWALL - PRESENT RANGE. - ARRAY - COMPLEX PRESSURE AT SURFACE AT ADVANCED RANGE RA+DR. - ARRAY - COMPLEX PRESSURE AT SURFACE AT PRESENT RANGE RA. - TEMPORARY VARIABLE - COMPLEX. - ARRAY - SLOPE OF BOTTOM ALONG SECTOR BOUNDARIES - RADIANS. .EQ.O — FLAT BOTTOM . .GT.O — SHALLOW TO DEEP. .LT.O — DEEP TO SHALLCW. - 80 CHARACTER TITLE. ARRAY - TIME OF DAY.
Numerical Ocean Acoustic Propagation in Three
162 C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
* * * * * * * *
* * * * •* * * * *
* * * *
Dimensions
TRACK - 3 DIM. ARRAY - RANGE AND DEPTH OF WATER - METERS. - ASSUMES FLAT BOTTOM AT PRESENT TIME. U - ARRAY - COMPLEX ACOUSTIC PRESSURE FIELD. U1-U12 - USER MAY USE THESE VARIABLES TO INPUT DATA REQUIRED BY USER - ROUTINES - REAL - IN COMMON BLOCK. UA-UE - USER MAY USE THESE VARIABLES - COMPLEX - IN COMMON BLOCK V - ARRAY - PARTIAL SOLUTION OF COMPLEX FIELD WDR - RANGE STEP AT WHICH SOLUTION IS WRITTEN ON DISK - METERS WDTH - AZIMUTHAL INCREMENT AT WHICH SOLUTION IS WRITTEN ON DISK - DEG WDZ - DEPTH INCREMENT AT WHICH SOLUTION IS WRITTEN ON DISK - METERS - WDZ SHOULD BE SELECTED SO THAT PLOT PROGRAM DOES NOT - INTERPOLATE BETWEEN WIDELY SPACED RECEIVERS. WZ1 - FIRST RECEIVER DEPTH AT WHICH SOLUTION IS WRITTEN ON DISK WZ2 LAST RECEIVER DEPTH AT WHICH SOLUTION IS WRITTEN ON DISK - IN OTHER WORDS, WRITE WZl TO WZ2 BY WDZ - METERS XKO - REFERENCE WAVE NUMBER XN2 - ARRAY - INDEX OF REFRACTION SQUARED - COMPLEX XPR - RANGE AT WHICH SOLUTION IS PRINTED - METERS XWR - RANGE AT WHICH SOLUTION IS WRITTEN ON DISK - METERS Zl - DEPTH OF WATER AT RANGE Rl - METERS Z2 - DEPTH OF WATER AT RANGE R2 - METERS ZA - DEPTH OF FIELD AT RANGE RA - METERS - INITIAL DEPTH OF STARTING FIELD AT RANGE RA IS - AS FOLLOWS: - IF ITYPEB = 0 OR 1, ZA IS MAXIMUM DEPTH OF - BOTTOM-MOST SEDIMENT LAYER AT INITIAL RANGE OF - STARTING FIELD. IF ITYPEB = 3, ZA IS MAXIMUM - DEPTH OF ARTIFICIAL ABSORBING LAYER AT INITIAL - RANGE OF STARTING FIELD. PROGRAM INSERTS LAYER. - RHO AND BETA ARE OBTAINED FROM LAYER ABOVE. - SPEED IS BOTTOM-MOST SPEED FROM LAYER ABOVE. - BOTTOM OF ABSORBING LAYER REMAINS FLAT. ZI - DEPTH OF RECEIVER 'I' - METERS. ZLYR - ARRAY - DEPTH TO BOTTOM OF LAYER - METERS. ZS - SOURCE DEPTH - METERS. ZSVP - ARRAY - DEPTH OF SOUND VELOCITY - METERS.
Q
******************************************************************
c
******************************************************************
C C C C C C C C C C C C C C C C
* * * LINE
INPUT UNIT NUMBER = NIU INPUT FILE NAME = FOR3D.IN CONTENTS: INPUT RUNSTREAM IN FREE FORMAT INPUT DATA
1
TITLE
2
NDIM
3
FRQ,ZS/CO/ISF,RA/ZA/N/IHNK,ITYPES/ITYPEB, ITYPPW^ITYPSW^LEW^SEC
4 5
RMAX,DR,WDR,WZl,WZ2,WDZ,WDTH,PDR,PDZ,PDTH,ISFLD,ISVP,IBOT DOUGRA,NDIV
The Computer Model — F0R3D
C C C C C C C C C C C C C C C Q C C C C C C C C C
c C Q
6
01,02,03,04,05,06,07,08,09,010,011,012
7
KBOT
8 9
Rl,Zl R2,Z2 . .
N N+l
** * ** *** ** . * -1,-1 **
163
IF KBOT = 0, BOTTOM PROFILE IS IN RONSTREAM. RANGE, WATER DEPTH (METERS). -1,-1 MARKS END OF THIS PROFILE. ENTER PROFILE FOR EACH SECTOR BOONDARY. PORT BOONDARY FIRST. IF KBOT NE 0, OBOTTOM IS CALLED. OMIT LINES 8 THRO N+l.
************************************************ * * ************************************** * NLYRS(L) * * **************************** * ** • NOTE 1 ZLYR(I/L),RHO(I,L),RHOG(I,L), * ** • NOTE ***■ NOTE 2 BETA(I,L),BETAG(I,L) ** NOTE ***' NOTE *** 1 3 ZSVP(1,L),CSVP(1,L) *** NOTE *** 2 ** ZSVP(2,L),CSVP(2,L) ** 3 ** * . . * * * ZSVP(J,L),CSVP(J,L) ************ * * ********************** *
N+2 RSVP N+3 KSVP N+4 N+5 N+6 N+7 . N+M
******************************** * QUICK REFERENCE AND NOTES FOR INPUT RUNSTREAM * UNITS: METERS AND METERS/SEC EXCEPT AS NOTED ******************************************************************
C LINE*** QOICK REFERENCE AND NOTES FOR INPOT RONSTREAM C *** ONITS: METERS AND METERS/SEC EXCEPT AS NOTED USER NOTE. 80 CHARACTERS MAXIMUM. C ****************************************************************** C LINE INPOT DATA NUMBER OF DIMENSIONS. C C 1 TITLE = OSER NOTE. 80 CHARACTERS MAXIMOM. C C 2 NDIM = NOMBER OF DIMENSIONS. C 1 - 2D SOLUTION. 3 FRQ FREQUENCY C 2 - N x 2D(HZ) SOLUTIONS. C 3 - 3D SOLUTIONS. C C 3 FRQ FREQUENCY (HZ) REFERENCE SOUND SPEED. IF CO = 0.0, CO IS SET TO AVERAGE C SPEED FIRST LAYER. C ZS SOORCEINDEPTH C ISF = REFERENCE STARTING FIELD C CO SOONDFLAG. SPEED. IF CO = 0.0, CO IS SET TO AVERAGE 0 = GAUSSIAN. C SPEED IN FIRST LAYER. 1 = USER FIELD. C = GREENS STARTER. C ISF = 2STARTING FIELD FLAG. C 0 = GAOSSIAN. RA = HORIZONTAL RANGE FROM SOURCE TO STARTING FIELD. C 1 = OSER FIELD. RA SET TOSTARTER. 0.0 IF ISF = 0. C 2 =IS GREENS C C RA HORIZONTAL RANGE FROM SOORCE TO STARTING FIELD. C RA IS SET TO 0.0 IF ISF = 0.
164 C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C 4 C C C C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
ZA
DEPTH OF STARTING FIELD AT RANGE RA. IF ZA = 0.0, ZA IS SET TO MAX DEPTH OF BOTTOM LAYER IN FIRST PROFILE. IF ITYPEB 2 OR 3 AND ZA « 0.0, ZA IS SET TO (4/3)*MAX DEPTH OF BOTTOM LAYER. IF ITYPEB = 3 AND ZA NOT ZERO, THE ARTIFICIAL BOTTOM LAYER IS EXTENDED TO ZA METERS PROVIDED THAT ZA IS GREATER THAN OR EQUAL TO MAX DEPTH OF BOTTOM LAYER IN FIRST PROFILE.
N
NUMBER OF EQUISPACED RECEIVERS IN STARTING FIELD. IF N - 0, N IS SET SO THAT THE RECEIVER DEPTH INCREMENT IS EQUAL TO 1 METER. IF N IS GREATER THAN MXN N IS SET TO MXN.
IHNK
=
HANKEL FUNCTION FLAG. IHNK - 0, DON'T USE HANKEL FUNCTION. IHNK = 1, DIVIDE STARTING FIELD BY HANKEL FUNCTION, THEN MULTIPLY THE SOLUTION FIELD BY HANKEL FUNCTION BEFORE COMPUTING PROPAGATION LOSS. IF STARTING FIELD IS GAUSSIAN, IHNK SHOULD BE SET TO 0. IF STARTING FIELD IS ELLIPTIC, IHNK SHOULD BE SET TO 1.
ITYPES -
TYPE OF SURFACE 0 - PRESSURE RELEASE. SCON3D SETS SURY AND SURX = 0 . 0 1 - USER SUPPLIES SURFACE CONDITION. SEE SUBROUTINE USCON3D. 2 - SPARE.
ITYPEB «
TYPE OF BOTTOM 0 - PRESSURE RELEASE. BCON3D SETS BOTY AND BOTX = 0 . 0 1 - USER SUPPLIES BOTTOM CONDITION. SEE SUBROUTINE UBCON3D. 2 - SPARE. 3 - ABSORBING LAYER INTRODUCED - FLAT BOTTOM 4 - SPARE
ITYPPW =
TYPE OF PORT SIDEWALL BOUNDARY CONDITION 0 - FIELD ALONG PORT SIDEWALL IS SET TO 0.0 1 - USER SUPPLIED. SEE SUBROUTINE UPORT3D. 2 - MODEL GENERATES 2D SOLUTION IF NDIM = 3.
ITYPSW -
TYPE OF STARBOARD SIDEWALL BOUNDARY CONDITION 0 - FIELD ALONG STARBOARD SIDEWALL IS SET TO 0.0 1 - USER SUPPLIED. SEE SUBROUTINE USTBD3D. 2 - MODEL GENERATES 2D SOLUTION IF NDIM « 3.
FLEW
=
WIDTH OF FIELD IN DEGREES. IGNORED IF NDIM - 1.
NSEC
=
NUMBER OF SECTORS IN FIELD. IGNORED IF NDIM - 1. NUMBER OF SOLUTIONS = NSOL - NSEC+1.
RMAX
=
MAXIMUM RANGE OF SOLUTION
DR
RANGE STEP. IF DR = 0, DR IS SET TO 1 METER. IF BOTTOM OF PROBLEM IS NOT FLAT, DR IS RECOMPUTED SO THAT MAX DEPTH IS EITHER INCREMENTED OR DECREMENTED BY DZ. SOLUTION IS COMPUTED EVERY DR METERS.
The Computer Model — F0R3D C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
WDR
=
RANGE STEP AT WHICH SOLUTION IS WRITTEN ON DISK. IF WDR NOT 0, AN OUTPUT DISK FILE IS ASSIGNED. WDR IS ROUNDED TO NEAREST DR.
WZl
-
FIRST RECEIVER DEPTH AT WHICH SOLUTION IS WRITTEN ON DISK.
WZ2
=
LAST RECEIVER DEPTH AT WHICH SOLUTION IS WRITTEN ON DISK.
WDZ
5
165
DEPTH INCREMENT AT WHICH SOLUTION IS WRITTEN ON DISK. ROUNDED TO NEAREST DZ.
WDTH
=
AZIMUTHAL INCREMENT AT WHICH SOLUTION IS WRITTEN ON DISK. ROUNDED TO NEAREST DTH.
PDR
-
RANGE STEP AT WHICH SOLUTION IS PRINTED. ROUNDED TO NEAREST DR.
PDZ
*
DEPTH INCREMENT AT WHICH SOLUTION IS PRINTED. ROUNDED TO NEAREST DZ.
PDTH
»
AZIMUTHAL INCREMENT AT WHICH SOLUTION IS PRINTED. ROUNDED TO NEAREST DTH.
ISFLD
« «
0 - DON'T PRINT STARTING FIELD. 1 - PRINT STARTING FIELD.
ISVP
=
0 - DON'T PRINT SOUND VELOCITY PROFILE. 1 - PRINT SOUND VELOCITY PROFILE.
IBOT
= *
0 - DON'T PRINT BOTTOM DEPTHS. 1 - PRINT BOTTOM DEPTHS.
DOUGRA *
RANGE AT WHICH TO SWITCH FROM CRANK-NICOLSON METHOD TO DOUGLAS METHOD. IF DOUGRA = 0, USE CRANK-NICOLSON METHOD ONLY. SUGGESTED VALUE IS 5000 METERS.
NDIV
IF DOUGRA NE 0, N IS DIVIDED BY NDIV RESULTING IN ONLY N/NDIV SOLUTIONS IN DEPTH. SPEED UP IS NDIV TIMES. SUGGESTED VALUE IS 5.
=
6
U1-U12 =
USER VARIABLES - REAL, SINGLE PRECISION. SEE HARVARD SUBROUTINE HARVARD.F FOR EXAMPLE.
7
KBOT
BOTTOM PROFILE FLAG. 0 - BOTTOM PROFILE IN INPUT RUNSTREAM. NOT ZERO. PROFILE IS SUPPLIED BY SUBROUTINE UBOTTOM. USER WRITES UBOTTOM. IF NSOL IS LARGE, UBOTTOM IS PREFERRED METHOD OF INPUT.
8 9
Rl,Zl R2,Z2
= =
BOTTOM PROFILE AT LEFTMOST SECTOR BOUNDARY. = RANGE AND DEPTH OF WATER. - ETC.
166
Numerical Ocean Acoustic Propagation in Three
Dimensions
C N+l -1,-1 = MARKS THE END OF THIS BOTTOM PROFILE. C C NEXT PROFILE. C 8 Rl,Zl = RANGE AND DEPTH OF WATER. C 9 R2,Z2 = ETC. C C N+l -1,-1 = MARKS THE END OF THIS BOTTOM PROFILE. C C ETC. REPEAT UNTIL ALL PROFILES ENTERED. C C N+2 RSVP = RANGE OF SOUND SPEED PROFILES. C SEE NOTE 1. C C N+3 KSVP = SVP FLAG. C = 0 - SOUND SPEED PROFILES IN INPUT RUNSTREAM. C = NOT ZERO. PROFILE (LINES N+4 THRU N+M) IS SUPPLIED BY C USER. USER WRITES SUBROUTINE USVP3D. KSVP MAY BE USED IN C COMPUTED GOTO STATEMENT TO TRANSFER CONTROL IN USVP3D. C IF NSOL IS LARGE, USVP3D IS PREFERRED METHOD OF INPUT. C C N+4 NLYRS(L) = NUMBER OF LAYERS. IF ITYPEB = 3, PROGRAM INSERTS C AN ARTIFICIAL LAYER AND INCREMENTS NLYRS(L) BY 1. C SEE NOTE 2. C C N+5 ZLYR(I,L) = MAX DEPTH OF LAYER I IN PROFILE. C C RHO(I,L) = DENSITY IN LAYER I (G/CM**3). C C RHOG(I,L) = DENSITY GRADIENT IN LAYER I (G/CM**3/M). C C BETA(I,L) = ATTENUATION IN LAYER I (DB/WAVELENGTH). C IF BETA(I,L) IS NEGATIVE, ATTENUATION IS COMPUTED. C SEE NOTE 3. C C BETAG(I,L)= ATTENUATION GRADIENT IN LAYER I (DB/WAVELENGTH/M). C C N+6 ZSVP(1,L) = DEPTH TO TOP OF LAYER I C C CSVP(1,L) - SPEED OF SOUND AT TOP OF LAYER I C C C N+M ZSVP(J,L) = DEPTH TO BOTTOM OF LAYER I C C CSVP(J,L) = SPEED OF SOUND AT BOTTOM OF LAYER I C IF ONLY ONE SVP INPUTTED, IT IS USED THRU ENTIRE PROBLEM. C IF MORE THAN ONE SVP INPUTTED, LAST SVP IS USED THRU C REMAINDER OF PROBLEM. C C NOTE 1 REPEAT LINES N+2 THRU N+M FOR EACH SET OF PROFILES TO BE ENTERED. C A SET OF PROFILES CONSISTS OF NSOL (NSEC+1) PROFILES LOCATED ON C SECTOR BOUNDARIES AND EQUISPACED FROM PORT TO STARBOARD IN AZIMUTH. C NSEC IS THE NUMBER OF SECTORS IN THE FIELD OF INTEREST. NSEC C ADJACENT SECTORS HAVE NSOL BOUNDARIES. C
The Computer Model — F0R3D
167
C NOTE 2 REPEAT LINES N+4 THRU N+M FOR EACH PROFILE IN THE SET. AT RANGE ZERO C ALL PROFILES ARE THE SAME. BEYOND RANGE ZERO, L PROFILES ARE C ENTERED FROM PORT TO STARBOARD AS VIEWED FROM RANGE RO. L IS C VARIED FROM 1 THRU NSOL. ENTERING -1,-1 AFTER PROFILE L C WILL CAUSE THAT PROFILE TO BE ENTERED REPEATEDLY UNTIL C NSOL PROFILES HAVE BEEN ENTERED. C C NOTE 3 REPEAT LINES N+5 THRU N+M FOR EACH LAYER I IN THE PROFILE. C J IS THE NUMBER OF POINTS IN LAYER I. C C ****************************************************************** C *** OUTPUT Q ****************************************************************** C OUTPUT UNIT NUMBER = NOU C OUTPUT FILE NAME = FOR3D.OUT C CONTENTS: AS FOLLOWS - UNFORMATTED C C THE FOLLCWING VARIABLES ARE WRITTEN ONCE: C ITYPFW, ITYPSW, FLDW, C WRITE(NOU)NDIM,FRQ,ZS,C0,ISF,RA,ZA,N,IHNK,ITYPES,ITYPEB,IT^ C NSEC,NSOL,RMAX,DR,WDR,WZl,WZ2,WDZ,DZ,DOUGRA,NDIV, C Ul,U2,U3,U4,U5,U6,U7,U8,U9,Ul0,Ull,Ul2 C C THE VALUES OF THE VARIABLES AND ARRAYS LISTED IN THE FOLLCWING C WRITE STATEMENT ARE WRITTEN AT RO AND AT EACH WDR (WRITE RANGE INCREMENT) C THEREAFTER. C C WRITE(NOU)ANG/NZ/RA,WZl/WDZ,(U(M+I)/I=IWZl,IWZ2,IWZ) C C where M = (J-1)*N C J SOLUTION INDEX. J VARIES FROM 1 TO NSOL. PORT TO STARBOARD. C N NUMBER OF RECEIVERS IN VERTICAL COLUMN. C ANG = RELATIVE BEARING OF SOLUTION IN DEGREES. PORT IS NEGATIVE. C NZ = NUMBER OF RECEIVERS WRITTEN ON DISK. C RA = RANGE IN METERS. C WZl = DEPTH OF FIRST RECEIVER. C WDZ = DEPTH INCREMENT OF RECEIVERS WRITTEN ON DISK IN METERS. C U = SOLUTION ARRAY. COMPLEX. C C PRINTED OUTPUT IS DIRECTED TO PRINTER UNIT NUMBER NPU. C ****************************************************************** Q ******************************************************************
c c
******************************************************************
C
*** INCLUDE COMMON BLOCK INCLUDE 'FOR3D.CMN'
C C CCC C C C C
*** TIME OF DAY AT START OF RUN - CRAY ROUTINE CALL SECOND(CPTl) *** READ INPUT PARAMETERS. *** FILES ARE LINKED TO UNIT NUMBERS IN CRAY JOB SCRIPT. OPEN(NIU) CALL ASSIGN(NIU,'FOR3D.IN')
168
Numerical Ocean Acoustic Propagation in Three
Dimensions
C 15 C C
READ(NIU,15)TITLE FORMAT(80A1) *** READ SOLUTION DIMENSION READ(NIU,*)NDIM IF(NDIM.LT.1.0R.NDIM.GT.3)THEN WRITE(NPU,*)'INPUT ERROR. CHECK NDIM VALUE.' STOP ELSE ENDIF
C READ(NIU,*)FRQ,ZS,CO,ISF,RA,ZA,N,IHNK,ITYPES,ITYPEB, CITYPFW, ITYPSW, FLDW,NSEC C READ(NIU,*) RMAX,DR,WDR,WZl,WZ2,WDZ,WDT,H,PDR,PDZ,PDTH, CISFLD,ISVP,IBOT C READ(NIU,*) DOUGRA,NDIV C C C C C C C C C C
READ(NIU,*) Ul,U2,U3,U4,U5,U6,U7,U8,U9,Ul0,Ull,Ul2 WRITE(6,*) Ul,U2,U3,U4,U5,U6 ,U7,U8,U9,U10 ,Ull,Ul2 SET DOUGLAS COEFFICIENT TO 0 ALFA^O.O *** IF CO NE 0.0 COMPUTE REFERENCE WAVE NUMBER IF(C0.NE.0.0)XK0=2.0*PI*FRQ/C0 *** COMPUTE NUMBER OF SOLUTIONS. ONE FOR EACH SECTOR BOUNDARY. IF(NDIM.EQ.1)THEN *** USER REQUESTED A 2D SOLUTION. ONLY ONE SOLUTION IS GENERATED. FLDW=0.0 NSEC=0 NSOL=l NSOLW=l NSOLP=l DTH=0 WDTH=0.0 PDTH=0.0 ANG=0.0 PHI=0.0
C C C C C C
ELSE *** MORE THAN 1 SOLUTION. NS01>NSEC+1 *** COMPUTE SECTOR WIDTH IN DEGREES. DTH=FLEW/NSEC *** COMPUTE SECTOR WIDTH IN RADIANS. PHI=PI*FLEW/(NSEC*180) *** COMPUTE NUMBER OF SOLUTIONS IN AZIMUTH TO WRITE TO DISK. *** AVOID CRAY ROUND UP PROBLEMS RNSOLW=(WDTH/DTH+.5)
The Computer Model — F0R3D
C
NSOLW=INT( RNSOLW) IF(NSOLW.EQ.0)NSOLW~l *** COMPUTE NUMBER OF SOLUTIONS IN AZIMUTH TO PRINT. RNSOLP= (PDTH/DTH+. 5) NSOLP=INT(RNSOLP) IF(NSOLP.EQ.0)NSOLP=l ENDIF
C IF(NSOL.GT.MXSOL) THEN WRITE(NPU,*)'TOO MANY SOLUTIONS REQUESTED.' WRITE (NPU,*)'INCREASE PARAMETER MXSEC AND RECOMPILE.' STOP ELSE ENDIF C C
C C C C C C C
C C
22 23 C C C C
C C
C
*** I F GAUSSIAN STARTING FIELD, RA MUST BE 0. IF(ISF.EQ.O) RA=0.0 R0=RA *** READ BOTTOM PROFILE FLAG READ(NIU,*) KBOT WRITE(6,*)'KBOT \KBOT *** IS PROFILE IN RUNSTREAM? IF(KBOT.EQ.O) THEN *** YES *** READ BOTTOM PROFILE - RANGE,DEPTH ZBOT=0.0 DO 24 L=l,NSOL DO 22 I=1,MXTRK+1 READ(NIU,*) TRACK(I,1,L),TRACK(I,2,L) *** END OF PROFILE? IF(TRACK(I,1,L).LT.0.0) GO TO 23 *** NO NTRK«I IF(ZBOT.LT.TRACK(I,2,L))ZBOT=TRACK(I,2,L) CONTINUE CONTINUE *** ERROR DETECTED? WRITE(6,*)'NTRK ' ,NTRK IF(NTRK.EQ.l.OR.NTRK.GT.MXTRK) THEN *** YES. ITEMP«MXTRK WRITE(NPU,29) ITEMP STOP ELSE *** NO ERROR DETECTED. *** EXTEND LAST DEPTH BEYOND MAX RANGE. TRACK(NTRK+1,1,L)=1.OE+38 TRACKfNTRK+l^LHTRACKfNTRK^L) R2(L)=TRACK(1,1,L) Z2(L)=TRACK(1,2,L) WRITE(6,*)'ELSE L,R2(L),Z2(L) ',L,R2(L),Z2(L)
169
170
24 C C C C C C 923 924 C C
25
Numerical Ocean Acoustic Propagation in Three
Dimensions
ENDIF CONTINUE ELSE *** USER WRITTEN SUBROUTINE UBOTTOM SUPPLIES PROFILE. CALL UBOTTOM DO 924 I=1,MXTRK+1 DO 924 L=l,NSOL WRITE(6/923)TRACK(I,l,l),TRACK(I/2/l)/TRACK(I/l/2)/TRACK(I,2/2)/ C TRACK(I,1,3),TRACK(I,2,3) FORMAT(lX,3(2X,F7.1,lX,F7.1)) CONTINUE ENDIF *** FIND BOTTOM SEGMENT WHICH CONTAINS STARTING RANGE DO 31 L=l,NSOL ITRK(L)=1 R1(L)-R2(L) Zl(L)=Z2(L) ITRK(L)=ITRK(L)+1
C
29
IF(ITRK(L).GT.MXTRK) THEN ITEMP=MXTRK WRITE(NPU,29) ITEMP FORMAT(IX,'ERROR. BOTTOM PROFILE MISSING OR ARRAY OVERFLOW. ', C 'MAX IS ',15, '. CHECK PARAMETER MXTRK.') STOP ELSE ENDIF
C R2(L)=TRACK(ITRK(L),1/L) Z2(L)=TRACK(ITRK(L),2,L) C C C C
C C C C 31 C C C C
*** ADVANCE TRACK IF NECESSARY SO THAT Rl.LE.RA.LT.R2 IF(RA.GE.R2(L)) GO TO 25 *** BE SURE THAT Rl LE RA IF(R1(L).GT.RA) THEN WRITE(NPU,*) 'DEPTH OF BOTTOM AT INITIAL RANGE MISSING' WRITE(NPU,*)'L,Rl(L),RA '/L,Rl(L)/RA STOP ELSE ENDIF *** COMPUTE SLOPE OF BOTTOM IN RANGE THETA(L)=ATAN2(Z2(L)-Z1(L),R2(L)-R1(L)) *** END OF DO LOOP CONTINUE *** READ RANGE OF SVP READ(NIU,*,END=33) RSVP *** SVP BEYOND START RANGE?
The Computer Model — F0R3D
C C 32 C C C 33 34 C 35 C C C C
40
C C C C C C C C C C C C
50 C C C C
171
IF(RSVP.GT.RA) GO TO 33 *** NO. DETERMINE IF SVP IN RUNSTREAM OR SUPPLIED BY SUBROUTINE USVP3D. READ(NIU,*,END=33) KSVP IF(KSVP.EQ.O) CALL SVP3D IF(KSVP.NE.O) CALL USVP3D *** ERROR IN SVP? IF(NSVP.NE.O) GO TO 35 *** YES. WRITE(NPU,34) RA FORMAT(lX,'SVP MISSING OR INPUT ERROR. RANGE = ',F8.1,' M.' ) STOP CONTINUE *** NO ERROR DETECTED. *** I F CO NOT SPECIFIED, SET CO TO AVERAGE SPEED OF FIRST PROFILES *** IN FIRST LAYERS AT INITIAL RANGE IF(CO.EQ.O.O) THEN ZWSVP=0.0 DO 40 L=l,NSOL NWSVP=IXSVP(1,L) ZWSVP=ZWSVP+ZSVP (NWSVP, L) DO 40 1=2,NWSVP C0=C0+(ZSVP(I,L)-ZSVP(I-1,L))*(CSVP(I-1,L)+.5*(CSVP(I,L)C CSVP(I-1,L))) CONTINUE C0=C0/ZWSVP ELSE ENDIF *** COMPUTE REFERENCE WAVE NUMBER XK0=2.0*PI*FRQ/C0 *** *** *** ***
COMPUTE ATTENUATION - SACLANT MEMO SM-121 (JENSEN + FERLA) MODIFIED AS FOLLCWS: IF INPUTTED BETA IS LT 0.0, ALPHA IS COMPUTED IN DB/METER AND USED TO COMPUTE BETA IN DB/WAVELENGTH ROUTINE INDX3D.
ALPHA=FRQ*FRQ*(.007+(.155*1.7)/(1.7*1.7+FRQ*FRQ*.000001))*1.OE-09 *** ADJUST LAYER DEPTHS IN CASE BOTTOM SLOPES AND RA.GT.RSVP. *** ASSUMES LAYERS FOLLCW BOTTOM CONTOUR. DO 50 L=l,NSOL NLYR=NLYRS(L) DO 50 ILYR=1,NLYR ZLYR(ILYR,L)=ZLYR(ILYR,L)+(RA-RSVP)*TAN(THETA(L)) CONTINUE *** GET RANGE OF NEXT SVP *** IF END, NO MORE PROFILES FOLLCW.
172 53 C C C C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
READ(NIU,*,END=55) RSVP *** TEST FOR 3D INPUT RUNSTREAM - USED DURING DEBUG PHASE. *** WHEN COMPARING 2D SOLUTION WITH AZIMUTH INDEPENDENT NX2D SOLUTIONS. *** SEE NOTE 2 REGARDING -1,-1 IN DESCRIPTION OF INPUT PARAMETERS. IF(NDIM.EQ.LAND.RSVP.LT.0.0)GO TO 53 GO TO 56
C C 55 C 56 C C C C C C C C 57
C C
C C
C
59
*** ONLY ONE SVP - SET RSVP LARGE SO SAME SVP USED FOR ENTIRE PROBLEM RSVP=1.0E+38 CONTINUE *** IF STARTING FIELD IS BEYOND NEXT SVP, GO BACK AND GET NEXT SVP IF(RSVP.LE.RA) GO TO 32 *** ABSORBING LAYER REQUESTED? IF(ITYPEB.EQ.3) THEN *** YES. *** EXTEND BOTTOM 4/3 MAX DEPTH IF ZA « ZERO IF(ZA.EQ.O.O) ZA=4.0*ZBOT/3.0 *** ABSORBING LAYER DEEP ENOUGH? IF(ZA.LT.ZBOT) THEN *** NO. EXTEND BOTTOM 4/3 MAX DEPTH. WRITE (NPU, 57) FORMAT(IX,'ERROR. ZA RESET TO MAX DEPTH OF BOTTOM LAYER.') ZA«4.0*ZBOT/3.0 ELSE ENDIF *** INSERT PARAMETERS FOR EXTENDED BOTTOM IN APPROPRIATE ARRAYS ZMAX=ZA DO 59 ]>l,NSOL NLYR^NLYRS(L) ZG=ZLYR(NLYR,L) NSVP=IXSVP(NLYR,L) IF (NLYR. GT. 1) ZG=ZG-ZLYR( NLYR-1, L) NLYRS(L)=NLYRS(L)+1 NLYR«NLYRS(L) *** STORE DEPTH OF ARTIFICIAL ABSORBING LAYER ZLYR(NLYR,L)=ZA *** USE BOTTOM DENSITY AND ATTENUATION OF ABOVE LAYER RHO(NLYR,L)=RHO(NLYR-1,L)+ZG*RHOG(NLYR-1,L) RHOG(NLYR,L)=0.0 BETA(NLYR,L)=BETA(NLYR-1,L)+ZG*BETAG(NLYR-1,L) BETAG(NLYR,L)=0.0 *** USE BOTTOM SPEED OF ABOVE LAYER IXSVP(NLYR,L)=NSVP+2 ZSVP (NSVP+1, L) =ZSVP (NSVP, L) CSVP(NSVP+1,L)=CSVP(NSVP,L) ZSVP(NSVP+2,L)=ZLYR(NLYR,L) CSVP (NSVP+2, L) -CSVP (NSVP+1, L) CONTINUE
The Computer Model — FOR3D
C C
C C 62
173
ELSE *** IF BOTTOM NOT EXTENDED AND ZA=0, SET ZA TO MAX DEPTH INPUTTED *** WITH FIRST SVP. ASSUMES DEPTH IS CONSTANT IN AZIMUTH. IF(ZA.EQ.O.O) ZA=ZLYR(NLYR,1) ENDIF *** IF N NOT SPECIFIED, SET N SO THAT DZ .LE. 1/10 WAVELENGTH IF(N.EQ.O) THEN FN=((10*ZA*FRQ/C0)+l) N=INT(FN) ELSE ENDIF
C IF(N.GT.MXNZ) THEN WRITE(NPU,*)'ERROR. N TOO LARGE.' WRITE(NPU,*)'INCREASE PARAMETER MXNZ AND RECOMPILE.' STOP ELSE ENDIF C C C
*** COMPUTE RECEIVER DEPTH INCREMENT. DZ MAY BE SUCH THAT RECEIVERS DO *** NOT LIE EXACTLY ON LAYER INTERFACES DZ=ZA/N
C C C C C C C C
N0=N ADJUST N SO THAT DEPTH (N+1)*DZ IS BOTTOM IF(ITYPEB.EQ.1.0R.ITYPEB.EQ.3)N=N-1 *** COMPUTE TOTAL SOLUTION DEPTHS NTOT=N*NSOL *** IF RANGE STEP NOT SPECIFIED, SET IT EQUAL TO 1/10 WAVELENGTH. *** THIS STEP SIZE IS ARBITRARY. IF(DR.EQ.O.O) DR=.1*C0/FRQ
C C C C
*** GET STARTING FIELD CALL SFLD3D *** COMPUTE DEPTH WRITE INCREMENT TO NEAREST DZ IF(WZ1.LT.DZ)WZ1=DZ RIWZ=(WZl/DZ+.5) IWZ1=INT(RIWZ)
C IF(WZ2.LT.DZ)WZ2=DZ IF(ITYPEB.EQ.1.0R.ITYPEB.EQ.3.AND.WZ2.GT.N*DZ)WZ2=N*DZ RIWZ=(WZ2/DZ+.5) IWZ2=INT(RIWZ) C IF(WDZ.LT.DZ)WDZ=WZ1 RIWZ=(WDZ/DZ+.5) IWZ=INT(RIWZ) WDZ=IWZ*DZ C
174
Numerical Ocean Acoustic Propagation in Three
Dimensions
NZ=( IWZ2-IWZ1 )/IWZ+l C C
C C C 84
93 94 C C
C
994 C C
995 97 C C C C C
C C
*** COMPUTE DEPTH PRINT INCREMENT TO NEAREST DZ RIPZ=(PDZ/DZ+.5) IPZ=INT(RIPZ) IF(PDZ.GT.O.O.AND.IPZ.EQ.O) IPZ=1 PDZ=IPZ*DZ *** PRINT INPUT PARAMETERS CALL PRINTP FORMAT(3X,'LAYER ',I3,3X,'DEPTH = ',F8.1,3X, C'DENSITY = ',F6.2,3X,'GRADIENT = ',F7.4,/,3X,'BETA = ',F8.3, C3X,'GRADIENT = \F7.4) FORMAT(//1X,'SOUND VELOCITY PROFILE AT RANGE ',F10.1,' METERS',/) FORMAT(lX,l4,3X,F8.1,3X,F8.1) *** OUTPUT REQUESTED? IF(WDR.NE.O.O) THEN CALL ASSIGN(NOU,'FOR3D.OUT') *** YES. WRITE SELECTED PARAMETERS TO OUTPUT FILE. WRITE(NOU,994)NDIM,FRQ,ZS,C0,ISF,RA,ZA,N0,IHNK,ITYPES,ITYPEB, C ITYPPW,ITYPSW,FLEW,NSEC,NSOL,RMAX,DR,VTOR,WZl,WZ2,WDZ,DZ,WDTH, C DOUGRA,NDIV,U1,U2,U3,U4,U5,U6,U7,U8,U9,U10,U11,U12 FORMAT(1X,I1,3F10.2,I3,2F8.0,I5,5I2,F9.3,/,2I5,F10.1,F5.1, C 6F7.1,F10.1,I4,/,(5F15.7)) *** WRITE STARTING FIELD TO OUTPUT FILE. DO 97 J=l,NSOL,NSOLW M=(J-1)*N IF(NDIM.NE.l)ANG=-FLTW/2.0+((J-l)*FLIW/NSEC) WRITE(NOU,995) ANG,NZ,RA,WZl,WDZ, (U(M+I),I=IWZl,IWZ2,IWZ) FORMAT(1X,F10.5,I6,F8.0,F8.1,F8.1,/,2(E15.7,E15.7)) CONTINUE ELSE *** NO OUTPUT REQUESTED. ENDIF *** INITIALIZE RANGE VARIABLE AT WHICH SOLUTION IS TO BE PRINTED XPR=RA+PDR *** INITIALIZE RANGE VARIABLE AT WHICH SOLUTION IS TO BE RECORDED XWR=RA+WDR IF(WDR.EQ.O.O) XWR=RA+RMAX+1.0 *** SAVE RANGE STEP OLDR=DR
C Nl=l C Q Q
C C
************************************************ ******************************************************************
*** MAIN LOOP STARTS HERE *** SOLUTION WILL BE ADVANCED FROM RANGE RA TO RANGE RA+DR
*** ***
The Computer Model — F0R3D Q Q C 100 C C C C C C C
101 C C C 102 C
C C C
C 105 C C C C C C C C C C
C C 110
175
****************************************************** ****************************************************************** CONTINUE DRLAST=DR *** COMPUTE INDEX OF REFRACTION TABLE AT PRESENT RANGE CALL INDX3D *** THIS SECTION OF CODE DETERMINES WHETHER OR NOT TO RESTORE STEP *** SIZE TO THE ORIGINAL DR. *** COMMENT NEXT SECTION IF INPUT DR IS TO BE USED DO 101 L=l,NSOL IF(THETA(L).NE.0.0) GO TO 102 CONTINUE *** FLAT BOTTOM - RESTORE DR IF IT HAS BEEN CHANGED DROLDR CONTINUE DO 129 L=l,NSOL DRMIN(L)=DR *** DOES SVP CHANGE BEFORE BOTTOM PROFILE? IF(RSVP.GE.R2(L)) GO TO 105 *** YES. DOES SVP CHANGE BEFORE NEXT SOLUTION RANGE? IF(RA+DRMIN(L).LE.RSVP) GO TO 126 *** YES. ADJUST DR SO THAT SOLUTION ADVANCES TO RSVP DRMIN(L)=RSVP-RA GO TO 126 *** BOTTOM PROFILE CHANGES BEFORE OR AT SAME RANGE AS SVP CONTINUE *** DETERMINE IF BOTTOM DEPTHS ARE TO BE UPDATED *** FIRST PASS - RA WILL BE .LT. R2 *** UPDATE BOTTOM DEPTHS? IF(RA.GE.R2(L)) GO TO 110 *** NO. *** DETERMINE IF RANGE STEP TOO LARGE . IF(RA+DRMIN(L).LE.R2(L)) GO TO 126 *** RANGE STEP IS TOO LARGE - RESET DR - ADV SOLUTION TO R2 DRMIN(L)=R2(L)-RA GO TO 126 *** UPDATE BOTTOM DEPTHS CONTINUE R1(L)=R2(L) Zl(L)=Z2(L) ITRK(L)«ITRK(L)+1 R2(L)=TRACK(ITRK(L),1,L)
176
Numerical Ocean Acoustic Propagation in Three
Dimensions
Z2(L)=TRACK(ITRK(L),2,L) C C C C C C C C C C C C C 112 C 115 C
*** IWO DEPTHS AT SAME RANGE INDICATE VERTICAL DISCONTINUITY. *** ADVANCE TRACK FORWARD. IF(R1(L).EQ.R2(L)) GO TO 110 *** RESTORE DR IN CASE BOTTOM IS FLAT DRMIN(L)=OLDR *** COMPUTE SLOPE OF BOTTOM THETA(L)=ATAN2(Z2(L)-Zl(L),R2(L)-Rl(L)) *** IF BOTTOM IS NOT FLAT, COMPUTE NEW RANGE STEP IFCTHETA(L).EQ.O) GO TO 112 *** COMPUTE NEW RANGE STEP. DR MAY BECOME VERY SMALL OR VERY LARGE.. DRMIN(L)=ABS(DZ*COS(THETA(L) )/SIN(THETA(L))) *** IF RANGE STEP TOO LARGE, PRINT WARNING MESSAGE. RECOMPUTE DR. IF(RA+DRMIN(L).LE.R2(L)) GO TO 120 WRITE(NPU,115)RA,L,DRMIN(L) F0RMAT(1X,'AT RANGE ',F7.0,', ISOL ',13,', RANGE STEP ',F5.1, C TOO LARGE FOR BOTTOM CONTOUR') STOP I
c C C C 120 C C
123
126 C 129 C C C C
*** ADJUST DRMIN(L) AND CONTINUE. DRMIN(L)=R2(L)-RA WRITE(NPU,*)'DRMIN(L) ADJUSTED TO ',DRMIN(L) CONTINUE IF(RA+DRMIN(L).GT.RSVP) DRMIN(L)=RSVP-RA *** PRINT BOTTOM DEPTHS IF(IBOT.EQ.O) GO TO 126 WRITE(NPU,93) RA IF(NDIM.NE.l)ANG=-FLDW/2.0+((L-l)*FLEW/NSEC) WRITE(NPU,*)' ' WRITE(NPU,*)' RELATIVE BEARING = ' ,ANG,' DEGREES' WRITE(NPU,*)' ' TH-THETA(L)*DEG WRITE(NPU,123) Rl(L),Zl(L),R2(L),Z2(L),TH FORMAT(//lX,'BOTTOM PROFILE ',//,lX, C'Rl = \F10.1,' M',/,1X, C'Zl - ',F8.1,' M',/,1X, C R 2 - ',F10.1,' M',/,1X, C Z 2 - ',F8.1,' M',/,1X, C'SLOPE = ',F8.1,' D E C ) CONTINUE CONTINUE *** END OF LOOP *** SELECT SMALLEST DR WITHIN FOLLOWING ARBITRARY LIMITS. *** MAXIMUM ALLCWED IS 2*(INPUT DR)
The Computer Model — F0R3D C C C 128 C
C C C
C C C
*** MINIMUM ALLCWED IS .5*(INPUT DR) DR-DRMIN(l) WRITE(6,*)'DR = ',DR IF(L.GT.1)THEN DO 128 L=2,NSOL WRITE(6,*)'RA,L,DRMIN(L) ' ,RA,L,DRMIN(L) IF(DR.GT.DRMIN(L) )DR=DRMIN(L) CONTINUE ENDIF WRITE(6,*)'DR,OLDR',DR,OLDR IF(DR.GT.2.0*OLDR)THEN DR~2.0*OLDR IF(DR.lt.0.5*(dz*dz))THEN DR=.5*dz*dz WRITE(NPU,*)'AT RANGE ' ,RA, ' DR RESET TO ' ,DR ENDIF IF(DR.LT.0.5*OLDR)THEN DR=0.5*OLDR IF(DR.gt.OLDR)THEN DR=OLDR WRITE(NPU,*)'AT RANGE \RA, ' DR RESET TO ',DR ENDIF
C IF(DR.NE.DRLAST)WRITE(NPU,*)'AT RANGE ',RA,' DR WAS CHANGED FROM', C DRLAST,' TO ',DR C C C C C C
C C C C C C
174
*** COMPUTE MATRIX A AT PRESENT RANGE CALL AMIFD3 *** IF 3D RUN, COMPUTE B MATRIX. IF(NDIM.EQ.3) CALL BMIFD3 *** ADVANCE RANGE ONE STEP RA=RA+DR NOLD=N *** COMPUTE RIGHT HAND SIDE CALL RHS *** MARCH SOLUTION 1 DR FORWARD CALL TWOSTEP *** APPLY ABSORPTION IF ITYPEB * 3 IF(ITYPEB.EQ.3) THEN DO 180 J=l,NSOL NLYR=NLYRS(J) RMM=(ZLYR(NLYR-1,J)/DZ) MM«INT(RMM) NA=N-MM IF(NA.GT.O) GO TO 175 IF(NA.GE.-l) GO TO 180 WRITE(NPU,174) RA FORMAT(lX,'ERR IN THICKNESS OF ABSORBING LAYER AT ',F8.1,' M') STOP
177
178 C 175
176 179 180
C C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
CONTINUE M=(J-1)*N DO 179 1=1,NA ATT=EXP(-.01*DR*EXP(-((I-NA)/(NA/3.0))**2)) U(M+MM+I)=U(M+MM+I)*ATT IF(J.GT.l)GO TO 176 IF(NDIM.EQ. 3 .AND. ITYPPW.EQ. 2 )PORTY(^DyI+I )=U(M+MM+I) IF(J.LT.NSOL)GO TO 179 IF(NDIM.EQ.3.AND.ITYPSW.EQ.2)STBDY(MM+I)=U(M+MM+I) CONTINUE CONTINUE ELSE ENDIF *** IF SOLUTION IS TO BE WRITTEN ON DISK, *** WRITE SELECTED PRESSURE FIELD AT RANGE RA IF(XWR.GT.RA) GO TO 260
C IF(WZl.LT.DZ)WZl=DZ RIWZ=(WZl/DZ+.5) IWZl=INT(RIWZ) C IF(WZ2.LT.DZ)WZ2=DZ IF(ITYPEB.EQ.1.0R.ITYPEB.EQ.3.AND.WZ2.GT.N*DZ)WZ2=N*DZ RIWZ=(WZ2/DZ+.5) IWZ2=INT(RIWZ) IF(WDZ.LT.DZ)WDZ=WZl C RIWZ=(WDZ/DZ+.5) IWZ«INT(RIWZ) WDZ=IWZ*DZ C NZ=( IWZ2-IWZ1 )/IWZ+l C
259 C C 260 C C C C C C 275
DO 259 J=l,NSOL,NSOLW M=(J-1)*N IF(NDIM.NE.l)ANG«-FIXW/2.0+((J--l)*FLEW/NSEC) WRITE(NOU,995) ANG,NZ,RA,WZl,WDZ, (U(M+I), I=IWZl, IWZ2, IWZ) CONTINUE *** DETERMINE NEXT RANGE AT WHICH TO WRITE SOLUTION ON DISK XWR-XWR+WDR CONTINUE *** DETERMINE IF SOLUTION IS TO BE PRINTED IF(XPR.GT.RA.OR.IPZ.EQ.O.OR.PDR.EQ.O.O) GO TO 350 *** PRINT RANGE RTEMP=RA/1000.0 *** COMPUTE AND PRINT PROPAGATION LOSS AT EACH IPZ'TH DEPTH FORMAT(2X/ 'RECEIVER',4X, 'DEPTH(M)' ,4X, 'LOSS(DB)' ,14X, 'U(I)') JSOL=NSOL/2
The Computer Model — F0R3D F0R3D
277
288 289 294 C C 295 300 C C C 350 C C C
C C
C C
179
DO 300 J=l,NSOL,NSOLP M=(J-1)*N IF(NDIM.NE.1)ANG=-FLEW*PI*( .5*NSEC-( J - l ) )/(180.0*NSEC) WRITE(NPU,277)J,RA,ANG*DEG FORMAT(/,2X,'SOLUTION',14,', RANGE = ' , F 8 . 1 , ' M', C, RELATIVE BEARING = ' , F 6 . 1 , C DEGREES',/) WRITE(NPU,275) UA=0 DO 295 I=IPZ,N,IPZ ZI=I*DZ UA=U(M+I) IF(IHNK.EQ.1)UA=UA*HNKL(XK0*RA) PL=CABS(UA) IF(PL.LE.O.O) GO TO 295 PL=-20.0*ALOG10(PL) IF(IHNK.EQ.O) PI>PL+10.0*ALOG10(RA) GO TO 289 Pl>999.9 CONTINUE WRITE(NPU,294) I,ZI,PL,UA FORMAT(2X,I5,(3X,F10.2,3X,F10.3),3X,'(',El2.5,2X,El2.5,' ) ' ) *** UNCOMMENT NEXT STATEMENT IF EXACT SOLUTION SUBROUTINE AVAILABLE. CALL UEXACT WRITE(NPU,*)' ' CONTINUE CONTINUE *** DETERMINE NEXT RANGE AT WHICH TO PRINT SOLUTION XPR«XPR+PDR CONTINUE *** SWITCH TO DOUGLAS METHOD? IF(DOUGRA.NE.0.0.AND.RA.GE.DOUGRA)THEN *** YES. OLDZ^DZ NOLD=*N NTOU>NTOT IF(ITYPEB.EQ.1)N=N+1 IF(ITYPEB.EQ.3)N=N+1 *** DIVIDE N BY NDIV AND MAKE NECESSARY ADJUSTMENTS. N=INT(N/NDIV+.5) DZ=ZA/N IF(ITYPEB.EQ.1)N=N-1 IF(ITYPEB.EQ.3)N=N-1 NTOT=N*NSOL RIPZ«(PDZ/DZ+.5) IPZ=INT(RIPZ) *** ADJUST SOLUTION FIELD. DO 360 J=l,NSOL MOLD-(J-l)*NOLD
180
Numerical Ocean Acoustic Propagation in Three
Dimensions
M=(J-1)*N DO 359 1=1,N ZI=I*DZ *** AVOID ROUNDOFF PROBLEM. RK-ZI/OLDZ+.5 K=INT(RK) U(M+I) =U( MOLD+K) + (ZI-K*OLDZ) * (U( MOLD+K+1) -U( MOLDf K) )/OLDZ CONTINUE CONTINUE
C
359 360 C C
*** ADJUST WALL CONDITIONS. DO 365 1=1,N ZI=I*DZ AVOID ROUNDOFF PROBLEM. RK=ZI/OLDZ+.5 K=INT(RK) PORTY(I)=PORTY(K) STBDY(I)=STBDY(K) CONTINUE
C
365 C C
*** SET ALFA FOR DOUGLAS METHOD. ALFA=1.0/12.0 *** SET DOUGRA LARGE SO THAT WE DON'T ENTER THIS CODE AGAIN. DOUGRA=1.0E+38
C C
C
C C 370 C C
WRITE(NFU,*)' ' WRITE(NPU,*) 'AT RANGE ' ,RA, METERS. SWITCH FROM CRANK-NICOLSON TO DOUGLAS METHOD.' WRITE(NPU,*)'CRANK-NICOLSOJ N ,DZ, NTOT ',NOLD,OLDZ,NTOLD WRITE(NPU,*)'DOUGLAS N ,DZ, NTOT ' ,N, DZ,NTOT CALL SECOND(CPT2) WRITE(NPU,370)CPT2-CPTl FORMAT( IX, 'ELAPSED TIME = ',F12.2,' CRAY XMP 2/8 CPU SECONDS.') WRITE(NPU,*)' ' *** RECOMPUTE DEPTH WRITE INCREMENT TO NEAREST DZ IF(WZl.LT.DZ)WZl=DZ RIWZ=(WZl/DZ+.5) IWZ1=INT(RIWZ)
C IF (WZ2. LT. DZ) WZ2=DZ RIWZ=(WZ2/DZ+.5) IWZ2=INT(RIWZ) C IF(WDZ.LT.DZ)WDZ=WZ1 RIWZ=(WDZ/DZ+.5) IWZ=INT(RIWZ) WDZ=IWZ*DZ C NZ= (IWZ2-IWZ1 )/IWZ+l C C
*** RECOMPUTE DEPTH PRINT INCREMENT TO NEAREST DZ RIPZ=(PDZ/DZ+.5) IPZ«INT(RIPZ)
The Computer Model — FOR3D F0R3D FOR3D IF(PDZ.GT.O.O.AND.IPZ.EQ.O) IPZ=1 PDZ=IPZ*DZ C ELSE ENDIF C C C C C C C C C
C C 534 C 535 C C C C
C
536 537 C C C
*** TERMINATE RUN IF SOLUTION AT MAXIMUM RANGE HAS BEEN OBTAINED IF(RA.LT.RMAX)THEN *** GET ENVIRONMENT FOR NEXT RANGE *** READ NEW SVP PROFILE FLAG IF(RA.GE.RSVP) READ(NIU,*,END=33) KSVP *** KSVP MAY HAVE BEEN SET IN USER ROUTINE USVP3D. *** IF KSVP NOT 0, SUBROUTINE USVP3D IS CALLED. USER IS *** RESPONSIBLE FOR ADJUSTING DEPTHS OF LAYERS. IF(KSVP.EQ.O) GO TO 534 CALL USVP3D GO TO 548 *** NEW SVP AT ADVANCED RANGE? IF(RA.GE.RSVP) GO TO 545 CONTINUE *** UPDATE DEPTHS OF LAYERS *** ASSUMES LAYERS ARE PARALLEL AND FOLLCW BOTTOM CONTOUR *** IF ITYPEB - 3, BOTTOM OF ARTIFICIAL LAYER REMAINS FLAT. DO 537 L=l,NSOL DZZ-DR*TAN(THETA(L)) *** IS BOTTOM FLAT? IF(THETA(L).EQ.0.0) GO TO 537 NLYR=NLYRS(L) MLYR«NLYRS(L) IF(ITYPEB.EQ.3) MLYR=NLYRS(L)-1 DO 536 ILYR=1,MLYR ZLYR(ILYR,L)=ZLYR(ILYR,L)+DZZ IF( ITYPEB. EQ.3.AND.ZLYR(NLYR,L).LT.ZLYR(MLYR,L))THEN WRITE(NFU,*)'ERROR. ARTIFICIAL LAYER NOT DEEP ENOUGH.' WRITE(NPU,MZLYR(NLYR,L),ZLYR(MLYR,L),THETA(L) STOP ELSE ENDIF CONTINUE CONTINUE *** ADJUST DEPTHS OF PROFILES IN SLOPING LAYERS *** ASSUMES SAME SVP IN LAYERS DO 540 J>l,NSOL DZZ=DR*TAN( THETA( L)) NLYR=NLYRS(L) NWSVP=IXSVP(1,L) NSVP=IXSVP (NLYR, L) DO 540 I=NWSVP+1,NSVP
181
182
540 C C 545 C 548 C C C C
C
C 549 C C 550 C C
551
C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
ZSVP(I,L)=ZSVP(I,L)+DZZ CONTINUE GO TO 570 *** GET NEXT SVP FROM INPUT RUNSTREAM. CONTINUE CALL SVP3D CONTINUE *** ERROR DETECTED? IF(NSVP.EQ.O) GO TO 33 *** NO. READ RANGE OF NEXT PROFILE? IF(RA.GE.RSVP) THEN READ(NIU,*,END=549) RSVP *** CHECK FOR 3D RUNSTREAM IF(NDIM.EQ.LAND.RSVP.LT.0.0)READ(NIU,*,END-549) RSVP ELSE ENDIF GO TO 550 CONTINUE *** SET RSVP LARGE SO THAT LAST PROFILE IS USED FOR REMAINDER OF PROBLEM RSVP=1.0E+38 CONTINUE *** ARTIFICIAL ABSORBING LAYER? IF(ITYPEB.EQ.3) THEN *** YES. UPDATE DENSITY, ATTEN AND SPEED. DO 551 L=l,NSOL NLYR«NLYRS(L) ZG«ZLYR(NLYR,L) NSVEKEXSVP (NLYR, L) IF(ZA.LT.ZLYR(NLYR,L)) GO TO 551 IF(NLYR.GT.1)ZG=ZLYR(NLYR,L)-ZLYR(NLYR-1,L) NLYRS(L)~NLYRS(L)+1 NLYR-NLYRS(L) ZLYR(NLYR,L)=ZA RHO(NLYR/L)=RHO(NLYR-l/L)+ZG*RHOG(NLYR-l/L) RHOG(NLYR,L)=0.0 BETA(NLYR/L)=BETA(NLYR-1/L)+ZG*BETAG(NLYR-1/L) BETAG(NLYR,L)=0.0 IXSVP(NLYR,L)=NSVP+2 ZSVP(NSVP+1,L)=ZSVP(NSVP,L) CSVP(NSVP+1,L)=CSVP(NSVP,L) ZSVP(NSVP+2,L)=ZLYR(NLYR,L) CSVP(NSVP+2,L)=CSVP(NSVP+1,L) CONTINUE ELSE ENDIF *** PRINT SVP IF(ISVP.NE.O.) THEN
'0R3D The Computer Model — F0R3D
560 561 562 570 C
183
WRITE(NPU,93) RA DO 562 L=l,NSOL IF(l^IM.NEa)i^G=-FLIW/2.0+((L-l)*FLDW/NSEC) WRITE(NPU,*)' ' WRITE(NPU,*)' RELATIVE BEARING = SANG,' DEGREES' WRITE(NPU,*)' ' K=0 NLYR=NLYRS(L) DO 561 ILYR=1,NLYR WRITE(I^U,84)ILYR,ZLYR(ILYR,L),RHO(ILYR,L),RHOG(ILYR,L), C BETA(ILYR,L),BETAG(ILYR,L) WRITE(NPU,*)' ' J=K+1 K=IXSVP(ILYR,L) DO 560 I=J,K WRITE(NPU,94) I,ZSVP(I,L),CSVP(I,L) CONTINUE WRITE(NPU,*)' ' CONTINUE CONTINUE ELSE ENDIF CONTINUE GO TO 100 ELSE ENDIF
C C 600 C C 601
Q C Q
*** TERMINATE RUN CONTINUE IF(WDR.NE.0.0)CALL CLOSE(NOU) CALL SECOND(CPT2) WRITE(NPU,601)CPT2-CPTl FORMAT(lX, 'END OF RUN. CRAY XMP 2/8 CPU TIME = ',F12.2, C SECONDS.') STOP END ********** * AMIFD3 * ********** SUBROUTINE AMIFD3
Q
******************************************************************
c
******************************************************************
C Q
* COMPUTE DIAGONALS FOR 'A' MATRIX * ****************************************************************** J12,XNSUM INCLUDE 'FOR3D.CMN' INCREMENTED BY DR IN MAIN PROGRAM COMPLEX Tl,T3,XNl2,XNSUM *** RA HAS BEEN !5*XK0*DR) INCREMENTED BY DR IN MAIN PROGRAM T1=CMPLX(.25,-.25*XK0*DR) T2=l. 0/( XK0*XK0*DZ*DZ) T3=Tl*T2 DO 100 ]>l,NSOL M=(L-1)*N DO 50 1=1,N
C
184
C
C C
50 100 Q C
Numerical Ocean Acoustic Propagation in Three
XN12=T1*((XN1(M+I)-1)/RH01(M+I)+(XN2(M+I)-1)/RH02(M+I)) R12=1.0/BHO1 (M+I) +1.0/RHO2 (M+I) RSUM=RHOl(M+I)+RH02(M+I) XNSUM=T1* (XNl (M+I)+XN2 (M+I)-2.0) *** UPPER DIAGONAL AU(M+I) = (T3+ALFA+ALFA*Tl*(XN2(M+I)-l))/RH02(M+I) IF(I.EQ.N) AU(M+I)=0.0 *** MAIN DIAGONAL AM(M+I ) = ( 2.0+XNSUM)/RSUM-(ALFA+T3) *R12-ALFA*XN12 *** LCWER DIAGONAL AL(M+I )=(T3+ALFA+ALFA*T1*(XN1(M+I)-l) )/RHOl(M+I) IF(I.EQ.1)AL(M+I)=0.0 CONTINUE CONTINUE RETURN END
Q
C C Q
50
C 100 C C
150 C 200 C C
C 300 C
C 400 C
Dimensions
********** ********** * BCON3D * ********** **********
SUBROUTINE BCON3D ***************************************************************** ***************************************************************** *** BOTTOM BOUNDARY CONDITION SUBROUTINE ***************************************************************** ***************************************************************** INCLUDE 'FOR3D.CMN' GO TO (100,200,300,400,500),ITYPEB+1 WRITE(NPU,50)ITYPEB FORMAT( FORMAT(IX,'ERROR IX,'ERROR - BOTTOM BOUNDARY CONDITION ',12, C NOT IMPLEMENTED') IERR=1 RETURN CONTINUE *** ITYPEBM) *** PRESSURE RELEASE BOTTOM DO 150 L~l,NSOL BOTY(L)=0.0 BOTX(L)«0.0 CONTINUE RETURN CONTINUE *** ITYPEB=1 *** USER BOTTOM BOUNDARY CONDITION - USER WRITES SUBROUTINE UBCON3D CALL UBCON3D RETURN CONTINUE *** ITYPEB=2 IERR=1 WRITE(NPU,50)ITYPEB RETURN CONTINUE *** ITYPEB=3
The Computer Model — F0R3D FOR3D
C
450 C 500 C
Q C C Q C Q
C C C 50 100 Q C C C C C
185
*** ARTIFICIAL ABSORBING BOTTOM - FLAT DO 450 L=l,NSOL BOTY(L)=0.0 BOTX(L)=0.0 CONTINUE RETURN CONTINUE *** ITYPEB=4 IERR=1 WRITE (NPU, 50) ITYPEB RETURN END ********** * BMIFD3 * ********** SUBROUTINE BMIFD3 ****************************************************************** * * COMPUTE DIAGONALS FOR B MATRIX *********************************** ****************************************************************** INCLUDE 'FOR3D.CMN' /(4.0*XK0*XK0*(RA+.5*DR)*(RA+.5*DR)*PHI*PHI)) COMPLEX Tl,T2 Tl«-CMPLX(0.0,XK0*DR/(4.0*XK0*XK0*(RA+.5*DR)*(RA+.5*DR)*PHI*PHI)) K=NSOL-21=0., N DO 100!NS0L-2) I~1,N M=(I)*(NSOL-2) ^NSOL-l DO 50 L=2,NSOL-l K~K+1 LMl=L-l LPl=L -1)*N J=(LM1-1)*N )1(J+I) RH3=RH01(J+I) -1)*N J=(LPl-l)*N )1(J+I) RH4«RHOl(J+I) 0/RH3+1.0/RH4) R34=(1.0/RH3+1.0/RH4) >ER DIAGONAL *** UPPER DIAGONAL ,5*(RH3+RH4)*(Tl)/RH4 BU(K)=.5*(RH3+RH4)*(Tl)/RH4 ).NSOL-1)BU(K)=0.0 IF(L.EQ.NSOL-1)BU(K)=0.0 :N DIAGONAL *** MAIN DIAGONAL ..0+(-Tl)*.5*(RH3+RH4)*R34 BM(K)=1.0+(-Tl)*.5*(RH3+RH4)*R34 JER DIAGONAL *** LOWER DIAGONAL * (Tl )/BH3 5* (RH3+RH4) BL(K) = }.2)BL(K)=0.0 .5*(RH3+RH4)*(T1)/BH3 IF(L.EQ.2)BL(K)=0.0 nr CONTINUE CONTINUE RETURN END ********** * HNKL * ********** COMPLEX FUNCTION HNKL(X) ****************************************************************** * HANKEL FUNCTION H0(1) - POLYNOMIAL APPROXIMATION * * HANDBOOK OF MATH FUNCTIONS - N.B.S. - NOV 1967 *
186
Q
Numerical Ocean Acoustic Propagation in Three
Dimensions
**********************************************************
r * * * * * * * *
C REAL JO DATA PI/3.141592654/ C IF(X.GT.3.) GO TO 10 C C
C C
C C 10
Q C C C C C
C
C C 20
*** (-3.0.LE.X.LE.3.0) Y=X*X/9.0 479 J0=1.+Y*(-2.2499997+Y*(+1.2656208+Y*(-0.3163866+Y*(+0.0444479 C +Y*(-0.0039444+Y*(+0.0002100)))))) *** (0.0.LT.X.LE.3.0) Y0=2.0*LOG(0.5*X)*J0/PI+0.36746691 C +Y*(+0.60559366+Y*(-0.74350384+Y*(+0.25300117+Y*(-0.04261214 C +Y*(+0.00427916+Y*(-0.00024846)))))) HNKL=CMPLX(J0,Y0) RETURN *** (3.O.LE.X.LT.INFINITY) Y=3.0/X F0= 0.79788456+Y*(-0.00000077+Y*(-0.00552740+Y*(-0.00009512 C +Y*(+0.00137237+Y*(-0.00072805+Y*(+0.00014476)))))) T0=X-0.78539816+Y*(-0.04166397+Y*(-0.00003954+Y*(+0.00262573 C +Y*(-0.00054125+Y*(-0.00029333+Y*(+0.00013558)))))) HNKL=F0*CEXP(CMPLX(0.0/T0) )/SQRT(X) RETURN END ********** * INDX3D * ********** SUBROUTINE INDX3D ****************************************************************** * COMPUTE INDEX OF REFRACTIOJ TABLE ****************************************************************** INCLUDE 'FOR3D.CMN' DIMENSION COEF(4,MXSVP)/WORK(MXSVP+4),WORK2(MXSVP+4) DO 200 ISOL=l,NSOL MM=(ISOL-l)*N *** GET INDICES, DENSITY, AND ATTENUATION FOR FIRST LAYER ILYR=1 L-l M=IXSVP(ILYR,ISOL) RHl=RHO(ILYR,lSOL) RHlG=RHOG(ILYR,ISOL) BETA1=BETA(ILYR,ISOL) BETA1G=BETAG(ILYR,ISOL) ZG1-0.0 NLYR=NLYRS(ISOL) DO 100 1=1,N *** ZI IS RECEIVER DEPTH ZI=I*DZ *** IS RECEIVER IN THIS LAYER? IF(ZI.LE.ZLYR(ILYR,ISOL)) GO TO 49
The Computer Model — F0R3D FOR3D C
C
C C 49 C
C
50 C C 52
53 54
56 60 C C C
65 C
*** NO. ALL LAYERS CHECKED? IF(ILYR.EQ.NLYR) GO TO 52 ZG1=ZLYR( ILYR, ISOL) *** NO. SET INDICES, DENSITY, AND ATTENUATION FOR NEXT LAYER. ILYR=ILYR+1 L=M+1 M=IXSVP(ILYR,ISOL) RHl=RHO(ILYR,ISOL) RHlG=RHOG( ILYR, ISOL) BETAl=BETA( ILYR, ISOL) BETAlG=BETAG( ILYR, ISOL) GO TO 20 *** DEPTH ZI IS IN THIS LAYER. CONTINUE *** DETERMINE SOUND SPEED CI AT DEPTH ZI DO 50 J=L,M IF(ZI.GT.ZSVP(J,ISOL)) GO TO 50 L=J *** INTERPOLATE CI=CSVP(J-l,ISOL)+(CSVP(J,ISOL)-CSVP(J-l,ISOL))*(ZI-ZSVP(J-l,ISOL) C)/(ZSVP(J,ISOL)-ZSVP(J-l,ISOL)) GO TO 60 CONTINUE *** EXTRAPOLATE CONTINUE IF(ZSVP(M,ISOL).NE.ZSVP(M-l,ISOL))GO TO 53 O>CSVP(M,IS0L) GO TO 54 CI~CSVP(M-l,ISOL)+(CSVP(M,ISOL)-CSVP(M-l,ISOL))* C(ZI-ZSVP(M-1,ISOL))/(ZSVP(M,ISOL)-ZSVP(M-l,ISOL)) CONTINUE IF(IEX.EQ.l) GO TO 60 WRITE(NPU,56) FORMAT( IX,'WARNING. EXTRAPOLATION OF SVP PERFORMED.') IEX=1 CONTINUE C1=CI *** IS RECEIVER ON OR WITHIN 1 DZ OF INTERFACE? IF(ZLYR(ILYR,ISOL)-ZI.GE.DZ) GO TO 65 *** YES. IS THIS BOTTOM LAYER? IF(ILYR.EQ.NLYR) GO TO 65 *** NO. GET PARAMS FOR MEDIUM 2. ZG2=ZLYR( ILYR, ISOL) RH2=RHO(ILYR+1,ISOL) RH2G=RHOG(ILYR+1,ISOL) BETA2=BETA(ILYR+1,ISOL) BETA2G=BETAG(ILYR+1,ISOL) C2=CSVP( IXSVP( ILYR, ISOL)+l, ISOL) GO TO 70 CONTINUE *** NOT AN INTERFACE. C2=C1
187
188
70
100 200 C C C C C C C C C
20 21 C C C C C Q C Q
Numerical Ocean Acoustic Propagation in Three
Dimensions
RH2=RHl RH2G=RH1G BETA2=BETAl BETA2G=BETAlG ZG2=ZG1 CONTINUE RHOl(MM+I)=RHl+(ZI-ZGl)*RHlG RH02(MM+I)=RH2+(ZI+DZ-ZG2)*RH2G BETAl=BETAl+(ZI-ZGl)*BETAlG BETA2=BETA2+(ZI+DZ-ZG2)*BETA2G XN=C0/C1 IF(BETAl.LT.O.O) BETAl=ALPHA*Cl/FRQ XN1 (MM+I) =CMPLX( XN*XN,XN*XN*BETAl/27.287527) XN=C0/C2 IF (BETA2. LT. 0.0) BETA2=ALPHA*C2/FRQ XN2(MM+I)=CMPLX(XN*XN,XN*XN*BETA2/27.287527) CONTINUE CONTINUE RETURN END ********** * PORT2D * ********** ********** SUBROUTINE PORT2D ****************************************************************** * SOLVE FOR FIELD AT PORT WALL BOUNDARY * FIELD AT ADVANCED RANGE IN PORTX ****************************************************************** INCLUDE 'FOR3D.CMN' *** COMPUTE BTA(Nl) THROUGH BTA(N) *** ARRAY BTA CONTAINS PARTIAL SOLUTION OF SYSTEM OF EQUATIONS BTA(1)=AM(1) M=2 DO 20 I=M,N BTA( I )=AM( I )-AL( I) *AU( 1-1 )/BTA( 1-1) CONTINUE DO 21 1=1,N BTA(I)=1.0/BTA(I) CONTINUE TA=0.0 TB=0.0 *** STEP 1 - CALL TRIDIAGONAL SOLVER CALL TRID3D(AL(l)/AM(l),AU(l),PORTX(l),DP(l),BTA(l)/N,N, CTA,TB) *** SOLUTION IS IN ARRAY PORTX RETURN END ********** ********** * PORT3D * * * PORT3D ********** ********** SUBROUTINE PORT3D SUBROUTINE PORT3D ****************************************************************** ****************************************************************** * PORT SIDEWALL BOUNDARY CONDITION ****************************************************************** * PORT SIDEWALL BOUNDARY CONDITION ******************************************************************
The Computer Model — FOR3D F0R3D
189
INCLUDE 'F0R3D.CMN' COMPLEX Tl,T3,T4,TAL,TAM,TAU,XN12,XNSUM C
50
C 100 C C
150 C 200 C
C 300 C C C C
C
GO TO (100,200,300),ITYPFW+1 IERR=1 WRITE(NPU,50) ITYPPW FORMAT(IX, 'ERROR - PORT SIDEWALL BOUNDARY CONDITION ',12, C NOT IMPLEMENTED') RETURN CONTINUE *** ITYPPW = 0 *** SET FIELD AT PORT SIDEWALL TO 0.0 DO 150 1=1,N PORTX(I)=0.0 PORTY(I)=0.0 CONTINUE RETURN CONTINUE *** ITYPPW = 1 ; USER SUPPLIES SUBROUTINE UPORT3D CALL UPORT3D RETURN CONTINUE *** ITYPPW =* 2 *** ASSUMPTION IS THAT ENVIRONMENTAL CONDITIONS AT PORT SIDEWALL *** BOUNDARY ARE EQUAL TO CONDITIONS AT LEFTMOST SOLUTION BOUNDARY. *** SOLUTION AT BOUNDARY AT ADVANCED RANGE IS SOLVED IN 2D. DELTA=XK0*DR Tl=CMPLX(.25,.25*DELTA) T2=l.0/(XK0*XK0*DZ*DZ) T3=Tl*T2 T4=CMPLX(.25,-.25*DELTA) RHl=RHOl(l) RH2=RH02(1) R12=1.0/RH1+1. 0^RH2 XN12=T1*((XN1(1)-1)/RH1+(XN2(1)-1)/RH2) RSUM=RHl+RH2 XNSUM=T1*(XNl(1)+XN2(1)-2.0) TAU=(T3+ALFA+ALFA*T1*(XN2(1)-1) )/RH2 TAL=(T3+ALFA+ALFA*T1*(XN1(1)-1) )/RHl TAM=( 2.0+XNSUM)/RSUM-(ALFA+T3) *R12-ALFA*XN12 *** COMPUTE RIGHT HAND SIDE D DP( 1 )=*TAL*SURY( 1 )+TAM*PORTY( 1 )+TAU*PORTY( 2 )C( T4*T2+ALFA+ALFA*T4* (XNl(1 )-l) )/RHl*SURX( 1) DO 350 1*2,N-l RHl=RHOl(I) RH2=RH02(I) R12=1.0/RH1+1.0/RH2 XNl2=Tl*((XNl(I )-l )/RHl+(XN2(I )-l)/RH2) RSUM=RHl+RH2 XNSUM=T1*(XN1(I)+XN2(I)-2.0) TAU=(T3+ALFA+ALFA*T1*(XN2(I)-1))/RH2
190
Numerical
Ocean Acoustic Propagation
in Three Dimem Dimensions
TAL=(T3+ALFA+ALFA*T1*(XN1(I)-1) )/RHl TAM=(2.0+XNSUM)/RSUM-( ALFA+T3) *R12-ALFA*XN12 C *** COMPUTE RIGHT HAND SIDE D DP( I )=TAL*PORTY( 1-1)+TAM*PORTY( I )+TAU*PORTY( 1+1) 350 CONTINUE RH1=RH01(N) RH2=RH02(N) R12=1.0/RH1+1.0/RH2 XN12=T1*((XN1(N)-1)/RH1+(XN2(N)-1)/RH2) RSUM=RHl+RH2 XNSUM=Tl*(XNl(N)+XN2(N)-2.0) TAU=(T3+ALFA+ALFA*T1*(XN2(N)-1) )/RH2 TAL=(T3+ALFA+ALFA*Tl*(XNl(N)-l) )/RHl TAM=(2.0+XNSUM)/RSUM-(ALFA+T3) *Rl2-ALFA*XNl2 C *** COMPUTE RIGHT HAND SIDE D DP(N)=TAL*PORTY(N-l )+TAM*PORTY(N)+TAU*BOTY( 1 )C (T4 *T2+ALFA+ALFA*T4 * (XNl (N) -1)) /RH2 *BOTX (1) RETURN END Q ********** C * PRINTP * ********** Q ********** SUBROUTINE PRINTP SUBROUTINE PRINTP ***************************************************************** Q ***************************************************************** *** P R I N T PROBLEM PARAMETERS C *** PRINT PROBLEM PARAMETERS ***************************************************************** Q ***************************************************************** INCLUDE 'FOR3D.CMN' 70 WRITE(NPU,70) TITLE 70 FORMAT(//lX, 80A1) 72 FOR3D MODEL') WRITE(NPU,72) 72 F0RMAT(/1X, 'NUSC FOR3D MODEL') IF(NDIM.EQ.1)THEN OLUTION' WRITE(NPUf*)'2D SOLUTION' ELSE IF(NDIM.EQ.2)THEN 2D SOLUTION' WRITE(NPU,*)'N X 2D SOLUTION' DTJITTOKF' ELSE WRITE(NPU,*)'3D SOLUTION' ENDIF ENDIF F.EQ.O) 3.0) WRITE(NPU,73) T ( 1 X,'GAUSSIAN Y . ' a WRITE(NPU,73) 73 IF(ISF.EQ.O) STARTING FIELD') 73 FORMAT( IX,'GAUSSIAN 2.1) WRITE(NFU,74) STARTING FIELD') 74 IF(ISF.EQ.l) X,'USER WRITE(NPU STARTING FIELD') f74) 74 FORMAT(lX,'USER STARTING FIELD') 3.2) WRITE(NPU,71) IF(ISF.EQ.2) WRITE(NPU,71) 71 FORMAT(IX,'GREENS STARTING FIELD') IF(IHNK.NE.O) WRITE(NPU,75) D BY HANKEL FUNCTION') 75 FORMAT( IX,'STARTING FIELD DIVIDED BY HANKEL FUNCTION') IF(ITYPES.EQ.l) WRITE(NPU,76) 76 FORMAT(lX,'USER SURFACE CONDITION') IF(ITYPEB.EQ.l) WRITE(NPU,77) 77 FORMAT(lX,'USER BOTTOM CONDITION') IF(ITYPPW.EQ.l) WRITE(NPU,78) IF(NDIM.EQ.3.AND.ITYPPW.EQ.2)
The Computer Model — F0R3D FOR3D
78
79
80
81
C WRITE(NPU,*)'2D SOLUTION AT PORT SIDEWALL BOUNDARY' FORMAT(lX,'USER PORT SIDEWALL BOUNDARY CONDITION') IF(ITYPSW.EQ.l) WRITE(NPU,79) IF(NDIM.EQ.3.AND.ITYPSW.EQ.2) C WRITE(NPU,*)'2D SOLUTION AT STBD SIDEWALL BOUNDARY' FORMAT(lX,'USER STARBOARD SIDEWALL BOUNDARY CONDITION') IF(NDIM.NE. 1 )ANG«FLDW/NSEC WRITE(NPU,80) FRQ,ZS,CO,ISF,RA,ZA,NO,IHNK,ITYPES,ITYPEB, CITYPFW,ITYPSW,FIIW,NSEC,ANG,NSOL,NTOT FORMAT(lX,'FRQ - ',F8.2,' HZ',/,lX, C'ZS - ',F8.2,' M r # A I X , C'CO - ',F8.2,' M/SEC',/,lX, C'ISF - ',I5,A1X, C'RA « ',F8.2,' M',/,1X, C'ZA - ',F8.2,' M',/,1X, C'N - ',I5,A1X, CIHNK - ',I5,/,1X, CITYPES - ',I5,/,1X, CITYPEB - ',15,AIX, CITYPPW - ',I5,A1X, CITYPSW - ',I5,A1X, C'FLEW - ',F8.3,' (WIDTH OF FIELD IN DEGREES)' ,/,lX, C'NSEC - ',15,' SECTORS',/,IX, C'PHI - ' , F 8 . 3 , ' DEGREES/SECTOR',AIX, C'NSOL - ' , 1 5 , ' SOLUTIONS',/,IX, C'NTOT - ',17) WRITE(NPU,81) DR,DZ,ANG,WDR,WZ1,WZ2,WDZ,WDTH,PDR,PDZ,PDTH,RMAX, CDOUGRA,NDIV,U1,U2,U3,U4,U5,U6,U7,U8,U9,U10,U11,U12 FORMAT(lX,'DR = ' , F 8 . 2 , ' M',/,lX, C'DZ - ' , F 8 . 2 , f M',A1X, C'DTH - ' , F 8 . 2 , ' DEGREES',AIX, C'WDR - ' , F 8 . 2 , ' M',A1X, C'WZl - ' , F 8 . 2 , ' M',/,1X, CWZ2 = ' , F 8 . 2 , ' M',/,1X, C'WDZ - ' , F 8 . 2 , ' M',A1X, C'WDTH - ' , F 8 . 2 , ' DEGREES' , A 1 X , C'PDR = ' , F 8 . 2 , ' M',/,1X, C'PDZ - ' , F 8 . 2 , ' M',/,1X, C'PDTH - ' , F 8 . 2 , ' DEGREES',/,IX, C'RMAX - ' , F 9 . 1 , ' M',/,1X, C'DOUGRA = ' , F 9 . 1 , ' M ' , / , l X , C'NDIV « ',I5,/,1X, C'USER 1 - ' , F 1 2 . 4 , / , 1 X , C'USER 2 - ' , F 1 2 . 4 , / , 1 X , C'USER 3 = ' , F 1 2 . 4 , / , 1 X , C'USER 4 - ' , F 1 2 . 4 , / , 1 X , C'USER 5 « ' , F 1 2 . 4 , / , 1 X , C'USER 6 - ' , F 1 2 . 4 , / , 1 X , C'USER 7 - ' , F 1 2 . 4 , / , 1 X , C'USER 8 - ' , F 1 2 . 4 , / , 1 X , C'USER 9 - ' , F 1 2 . 4 , / , 1 X , C'USER 10* ' , F 1 2 . 4 , / , 1 X , C'USER 11« ' , F 1 2 . 4 , / , 1 X , C'USER 1 2 - ' , F 1 2 . 4 , / , / )
191
192
Numerical Ocean Acoustic Propagation in Three
84
F0RMAT(3X,'LAYER ',13,3X,'DEPTH - ',F8.1,3X, C'DENSITY = ' ,F6.2,3X, 'GRADIENT - ',F7.4,/, C3X'BETA = ',F8.3,3X,'GRADIENT - ',F7.4)
C C
85 86 C C 87
89 90 92 C C 93
95 100 101
Dimensions
*** PRINT BOTTOM DEPTHS IF REQUESTED IF(IBOT.EQ.O) GO TO 86 DO 85 L=l,NSOL TH=THETA(L)*DEG IF(NDIM.NE.l)ANG=-FIJ^/2.0+((L-l)*FLDW/NSEC) WRITE(NPU,*)' ' WRITE(NPU,*)'RELATIVE BEARING « ',ANG,' DEGREES' WRITE(NPU,123) Rl(L),Zl(L),R2(L),Z2(L),TH CONTINUE IF(ISFLD.EQ.O) GO TO 92 *** PRINT STARTING FIELD WRITE (NPU, 87) FORMAT(/,lX,'STARTING FIELD') DO 90 J=l,NSOL IF(NDIM.NE.l )ANG=-FLDW/2.0+( (J-l)*FLDW/NSEC) WRITE(NPU,*)' ' WRITE (NPU,*)'RELATIVE BEARING « ' ,ANG,' DEGREES' WRITE(NPU,*)' ' M=(J-1)*N DO 90 1=1,N ZI=I*DZ IF(U(M+I).NE.0.0)WRITE(NPU,89) I,ZI,U(M+I) FORMAT(1X,I4,3X,F10.2,3X,'(',E12.5,2X,E12.5,' )') CONTINUE CONTINUE IF(ISVP.EQ.O) GO TO 110 *** PRINT SVP WRITE(NPU,93) RA FORMAT (//1X,'SOUND VELOCITY PROFILE AT RANGE ',F10.1,' METERS',/) DO 102 L=l,NSOL NLYR=NLYRS(L) IF(NDIM.NE.l)ANG=-FII3W/2.0+((L-l)*FLDW/NSEC) WRITE(NPU,*)' ' WRITE(NPU,*) 'RELATIVE BEARING = ' ,ANG,' DEGREES' WRITE(NPU,*)' ' K=0 DO 101 ILYR=1,NLYR WRITE(NPU,84)ILYR,ZLYR(ILYR,L),RHO(ILYR,L),RHOG(ILYR,L), CBETA(ILYR,L),BETAG(ILYR,L) WRITE(NPU,*)' ' J=K+1 K=IXSVP(ILYR,L) DO 100 I=J,K WRITE(NPU,95) I,ZSVP(I,L),CSVP(I,L) F0RMAT(1X,I4,3X,F8.1,3X,F8.1) CONTINUE WRITE(NPU,*)' ' CONTINUE
The Computer Model — F0R3D FOR3D 102 110 123
C C C C C C C
C C C C
CONTINUE CONTINUE RETURN FORMAT(lX,'BOTTOM DEPTHS ',/,lX, C'Rl = ',F10.1,' M',/,lX, C'Zl - ',F8.1,' M',/,lX, CR2 = ' , F 1 0 . 1 , ' M',/,1X, CZ2 =* ' , F 8 . 1 , ' M ' , / , l X , C'THETA = ' , F 8 . 1 , ' DEC) END
193
********** ********** **
RHS
*
********** ********** SUBROUTINE RHS *** COMPUTE RIGHT HAND SIDE. *** RA IS NEXT SOLUTION RANGE. *** CAN SAVE TIME BY COMPUTING 2D AND 3D SOLUTIONS IN SEPARATE *** SUBROUTINES i.e. RHS2 AND RHS3 ETC. INCLUDE 'FOR3D.CMN' COMPLEX Tl,T3,T5,VM,VMMl,VMPl,TBL,TBM,TBU,TBL2,TBM2,TBU2 COMPLEX TAL,TAM,TAU,XN12,XNSUM *** GET SURFACE CONDITION CALL SCON3D *** GET BOTTOM CONDITION CALL BCON3D *** GET PORT WALL CONDITION IF(NDIM.EQ.3) CALL PORT3D *** GET STARBOARD WALL CONDITION IF(NDIM.EQ.3)CALL STBD3D T1=CMPLX(.25,.25*XK0*DR) T2=l.0/(XK0*XK0*DZ*DZ) T3=T1*T2 IF(NDIM.EQ.l.OR.NDIM.EQ.2.OR.RA.EQ.0.0)GO TO 400 T5=CMPLX(0.0,XK0*DR/(4.0*XK0*XK0*(RA-.5*DR)*(RA-.5*DR)*PHI*PHI)) DO 300 L=2,NSOL-l LPl=L+l LP2-L+2 LM1TN=(L-1)*N LTN=L*N LM2TN=(L-2)*N J=(L-2)*N IF(J.LT.0)J~0 K=(L-1)*N DO 200 1=1,N RH3=RHOl(J+I) RH4=RHOl(K+I) R34=(1.0/RH3+1.0/RH4) TBU=.5*(RH3+RH4)*(T5)/RH4 TBM=1.0+(-T5)*.5*(RH3+RH4)*R34 TBL=.5*(RH3+RH4)*(T5)/RH3 IF(I.LT.N)THEN RH5=RHOl(J+I+l) RH6=RHOl(K+I+l) R56=(1.0/RH5+1.0/RH6)
194
70
C C
80 C C
90 C C
100 C C
110 C C
120 C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
TBU2=.5*(RH5+RH6)*(T5)/RH6 TBM2=1.0+(-T5)*.5*(RH5+RH6)*R56 TBL2=.5*(RH5+RH6)*(T5 )/RH5 ELSE ENDIF IMl=I-l RHl=RHOl(LMlTN+I) RH2=RH02(LMlTN+I) Rl2=l.0/RHl+l. 0/RH2 CONTINUE IF(L.EQ.NSOL-l) GO TO 100 IF(I.GT.l) GO TO 80 *** 1=1; L=2 TO NSOL-2 VMM1=TBL*SURY(L-l)+TBM*SURY(L)+TBU*SURY(LPl) VM =TBL*U( LM2TN+I )+TBM*U( LMlTN+I )+TBU*U( LTN+I) VMP1=TBL2*U( LM2TN+I+1 )+TBM2*U( LMlTN+I+1 )+TBU2*U( LTN+I+1) GO TO 130 CONTINUE IF(I.EQ.N) GO TO 90 *** 1=2 TO N-l; L=2 TO NSOL-2 VMMl=VM VM =VMPl VMP1=TBL2*U( LM2TN+I+1 )+TBM2*U( LMlTN+I+1 )+TBU2*U( LTN+I+1) GO TO 130 CONTINUE *** I=N; L=2 TO NSOL-2 VMMl=VM VM =VMPl VMPl=TBL*BOTY( L-l) +TBM*BOTY( L) +TBU*BOTY( LPl) GO TO 130 CONTINUE IF(I.GT.l) GO TO 110 *** 1=1; L=NSOL-l VMMl=TBL*SURY( L - l ) +TBM*SURY( L) +TBU*SURY( L P l ) VM =TBL*U(LM2TN+I )+TBM*U(LMlTN+I )+TBU*U(LTN+I) VMP1=TBL2*U( LM2TN+I+1 )+TBM2*U( LMlTN+I+1 )+TBU2*U( LTN+I+1) GO TO 1 3 0 CONTINUE I F ( I . E Q . N ) GO TO 1 2 0 * * * 1=2 TO N - l ; L=NSOL-l VMM1=VM VM =VMP1 VMP1=TBL2*U( LM2TN+I+1 )+TBM2*U( LMlTN+I+1 )+TBU2*U( LTN+I+1) GO TO 1 3 0 CONTINUE * * * I = N ; L=NSOL-l VMM1=VM VM =VMP1
The Computer Model — F0R3D 3D
130
C 200 300 400
C C
450 C C
460 C C
490
C 500 600
VMPl=TBL*BOTY( L-l) +TBM*BOTY( L) +TBU*BOTY (LPl) CONTINUE XN12«T1 * ((XN1 (LMlTN+I) -1 )/RHl+ (XN2 (LMlTN+I)-1 )/RH2) RSUM=RHl+RH2 XNSUM=T1* (XN1 (LMlTN+I) +XN2 (LMlTN+I) -2.0) TAU=(T3+ALFA+ALFA*T1*(XN2(LM1TN+I)-l) )/RH2 TAL=(T3+ALFA+ALFA*T1*(XN1(LM1TN+I)-1) )/RHl TAM= (2.0+XNSUM )/RSUM- (ALFA+T3) *R12-ALFA*XN12 *** COMPUTE RIGHT HAND SIDE D D( LMlTN+I )=TAL*VMMl+TAM*VM+TAU*VMPl CONTINUE CONTINUE RETURN CONTINUE DO 600 L=l,NSOL LMlTN=(L-l)*N DO 500 1=1,N IF(I.GT.l) GO TO 450 *** 1=1 VMMl=SURY(L) VM =U(LMlTN+I) VMPl=U(LMlTN+I+1) GO TO 490 CONTINUE IF(I.EQ.N) GO TO 460 *** 1=2 TO N-l VMMl=VM VM =VMPl VMPl=U(LM1TN+I+1) GO TO 490 CONTINUE *** I=N VMMl=VM VM =VMPl VMPl=BOTY(L) CONTINUE RHl=RHOl(LMlTN+I) RH2=RH02(LMlTN+I) Rl2=l.0/RH1+1.0/RH2 XN12=T1*( (XNKLMlTN+I)-l)/RHl+(XN2(LMlTN+I)-l)/RH2) RSUM=RHl+RH2 XNSUM=T1*(XN1(LMlTN+I)+XN2(LMlTN+I)-2.0) TAU= (T3+ALFA+ALFA*Tl* (XN2 (LMlTN+I)-1) )/RH2 TAL=(T3+ALFA+ALFA*T1*(XN1(LM1TN+I)-1) )/RHl TAM= (2.0+XNSUM )/RSUM- (ALFA+T3) *R12-ALFA*XN12 *** COMPUTE RIGHT HAND SIDE D D( LMlTN+I )=TAL*VMMl+TAM*VM+TAU*VMPl CONTINUE CONTINUE RETURN END
195
196
Numerical Ocean Acoustic Propagation in Three
Q C C Q Q C Q
50
C 100 C C
150 C 200 C C C 300 C
********** SC0N3D * * SCON3D ********** ********** SUBROUTINE SCON3D ***************************************************************** *** SURFACE BOUNDARY CONDITION SUBROUTINE ***************************************************************** INCLUDE 'FOR3D.CMN' GO TO (100,200,300),ITYPES+1 WRITE (NPU, 50) ITYPES BOUNDARY CONDITION ',12, FORMAT(IX,'ERROR FORMAT(lX,' ERROR -- SURFACE SURFACE BOUNDARY BOUNDARY CONDITION CONDITION ',12, ',12, C NOT IMPLEMENTED') IERR=1 RETURN CONTINUE CONTINUE *** ITYPES=0 *** PRESSURE ITYPES=0 RELEASE SURFACE ***150 PRESSURE RELEASE SURFACE DO L=l,NSOL DO 150 L=l,NSOL SURY(L)=0.0 SURY(L)=0.0 SURX(L)=0.0 SURX(L)=0.0 CONTINUE CONTINUE RETURN RETURN CONTINUE *** ITYPES=1 *** USER SURFACE CONDITION CALL USCON3D RETURN CONTINUE *** ITYPES - 2 WRITE(NPU,50)ITYPES IERR=1 RETURN END
C C C C C Q
50 C 100 C C
Dimensions
********** * SFLD3D * ********** SUBROUTINE SFLD3D *************************************************************** *** GENERATE 3D STARTING FIELD *************************************************************** INCLUDE 'FOR3D.CMN' GO TO (100,200,300,400),ISF+1 WRITE(NFU,50)ISF FORMAT(IX,'ERROR - STARTING FIELD ISF ',12,' NOT IMPLEMENTED') IERR=1 RETURN CONTINUE *** ISF=0 *** GAUSSIAN STARTING FIELD. GW=C0/(PI*FRQ)
The Computer Model — FOR3D F0R3D
110 120
130 135 140 C 200 C C
C 300 C C
310 320
330 335 340 C 400 C
GA=1.0/SQRT(GW) DO 120 1=1,N ZM=I*DZ PR=GA*(EXP(-( (ZM-ZS)/GW)**2)-EXP(-( (-ZM-ZS)/GW)**2)) U(I)=CMPLX(PR,0.0) IF(NDIM.EQ.l)GO TO 120 DO 110 L=2,NSOL M=(L-1)*N+I U(M)-U(I) CONTINUE CONTINUE IF(NDIM.EQ.l)GO TO 900 IF(ITYPPW.NE.2) GO TO 135 DO 130 1=1,N PORTY(I)=U(I) IF(ITYPSW.NE.2) GO TO 900 DO 140 1=1,N STBDY(I)=U(I) GO TO 900 CONTINUE *** ISF=1 *** USER STARTING FIELD CALL USFLD3D GO TO 900 CONTINUE *** ISF=2 *** GREENS WIDE ANGLE STARTING FIELD XK0=2.0*PI*FRQ/C0 DO 320 1=1,N ZM=I*DZ PR=SQRT(XK0)*(1.45-0.42*XK0*XK0*(ZM-ZS)**2.0)* CEXP(-(XK0*XK0*(ZM-ZS)**2)/3.0512) U(I)=CMPLX(PR,0.0) IF(NDIM.EQ.l)GO TO 320 DO 310 L=2,NSOL M=(L-1)*N+I U(M)=U(I) CONTINUE CONTINUE IF(NDIM.EQ.l)GO TO 900 IF(ITYPPW.NE.2) GO TO 335 DO 330 1=1,N PORTY(I)=U(I) IF(ITYPSW.NE.2) GO TO 900 DO 340 1=1,N STBDY(I)=U(I) GO TO 900 CONTINUE *** ISF=3 WRITE(NPU,50) ISF IERR=1
197 197
198
Numerical Ocean Acoustic Propagation in Three
Dimensions
RETURN C 900 C
930 935 945 950 Q C Q C C C Q C C
20 21 C C C C C C C Q
CONTINUE *** DIVIDE STARTING FIELD BY HANKEL FUNCTION IF REQUESTED BY USER IF(IHNK.EQ.O) GO TO 950 HNK=HNKL(XK0*RA) DO 930 J=l,NSOL M=(J-1)*N DO 930 1=1,N U(M+I)=U(M+I)/HNK CONTINUE DO 935 1=1,N PORTY(I)=PORTY(I)/HNK DO 945 1=1,N STBDY( I )=STBDY( I )/HNK CONTINUE RETURN END ********** * STBD2D * ********** ********** SUBROUTINE STBD2D ****************************************************************** * SOLVE FOR FIELD AT STBD WALL BOUNDARY * FIELD AT ADVANCED RANGE IN STBDX ****************************************************************** INCLUDE 'FOR3D.CMN' *** COMPUTE BTA(Nl) THROUGH BTA(N) *** ARRAY BTA CONTAINS PARTIAL SOLUTION OF SYSTEM OF EQUATIONS J=(NSOL-l)*N BTA(1)=AM(J+1) M=2 DO 20 I=M,N BTA( I) =AM( J+I )-AL(J+I) *AU( J+I-l )/BTA( 1-1) CONTINUE DO 21 1=1,N BTA(I)=1.0/BTA(I) CONTINUE TA=0.0 TB=0.0 *** STEP 1 - CALL TRIDIAGONAL SOLVER CALL TRID3D(AL(J+1),AM(J+1),AU(J+1),STBDX(1),DS(1),BTA(1),N,N, CTA,TB) *** SOLUTION IS IN ARRAY STBDX RETURN END ********** * STBD3D * ********** SUBROUTINE STBD3D ****************************************************************** * STARBOARD SIDEWALL BOUNDARY CONDITION ****************************************************************** INCLUDE 'FOR3D.CMN'
The Computer Model — FOR3D F0R3D
199
COMPLEX 11,13,14,TAL,TAU,TAM,XN12,XNSUM C
50
C 100 C C
150 C 200 C
C 300 C C C C
C
GO TO (100,200,300),ITYPSW+1 IERR=1 WRITE(NPU,50) ITYPSW FORMAT(lX,'ERROR - STARBOARD SIDEWALL BOUNDARY CONDITION ',12, C NOT IMPLEMENTED') RETURN CONTINUE *** ITYPSW - 0 *** SET FIELD AT STBD SIDEWALL TO 0.0 DO 150 1=1,N STBDX(I)=0.0 STBDY(I)=0.0 CONTINUE RETURN CONTINUE *** ITYPSW = 1 ; USER SUPPLIES SUBROUTINE USTBD3D CALL USTBD3D RETURN CONTINUE *** ITYPSW = 2 *** ASSUMPTION IS THAT ENVIRONMENTAL CONDITIONS AT STBD SIDEWALL *** BOUNDARY ARE EQUAL TO CONDITIONS AT RIGHTMOST SOLUTION BOUNDARY. *** SOLUTION AT BOUNDARY AT ADVANCED RANGE IS SOLVED IN 2D. DELTA=XK0*DR Tl=CMPLX(.25,.25*DELTA) T2=l.0/(XK0*XK0*DZ*DZ) T3=T1*T2 T4=CMPLX(.25,-.25*DELTA) M=(NSOL-l)*N RHl=RHOl(M+l) RH2=RH02(M+1) R12=1.0/RHl+l.0/RH2 XN12«T1 * ((XN1 (M+l)-1 )/RHl+(XN2 (M+l)-1 )/RH2) RSUM=RHl+RH2 XNSUM=T1*(XN1(M+l)+XN2(M+l)-2.0) TAU= (T3+ALFA+ALFA*Tl* (XN2 (M+l) -1) )/RH2 TAL= (T3+ALFA+ALFA*Tl * (XNl (M+l) -1)) /RHl TAM=( 2.0+XNSUM)/RSUM-( ALFA+T3) *R12-ALFA*XN12 *** COMPUTE RIGHT HAND SIDE D DS(1)=TAL*SURY(NSOL)+TAM*STBDY(1)+TAU*STBDY(2)C(T4*T2+ALFA+ALFA*T4* (XNl (M+l)-1) )/RHl*SURX( NSOL) DO 350 1=2,N-l RHl=RHOl(M+I) RH2=RH02(M+I) R12=1.0/RHl+l. 0/RH2 XN12=T1*( (XN1(M+I)-l)/RHl+(XN2(M+I )-l)/RH2) RSUM=RH1+RH2 XNSUM=Tl*(XNl(M+I)+XN2(M+I)-2.0) TAU=(T3+ALFA+ALFA*Tl*(XN2(M+I)-l))/RH2
200
C 350
C
Numerical Ocean Acoustic Propagation in Three
TAL=(T3+ALFA+ALFA*T1*(XNl(M+I ) - l ) )/BHl TAM=(2.0+XNSUM)/RSUM-(ALFA+T3) *Rl2-ALFA*XNl2 *** COMPUTE RIGHT HAND SIDE D DS(I)=TAL*STBDY(1-1)+TAM*STBDY(I)+TAU*STBDY(1+1) CONTINUE RHl=RHOl(M+N) RH2=RH02(M+N)
R12=1.0/RHl+l.0/RH2 XNl2=Tl*((XNl(M+N)-l)/RHl+(XN2(M+N)-l)/RH2) RSUM=RHl+RH2 XNSUM=Tl*(XNl(M+N)+XN2(M+N)-2.0) TAU=(T3+ALFA+ALFA*Tl*(XN2(M+N)-l) )/BH2 TAL= (T3+ALFA+ALFA*Tl * (XNl (M+N) -1)) /RHl TAM=(2.0+XNSUM)/RSUM-(ALFA+T3) *R12-ALFA*XN12 *** COMPUTE RIGHT HAND SIDE D DS(N)=TAL*STBDY(N-l)+TAM*STBDY(N)+TAU*BOTY(NSOL)C(T4*T2+ALFA+ALFA*T4*(XNl(M+N)-l) )/RH2*BOTX(NSOL) RETURN END ********** * SVP3D * ********** **********
C C C C C Q C C C C C C C C C C C C C C C C C C
Dimensions
SUBROUTINE SVP3D ****************************************************************** *** SOUND VELOCITY PROFILE SUBROUTINE ****************************************************************** *** CALLING PROGRAM SUPPLIES: NOTHING *** SVP SUBROUTINE RETURNS: NLYRS - NUMBER OF LAYERS. LAYER 1 IS WATER. OTHERS ARE SEDIMENT ZLYR - ARRAY - DEPTH OF EACH LAYER. FIRST IS DEPTH OF WATER. RHO - ARRAY - DENSITY OF EACH LAYER. GRAMS/CUBIC CM RHOG - ARRAY - DENSITY GRADIENT. BETA - ARRAY - ATTENUATION IN EACH LAYER. DB/VJAVELENGTH BETAG- ARRAY - ATTENUATION GRADIENT. IXSVP- ARRAY - CONTAINS POINTERS. POINTS TO LAST VALUE OF SVP IN CORRESPONDING LAYER. SVP IS STORED IN ARRAYS ZSVP AND CSVP. IXSVP(1,L) POINTS TO LAST SVP POINT IN WATER ALONG SECTOR BOUNDARY L. L=l,NSOL. IXSVP(NLYR,L) POINTS TO LAST SVP POINT IN BOTTOM-MOST LAYER. NSVP - NUMBER OF POINTS IN ZSVP AND CSVP. ZSVP AND CSVP CONTAIN THE PROFILES FOR ALL LAYERS. ZSVP - ARRAY - SVP DEPTHS - METERS CSVP - ARRAY - SOUND SPEED - METERS/SEC ******************************************************************
c C
C C C
INCLUDE 'FOR3D.CMN' *** READ NUMBER OF LAYERS DO 75 L=l,NSOL NSVP=0 READ(NIU,*/END=100) NLYRS(L) NLYR=NLYRS(L) *** IF NLYR IS NEGATIVE, REPEAT LAST PROFILE UNTIL NSOL PROFILES *** HAVE BEEN ENTERED.
The Computer Model — FOR3D F0R3D
C C C 50
55 75 C C 100 C C 200
210
220 230 Q C
201 201
IF(NLYR.LT.O) GO TO 200 LNLYR=NLYR LASTL=L *** FIRST LAYER IS WATER. OTHERS ARE SEDIMENT. DO 55 1=1,NLYR *** READ DEPTH OF LAYER, DENSITY AND ATTENUATION. READ(NIU,*,END=100) ZLYR(I,L),RHO(I,L),RHOG(I,L),BETA(I,L), CBETAG(I,L) *** READ PROFILE. READ(NIU,*,END=100) ZV,CV NSVP=NSVP+1 ZSVP(NSVP,L)=ZV CSVP(NSVP,L)=CV IF(ZV.LT.ZLYR(I,L)) GO TO 50 IF(ZV.GT.ZLYR(I,L)) GO TO 100 IXSVP(I,L)=NSVP CONTINUE CONTINUE RETURN *** ERROR EXIT NSVP=0 RETURN *** REPEAT LAST PROFILE UNTIL NSOL PROFILES ENTERED. CONTINUE NLYR=LNLYR NSVP=IXSVP (NLYR, LASTL) DO 230 L=LASTL+l,NSOL NLYRS(L)=NLYR DO 210 1=1,NLYR ZLYR(I,L)=ZLYR(I,LASTL) RHO(I,L)=RHO(I,LASTL) RHOG(I/L)=RHOG(I,LASTL) BETA(I,L)=BETA(I,LASTL) BETAG(I,L)=BETAG(I,LASTL) IXSVP(I/L)=IXSVP(I,LASTL) CONTINUE DO 220 J=1,NSVP ZSVP(J,L)=ZSVP(J,LASTL) CSVP(J,L)=CSVP(J,LASTL) CONTINUE CONTINUE RETURN END ********** * TRID3D *
Q
**********
Q C C C C
SUBROUTINE TRID3D(XL/XM/XU/U/D,BTA,L,MfTA,TB) ****************************************************************** *** SPECIALIZED VERSION OF METHOD PRESENTED ON PG 442 OF CARNAHAN *** ET AL FOR SOLVING A TRIDIAGONAL MATRIX. *** TRID RETURNS THE SOLUTION FIELD IN U *** BTA IS PARTIAL SOLUTION COMPUTED ELSEWHERE
202
C C C C Q C
C
10 C
70 Q C Q Q C C C Q
Numerical
Ocean Acoustic
ion in Three ee Dime Dimensions Propagation
*** D CONTAINS R.H.S. *** GAMMA - TEMPORARY STORAGE *** TA - TEMPORARY VARIABLE USED IN MANIPULATION OF BOTTOM POINT *** IB TEMPORARY VARIABLE USED IN MANIPULATION OF BOTTOM POINT ****************************************************** INCLUDE 'FOR3D.PAR' COMPLEX XL(MXN) ,XM(MXN) ,XU(MXN) ,U(MXN) ,GAMMA(MXN) ,D(MXN), C BTA(MXN),TA,TB *** TA AND TB MAY BE USED AT A LATER DATE. GAMMA(1)=D(1)*BTA(1) DO 10 1=2,L GAMMA(I)=(D(I)-XL(I)*GAMMA(1-1))*BTA(I) CONTINUE *** IF L IS LESS THAN M, U(M) IS KNCWN. IF(L.EQ.M) U(M)=GAMMA(M) DO 70 I=M,2,-1 U(1-1 )=GAMMA(1-1)-XU(1-1)*U(I)*BTA(1-1) CONTINUE RETURN END ********** * TWOSTEP* IWOSTEP* ********** ********** SUBROUTINE TWOSTEP ****************************************************************** * SOLVE V * SOLVE U * FIELD AT ADVANCED RANGE IN U
**************************************** ****************************************************************** f
INCLUDE 'FOR3D.CMN'4 ,T5 ,VM,Vml ,\HWl ,TBL,TBM TEU ,TAL,TMJ r
COMPLEX
T 1 , T 2 , T 3 , TY,VSURX,VSURY 4,T5,VM,VMM1,VMP1,TBL,TBM,TBU,TAL,TAU
COMPLEX VBOTX,VBOTY,VSURX,VSURY IF(NDIM.EQ.3.AND.ITYPPW.EQ.2) CALL PORT2D IF(NDIM.EQ.3.AND.ITYPSW.EQ.2) CALL STBD2D T1=CMPLX(.25,.25*XK0*DR) T2=CMPLX(.25,-.25*XK0*DR) T4=Tl/(XK0*XK0*DZ*DZ) IF(NDIM.EQ.l.OR.NDIM.EQ.2.OR.RA.EQ.0.0)GO TO 200 T5=-CMPLX(0.0 ,XK0*DR/(4.0*XK0*XK0*(RA-.5*DR)*(RA-.5*DR)*PHI*PHI)) DO 10 L=2,NSOL-l M=(L-1)*N J=(L-2)*N IF(J.LT.0)J=0 RH3«RHOl(J+l) K=(L-1)*N RH4=RHOl(K+l) R34«(1.0/RH3+1.0/RH4) TBU=.5*(RH3+RH4)*(T5)/RH4 TBM=1.0+(-T5)*.5*(RH3+RH4)*R34 TBL=.5*(RH3+RH4)*(T5)/RH3 VSURX=TBL*SURX( L-l )+TBM*SURX( L) +TBU*SURX( L+l) T3=CMPLX(.25,-.25*XK0*DR)/(XK0*XK0*DZ*DZ) TA1>(T3+ALFA+ALFA*T2* (XNl (M+l)-1) )/RHOl (M+l)
The Computer Model — FOR3D F0R3D
10 C C
20 21 C
C
50
60
D(M+1 )=D(M+1 )-TAL*VSURX AL*VSURX RH3=RHOl(J+N) RH4=RHOl(K+N) R34=(1.0/RH3+1.0/RH4) TBU=. 5* (RH3+RH4) * (T5 )/RH4 TBM=1.0+(-T5)*.5*(RH3+RH4)*R34 TBL=.5*(RH3+RH4)*(T5)/RH3 IF(NDIM.EQ.1.0R.NDIM.EQ.2)THEN TBL=0.0 TBM-1.0 TBU=0.0 ELSE ENDIF VBOTX=TBL*BOTX( L-l) +TBM*BOTX( L) +TBU*BOTX( L+l) TAU=(T3+ALFA+ALFA*T2*(XN2(M+N)-1))/RH02(M+N) D(M+N)=D(M+N)-TAU*VBOTX CONTINUE *** COMPUTE BTA(Nl) THROUGH BTA(N) *** ARRAY BTA CONTAINS PARTIAL SOLUTION OF SYSTEM OF EQUATIONS BTA(N+1)=AM(N+1) M=N+2 NEND=(NSOL-l)*N DO 20 I=M,NEND BTA( I )=AM( I )-AL( I) *AU( 1-1 )/BTA( 1-1) CONTINUE DO 21 I=N+1,NEND BTA(I)=1.0/BTA(I) CONTINUE TA=0.0 TB=0.0 *** STEP 1 - CALL TRIDIAGONAL SOLVER M=N+1 NTT=(NSOL-2)*N CALL TRID3D(AL(M) ,AM(M) ,AU(M) ,U(M) ,D(M) ,BTA(M) ,NTT,NTT,TA,TB) *** SOLUTION IS IN ARRAY U J=0 DO 50 1=1,N DO 50 L=2,NSOL-l J=J+1 M=(L-1)*N+I D(J)=U(M) CONTINUE J=(NSOL-2)*N DO 60 1=1,N M=(I-l)*(NSOL-2) RH3=RHOl(I) RH4=RHOl(N+I) TBL=.5*(RH3+RH4)*T5/RH3 D(M+1)=D(M+1)-PORTX(I)*TBL RH3=RHOl(J+I) RH4=RHOl(J+I+N) TBU=.5*(RH3+RH4)*(T5)/RH4 D(M+NSOL-2)=D(M+NSOL-2)-STBDX(I)*TBU CONTINUE
203
204 105 106 110
111
C
C C
150 C 200
300 C C
320
321
C
Numerical Ocean Acoustic Propagation in Three
Dimensions
BTA( NSOL-1) =BM( NSOL-1) M=NSOL NEND= (NSOL-2) * (N+l) DO 110 I=M,NEND BTA(I)=BM(I)-BL(I)*BU(1-1)/BTA(1-1) CONTINUE DO 111 I=NSOL-l,NEND BTA(I)=1.0/BTA(I) CONTINUE TA=*0.0 TB=0.0 *** STEP 2 - CALL TRIDIAGONAL SOLVER M=NSOL-l CALL TRID3D(BL(M),BM(M) ,BU(M) ,V,D,BTA(M) ,NTT,NTT,TA,TB) *** SOLUTION IN V BUT MUST BE REORDERED. *** REORDER SOLUTION J-0 DO 150 1=1,N IF( ITYPPW.EQ. 2 )PORTY( I )=PORTX( I) IF(ITYPSW.EQ.2)STBDY(I)=STBDX(I) U(I)=PORTX(I) U((NSOL-1)*N+I)=STBDX(I) DO 150 ]>2, NSOL-1 J=J+1 M=(L-1)*N+I U(M)=V(J) CONTINUE *** SOLUTION FIELD AT ADVANCED RANGE IS IN ARRAY U. RETURN CONTINUE DO 300 L=l,NSOL M=(L-1)*N VSURX-SURX(L) T3=CMPLX(. 25,-. 25*XK0*DR)/(XK0*XK0*DZ*DZ) TAL= (T3+ALFA+ALFA*T2* (XNl (M+l) -1) )/RHOl (M+l) D(M+1 )=D(Mf 1 )-TAL*VSURX VBOTX=BOTX(L) TAU«(T3+ALFA+ALFA*T2*(XN2(M+N)-1) )/RH02(M+N) D(M+N)«D(MfN)-TAU*VBOTX CONTINUE *** COMPUTE BTA(Nl) THROUGH BTA(N) *** ARRAY BTA CONTAINS PARTIAL SOLUTION OF SYSTEM OF EQUATIONS BTA(1)*AM(1) M«2 NEND=(NSOL*N) DO 320 I«M,NEND BTA( I )»AM( I )-AL( I) *AU( 1-1 )/BTA( 1-1) CONTINUE DO 321 I«1,NEND BTA(I)=1.0/BTA(I) CONTINUE TA-0.0 TB-0.0 *** STEP 1 - CALL TRIDIAGONAL SOLVER
The Computer Model — FOR3D F0R3D FOR3D
C
M=l NTT=NSOL*N CALL TRID3D(AL(M) ,AM(M) ,AU(M) ,U(M) ,D(M) ,BTA(M) ,NTT,NTT/TA,TB) *** SOLUTION IS IN ARRAY U RETURN END
205
206 C C
Numerical Ocean Acoustic Propagation in Three
Dimensions
FILE FOR3D.CMN ************** INCLUDE 'FOR3D.PAR' PARAMETER (NIO=l,NOO=2,NPO=6)
C CHARACTER TITLE C COMPLEX C C
AL,AM,AO,BL,BM,BOTX,BOTY,BTA,BO,D,DP,DS,HNK,HNKL,PORTX, PORTY,STBDX,STBDY,SORX,SORY,TEMP,0,OA,OB,OC,OD,OE, V,XN1,XN2
COMMON C C C C C C C C C C C C C C C C
AL(MXN) ,ALPHA,AM(MXN) ,ANG,AO(MXN) ,BETA(MXLYR, MXSOL), ALFA, BL(MXN),BM(MXN) ,BOTX(MXSOL+2) ,BOTY(MXSOL+2) ,BTA(MXN), BETAG(MXLYR, MXSOL), BU(MXN) ,CO,CSVP(MXSVP,MXSOL) ,D(MXN) ,DOUGRA,DP(MXNZ) ,DR, DS(MXNZ),DRl,DRMIN(MXSOL),DZ,DTH,FIIW,NDIM,FRQ,IBOT, ISFLD^ISVP^IHNK^ISF^TRKCMXSOD^ITYPEB.ITYPES^TYPPW, ITYPSW,IXSVP(MXLYR,MXSOL),KSVP,N,NO,Nl,NDIV,NLYR, NLYRS(MXSOL),NSEC,NSOL,NSVP,NTOT,NWSVP,PDR,PDTH,PDZ, PHI,PORTX(MXNZ),PORTY(MXNZ),R0,Rl(MXSOL),R2(MXSOL),RA, RHO(MXLYR,MXSOL) ,RHOG(MXLYR, MXSOL) ,RHOl(MXN) ,RH02(MXN), RMAX,RSVP,STBDX(MXNZ),STBDY(MXNZ),SORX(MXSOL+2), SURY(MXSOL+2),TEMP,THETA(MXSOL),TITLE(80), TRACK(MXTRK,2,MXSOL),O(MXN),00,01,02,03,04,05,06,07,08, 09,010,011,012,0A,0B,0C,0D,0E,V(MXN),WDTH,WDR,WDZ,WZ1, WZ2,XK0,XN1(MXN) ,XN2(MXN) ,Zl(MXSOL) ,Z2(MXS0L) ,ZA,ZI, ZLYR(MXLYR,MXSOL) ,ZP,ZS,ZSVP(MXSVP,MXSOL)
C
C DATA C
PI/3.141592654/, DEG/57.29578/
The Computer Model — F0R3D FOR3D C Q
FILE FOR3D.PAR **************
PARAMETER C
(MXLYR=20,MXNZ=1000,MXSEC=40,MXSOL=MXSEC+lf MXN*MXSOL*MXNZ,MXSVP=202,MXTRK=2000)
207