The depth functions are normaHzed by the relationship 



U^Czq) U„(z) = Fj^(zo) Fn(z)/D„. (20) 



The functions F and F' used in computing D^^ are conveniently assembled from the 

 elements of the determinant and the coefficients Aj and Bj. This requires care in developing 

 the computer code, because F is always multiplied by p and F' has the term aj in it. The sur- 

 face differs from the other layers in that F \ is zero there and F j , by eq ( 1 9), is a jW. How- 

 ever, because p\ appears as a factor in the coefficients of F| , the actual value of F j at the 

 surface in the computation is pi ajW. This factor of pj together with the p{^ needed for 

 orthogonality, when squared, gives the p^ of eq (18). 



DETERMINANT 



Normal modes are determined by finding the eigenvalues of a characteristic equation 

 which, in turn, is obtained by setting a determinant to zero. The determinant is obtained 

 from the coefficient matrix of a set of linear, homogeneous equations expressing the bound- 

 ary conditions as given by eq (10) — (13). Since the method of handling this determinant is 

 a central feature of this normal-mode program, it is given in detail here. 



The first line of the matrix is taken from eq (11) as 



BiPih2[ri(0)] +Ai pi hj [fi (0)] = 0. (21) 



At each profile interface, i, where i numbers the interfaces below the surface from 1 to 

 N-1, the two boundary conditions given by eq (12) and (13) are 



BiPih2 [fi(Zj+i)] +AjPjhj [ri(Zi+i)] -Bj+i Pj+i h2 [fi+j (Zj+j)] 



-Aj+iPi+ihi [f^+j (Zi+i)] = (22) 



and 



Biaih2 [ri(Zi+i)] + A^a^h'i [l^iz-^^^)] - Bj+j aj+j h^ [fj+i (zj+i)] 



-Aj+iai+ih'i [fi+i (Zj+i)] = . (23) 



The coefficients of Aj in the first equation and Bj+j in the second will be the diago- 

 nal elements of the matrix. The nonzero elements of the matrix will therefore be no more 

 than two places from the diagonal. The matrix can be stored in the computer in an array of 

 size (2M-1 ) X 4, where M is the maximum number of layers in the sound-speed profile. In 

 the final layer, Ajvj hj is omitted, as in eq (10). In the program, the real and imaginary parts 

 are stored in separate arrays. 



The sparseness of the matrix permits efficient evaluation by a triangularization 

 process of row reduction. For each pair of rows representing a pair of equations given by 

 eq (22) and (23), the first element from the first equation and the first two from the second 

 equation must be set to zero by subtracting the proper multiple of preceding rows. The 

 determinant is then the product of the diagonal elements of the triangularized matrix. The 

 value of the determinant, G, is used in eq (15) to find the roots by iteration. 



