KL - Ot) A METHOD FOR EVALUATING MUTUAL COUPLING BETWEEN DIELECTRIC COVERED SLOTS FED BY A BOXED STRIPLINE AND ITS IMPLEMENTATION INTO AN ARRAY DESIGN PROCEDURE by Pisti B. Katehi Radiation Laboratory 3240 EECS Building The University of Michigan Ann Arbor, MI 48109-2122 Phone: (313) 747-1796 RL-858 = RL-858 January, 1989

I. INT TION The importance of stripline-fed slots in array applications has been extensively discussed in many papers [1] - [3. Owing to the wide applicability of these radiating structures, very accurate analysis and design techniques have been developed which account for electromagnetic coupling and the finite thickness of the walls [1]-[5]. In all these models, the exterior surface of the slot is left open into free space and the coupling is due to space waves only. In recent applications, for many practical considerations, the slots are coated with a layer of insulating material which has a great effect on the performance of the array. The presence of the insulating material affects the resonant characteristics of the slots and their electromagnetic coupling, as well, due to the excitation of surface waves in the dielectric. The present paper solves the problem of mutual coupling between two electromagnetically coupled dielectric covered slots fed by boxed striplines and describes how it can be incorporated into an array design procedure. Since the slots are electromagnetically shielded in the interior region with the use of shorting pins as shown in Figure 1, there is no interior coupling between them. The method applied for the evaluation of the exterior coupling is based on the reaction theorem [6] and accounts for the interactions between the two slots due to space and surface waves excited in the air-dielectric region (see Figure 2). The major assumption in the mathematical development which will be presented here is that the slots are narrow and close to resonance. All the other parameters of the 1

problem are arbitrary including cover thickness and relative permittivity. II. THEORY By mutual coupling we mean the electromagnetic interactions between elements of an array. Since the strength of these interactions can be measured in different ways, the definition of the mutual coupling is not unique. In fact, mutual coupling is defined in such a way that can be easily incorporated into the equations which characterize the array and govern its design. In this presented work the design procedure parallels very closely with the one developed by Elliott et al and, therefore, the adopted definition for the mutual coupling is consistent with this design procedure. (a) Evaluation of Mutual Coupling Figure 1 shows a top view of two stripline-fed slots excited by the dominant stripline mode. Throughout the mathematical derivations it has been assumed that the thickness of the slot walls is very small compared to the wavelength in free space (X ). In addition, both slots have been assumed narrow and operating under resonant conditions. At this point, we define as mutual coupling the voltage applied across slot No. 1 due to the field excited on the aperture of slot No. 2. This voltage s V1 indicates the effect on the field on the apeture of the slot due lmlm to electromagnetic coupling. 2

The mutual coupling in the form of a voltage as it has been defined above can be deduced with the aid of the reciprocity theorem as has been described in [6] and is repeated here for completeness. At this point, let the dominant TEM stripline mode of amplitude Aa excite slot No. 1 as shown in Figure 3. Then a S slot voltage V1 develops at the center of the slot and, as a result, a backscattering TEM mode is launched to the left of the slot. The TEM fields at the reference plane aa' on the first stripline are given by a TEM [ a - jk (Zaa.) a jk (zzaa + jk (za ) (1 1 TEM [ a -jk (z-Za a ) jk (z -za a jk (z-Zaa,) ( = e A e + B e + D e H = e Ae B e - D e (2) Y, x x,y where zaa, denotes the position of the reference plane aa', Ba is the amplitude of the backscattered wave due to the presence of the slot and Da is the amplitude of the backscattered wave due to the TEM stripline load termination. Also in equations (1) and (2) e is an anlytic function of x,y which gives the dependence of the dominant stripline mode on the x,y coordinates, k is the propagation constant of the dominant mode and rT is the intrinsic impedance of the medium surrounding the stripline. 3

- 1 The electric field distribution E on the aperture of slot No. 1 induces electric currents at the edges of slot No. 2 _ 2 resulting in an electric field distribution E on its aperture. S Assuming the above electric field distributions the following two sets of sources may be considered on the reference plane aa' - a - a a ^ a J = z x H = - x H + yH (3) y x -a -a a ^ a M = E x z = x E - yE (4) y x and -b - 2 M =E x n (5) S on the exterior surface of slot No. 2 with the opening covered by a perfect conductor (see Figure 4). With the aid of the reciprocity theorem, these sources are related as it follows: - b -a -b - a - b J * - H M 3 ds = - J H * M ds (6) sa s2 - a where H ext is the field radiated by slot No. 1 through the air-dielectric region on the aperture of slot No. 2. In equation - b - b (6), E, H are the fields on the reference plane aa' of stripline - b No. 1 due to the equivalent source M. These fields are given by 4

b TEM r b b] jk (-Z-aa ) E = e B +D e (7) x, y x,y and b 1 TEM r b jk z-zaa,) H = + e B +D e (8) y,x xy where Bb, Db are the backscattered waves from the slot and stripline load due to the electromagnetic coupling between the slots. In view of equations (1) to (5) and (7), (8), the LHS of equation (6) takes the form: ff / b a b a b a b a dx dy E H - E H - H E + H E = y x x y x y y x Sa f 2 2 lL d ( Y ) ( (x ) \ (B + D ) (A - B - a )} 1 TEM 1 M b b a a a\ Ldx dy [ - ( e- ( J B + D (A + B + D +) sa + kTEM) -IeTEM1( b b+b( a a a) - - - e (B + D) {e) A + B + (eD)2} By comparing equations (6) and (9) we conclude that a b b 1 - a b A (B + D ) = H *M ds (10) 2S J ext TEM i2 in which 5

_ 1 TEM TEM TEM SJJ IIe, e + (11 TEM 1 I From the equivalent circuit for the individual slot No. 1 in Figure 3 we can easily find that b b L1i D =C (12) Zl +1 L1 where Cb is the forward scattering coefficient of the slot due to electromagnetic coupling between the slots and ZL1 is the normalized load termination. As it has been shown in [7] the backscattering and forward scattering coefficient Bb and Cb are related through the following simple expression. b b B =- C. (13) In view of (12) and (13), (10) takes the form: b 1 1 -- b B (Z + 1) H M ds (14) 4S a L 1 exti TEM A Furthermore, the amplitude of the backscattering wave is related to the voltage across the slot through a function which depends only on the geometrical and electrical characteristics of the stripline, the cavity created by the shorting pins and the slot aperture cut on its upper wall [7]. As a result, the following relations may be considered: b s B = F V (15) n l,m 6

V1 Zsl (16) a F Z + Z A n Sl ZL1 where Fn is called the backscattering function and can be derived by solving the problem of an isolated stripline-fed slot. S Also, V1 is the voltage applied across slot No. 1 due to mutual S coupling, V1 is the total voltage applied across slot No. 1 and Z is the normalized self impedance of slot No. 1 with slot No. 2 absent. From equations (10), (11) and (12) we can conclude that s - a VVW A=M( — l M ds (17) s _ 1 1 - ext ~ or Vlm - 4,m 4STEM Z + Z Li + 1 F M d V( nS2 1 Equation (18) could be simplified to the following form: S1 Zsl (Z + 1) 1 s ext v = v 2 Y (19) l,m TEM Z L1 2 2 12 (19 n ext with Y12 given by - a -b ext - ext - ds (120) V2 1 V2 7

S and V2 the total voltage applied on slot No. 2. ext In (20), Y12 has the units of an admittance and is called the ideal mutual admittance between the two slots. In addition, - a H has the form [8] - a 2 2= d a H t = (k I + V V) G M ds (21) Si a with M the equivalent magnetic current on the aperture of slot No. = d 1 and G the dyadic Green's function for the air-dielectric region. Since the slots have been assumed narrow the equivalent magnetic currents can take the form: N1 M = y V1 fn (y) g (z) (22) n=l and N2 -b A V M = y V2 flm (y) gm (z) (23) m=l where Vln and V2m are known constants, {fl,2n (y), n = 1,2,.. } are piecewise sinusoidal functions each one extending over a subsection of width w and length ly on the slot apertures [6], [7] 8

and {g1 2n (z). n = 1,2,... } are functions chosen so that the edge conditions on the slots are satisfied. By substituting equations (21)-(23) into (20) the ideal mutual admittance takes the form N1 N2 ext - - ext V V y (24) 12 = - n 2m nm n=l m=l ext with ynm given by [8] ext -d y e < f 6(z-z1 ), K f g >. (25) nm n lo yy m and d 2 d 2 d 2 d K k (G + G + G (26) Y y d yy 2 Y ay axay y In equation (25), Zlo indicates the position of the slot along the stripline. If the slots are around resonance and are excited in phase, then both field distributions are equiphase and cosinusoidal. As a result, it is appropriate to assume that the equivalent magnetic currents are given by: N1 \ - a As V (n-1) - M =y V1 cos - - f (y) gl (z) (27) n=l 9

b A S V t(n-l) M= y V2C Cos f (n-1 ) fg2 (z) (28) N2-1 n=l ext Due to the fact that the expression for y12 is variational in nature the above assumption has a minor effect on the value of mutual admittance. (b) Design Equations As it has been explained previously, the consideration of mutual interactions in an array design procedure is very important. In order to incorporate the effect of mutual coupling in a simple and effective way, a design procedure was developed by Elliott et al which has proven to be accurate, practical and applicable to slot arrays of any size. This design method is an iterative procedure and is based on two equations. The derivation of these equations for the problem of stripline-fed slots is presented in detail below. Let us consider the equivalent circuit for a slot No. n in an array environment (see Figure 5). For the case where this slot is electromagnetically coupled to other neighboring array elements the self impedance becomes the active - a self impedance Z. If the two ports of this circuit are at a distance equal to one wavelength of the dominant stripline mode (TEM), then it can be easily proved that 1 - a B = - C = - Z I (29) sn sn 2 10

where In is the mode current at the juncture where the series element is placed. In view of (29) equation (15) becomes - a s Z = 2 F V /I. (30) sn n n n Equation (30) is a principal result of the analysis and is called the first design equation. Furthermore, the normalized active - a impedance Z can be expressed in terms of the scattered and incident waves at the nth slot. Specifically, the input impedance to the right of the slot is A + C + D A - B + D - n n n n n n Z =. (31.) Ln A + C - D A - B - D n n n n n n Similarly, the input impedance to the left of the same slot is A + B + D -- a -(32) Z + Z - = __(32) sn Ln A - B - D n n n From equations (31) and (32) we conclude that a 2 B Z = (33) sn A - B - D n n n Since the wave reflected by the terminating load has an amplitude Dn given by Z - 1 Ln D = (A - B ) -, (34) n n n + Ln then equation (33) becomes 1 1

- a - B n sn Ln A - B n n or _a Z + Z + 1 sn Ln A = B. (36) n - a n Z sn For the case of an isolated slot the above equation takes the form Z + Z + 1 sn Ln s A = F V (37) n z n n, s Z sn s where V is the voltage applied on the single slot. n, s In view of the above, equation (33) becomes S - a -- F V z n= (zn + 1) ( 38) sn Ln Ln__ s 1 + F V F V Z n n, s n n sn s where V is the total voltage applied on the slot and is given by S S S V = V + V. (39) n n,s n,m Equation (38) may be rewritten to give 12

- a Z = (Z + 1) sn Ln s F V n n Z - _____Z +S1 Ln 1 s Ln +1 s - F V - - + 1 F V Zn n n n n,m sn sn (40) or - a z Z sn 1 1 1 1 V m 1 __ + n,m -7 z Z + 1 s s sn Ln V n (41) Equation (41) is the second design equation and together with (30) permit the design of an array of slots fed by boxed striplines. (c) Design Procedure As preliminary preparations to the design procedure of the array we have to compute the following s s (a) The desired voltage distribution V./V from the pattern 1 ] requirements, where i is any slot in the array and j is the reference slot. (b) The slots' self impedances Z and backscattering functions sn Fn as functions of the length and offset of the slots. (c) The ratios Ii/Ij from the feeding network requirements where Iij are the currents flowing on the striplines exciting the ith slot and reference slot respectively. 13

After computing the above one can assume a set of original lengths and offsets for all the slots in the array. Specifically, these will be the resonant lengths for the desired initial offsets. With these lengths and offsets, we evaluate the ratio s V m which includes interaction from all neighboring slots. With s V n this computed, a computer search is performed to find new values of slots lengths or offsets if necessary so that the denominator of (41) becomes real. In this manner, we find many possible lengths or offsets for each slot which can satisfy the above requirement. As a next step we use equation (30) in the following form - a s Z F V I sn n n ] - - (42) -a F s I Z j V n where subscript j denotes quantities related to the reference slot. Then, from all values of lengths and offsets found above, we try to identify those which satisfy equation (42). From these values which may correspond to more than one solution we keep the most realistic one. This choice can be made easier if other requirements about the feeding netowrk are considered. The described procedure must be iterated because the chosen values will undoubtedly not agree with the original guess for slot lengths and offsets. 14

With the array design procedure carefully described, our next step is to accurately characterize the slots as isolated elements and evaluate mutual coupling between them. The purpose of this work is to numerically evaluate mutual coupling between stripline-fed slots in such a manner so that it can be easily implemented into the described design procedure. Numerical results for the mutual coupling following the technique presented in previous sections are presented below. III. NUMERICAL RESULTS As we mentioned previously, the definition of mutual coupling is not unique and could be given either in the form of an admittance (see ideal mutual admittance defined above) or an impedance. Here, using Booker's relation [9] we define an ideal ext mutual impedance Z12 given by 2 ext 71o ext Z Y (43) 12 2 12 ext where Y12 is given by (24) and 11 is the intrinsic impedance of free-space (=120). Figure 6 shows the real and imaginary part of the ideal mutual impedance as functions of the distance between slots with dielectric cover replaced by air. The two slots are identical and their lengths are equal to the resonant length of the isolated slot [10] (Ldl = Ld2 = 0.3924 O). Figures 7, 8, 9 show the same 15

impedance as function of the inter-slot distance for the case of a insulating cover with dielectric constant Cr = 2.2 and thickness h = 0.035 X,, 0.07 X, and 0.106 respectively. In all these cases the slot lengths are equal to the resonant length of the isolated slots [10]. Specifically for h = 0.035 X, Ldl = Ld2 = 0.035 X, (see Figure 7), for h = 0.07 Xo, Ldl = Ld2 = 0.342 Xo (see Figure 8) and for h = 0.106 o,, Ldl = Ld2 = 0.337 kX (see Figure 9). These figures, as it is expected, show that the real part of the ideal mutual impedance is rather insensitive to thin.dielectric covers as oppose to the imaginary part which can be seriously affected by the presence of the insulating material. IV. DISCUSSION AND CONCLUSIONS This paper has presented a procedure for designing a dielectric covered slot array fed by a boxed stripline. This is an iterative procedure and takes into account all of the physical phenomena including mutual coupling due to the excitation of space and surface waves in the dielectric. In addition this work has presented an accurate and efficient method for evaluating the electromagnetic interactions between the elements of the array and has described in detail how the effect of these interactions can be incorporated into the design procedure. 16

However, in order to design an array additional information is needed about the characteristics of the isolated elements. Specifically the backscattering functions, the resonant length and self admittance have to be known as functions of various geometrical and electrical parameters. The above functions can be derived by polyfitting either theoretical or experimental results. The theoretical characterization of an isolated dielectric-covered slot fed by a boxed stripline will be presented in future work. 17

[1] E. Strumwasser, R. J. Stegen, J. A. Short and J. R. Miller, "Slot Study in Rectangular TEM Transmission Line," Hughes Aircraft Company, Rep. TM 265, January 1952. [2] P.K. Park and P. S. Elliott, "Design of Collinear Longitudinal Slot Arrays Fed by a Boxed Stripline," IEEE Trans. on Antennas and Propag., vol. AP-29, No. 1, January 1981. [3] R. Shavit and R. S. Elliott, "Design of an Array of Transverse Slots Fed by a Boxed Stripline," IEEE Trans. on Antennas and Propag., vol. AP-31, No. 7, July 1983. [4] R. S. Robertson and R. S. Elliott, "The Design of Transverse Slot Arrays Fed by the Meandering Strip of a Boxed Stripline," IEEE Trans. on Antennas and Propag., vol. AP-35, No. 3, March 1987. [5] R.S. Elliott and G. J. Stern, "The Design of Microstrip Dipole Arrays Including Mutual Coupling, Part I: Theory," IEEE Trans. on Antennas and Propag., vol. AP-29, No. 5, September 1981. [6] R. S. Elliott, "An Improved Design Procedure for Small Arrays of Shunt Slots," IEEE Trans. Antennas and Propag., vol. AP-31, pp. 48-53, January 1983. [7] Rewven Shavit, "Design of an Array of Transverse Slots Fed by a Boxed Stripline," Ph.D. Dissertation, Electrical Engineering Department, University of California, Los Angeles, June 1982. [8] P. B. Katehi, "A Space Domain Integral Equation Approach in the Analysis of Dielectric Covered Slots," to appear in Radio Science in January 1989. [9] R.S. Elliott, "Antenna Theory and Design," Prentice Hall, Inc., Englewood Cliffs, New Jersey, 1981. [10] J. D. Miller, "Dielectric Cover Thickness Effects on Stripline Slot Impedance and Frequence," Technical Report BCD TR-155, Allied Bendix Corporation Communication Division, January 1987. 18

Feeding Network 0 000 ~ a z ~ ~ ~ 0 ~ ~ ~ o 0 0 ~ @ Slot#1 I y 0 0 0 a 0 0 0 0 0 0 0 0 Slot#2 Figure 1: Two dielectric covered collinear slots excited by boxed striplines.

Space Waves, \I f/4 /A Surface waves; / I- - mm - - Slot #1 x Slot #2 y Figure 2: Two slots electromagnetically coupled through surface and space waves

0 0 0 0 0 0 0 0 0 a a I I I I I I I I I b Termination -— W a' I incident - TEM ~ reflected - O incident TEM 4- reflected O TEM+TE 1 0 o o o o O o o aZs a I L P Aa a b - B= B +B a b = D=D +D I I I I V Aa I I I I I I I I I I a b C +C = C a b D +D = D ZL.1 p. A z= z = - aa' TEM z=O TEM Figure 3: A slot excited by the dominant TEM stripline mode and its equivalent circuit

, a I I slot # 1 I II 'I II I'at..!P k M~ 44", 'II = ===== $-1.'r, op.: I. I I I I i I I I I I lb I I I I I I I I I I I I I I I I I I I I I mul k I I- - - - - - - - - --- - - - - - - I I - - - - - - - I - '01. I m b V., I I e.,... I '.:-%-l I 1 4.. I %J I 1 4-... I V.-I 4). C1.!~ ~:j y j ' i Slot #2 Figure 4 Equivalent sources used in the evaluation of mutual coupling

Z a an sn * A-I n — ~ -mAn -- bn An * - I An --- (c) Cn - Ln --- Dn an w v I n Figure 5: Equivalent circuit for the nth element of a dielectric covered slot array

40 I L = L - dl d2 0.392 X0 E 0 r.CD 0 a) 03 0) 0D V 30 -20 -10 -0 - -10 --20 0.0 r = 1.0 R 1 2 X12 I I I I I I I 0.2 0.4 0 0.6 0.8 1.0 1.2 1 1.4 1 1.6 1.8 2.0 Inter-element Distance in Free-Space Wavelengths Figure 6

40 dl Ld2 0.35 ko r = 2.2.0 0 -0 cO E a) C) Qa0 -V 30 -20 - h= 0.035;o 10 - X12 o 0_ --- —------------ -10 --20 9 0.0 I 0.2 0.4 0.4 0.6 0.6 0.8 0.8 I 1.0 1.2 1.2.4 1.4 1.6 I 1.8 2.0 Inter-element Distance in Free-Space Wavelengths Figure 7

40 L = L = 0.342 Xo dl d2 Sr= 2.2 a) E 0 c Oa CD c a) 2o 0 CL E a) Q~ 30 -20 - \ h= 0.07 \ 12 xo 10-l x12 0 --------—. — N -10 --20 0.0 0.2 0.4 0.4 0.6 0.6 0.8 0.8 1.0 1.0 1.2 1.2 1.4 1.6 1.6 1.8 2.0 Inter-element Distance in Free-Space Wavelengths Figure 8

40 Ld = Ld2= 0.337 ko 30 -30 R E r = 2.2 \ "12 ~r-2 \ h= 0.106ko I 20 0 I \ \\, 1 0- 12 \ -10 i \,,\ C V E I -__ -—.: --- -- \ ---— \- /-| — — \ --- —---- 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 Inter-element Distance in Free-Space Wavelengths Figure 9

LIST OF PROGRAMS

PROGRAM: SLOT DESIGN. FTN This program evaluates the mutual coupling between two dielectric-covered slots fed by boxed striplines for various inter-slot distances S. This distance S varies between Smin and Smax in steps of Smin.

1) The dielectric constant ER (see files data wave mutual and slot design.ftn) should be always different than 1. It can be as small as 1.00001. 2) The substrate thickness H (see files data wave mutual and slotdesign.ftn) should be larger than 0.02. The substrate thickness can become smaller than that with some minor modifications in the program. 3) The first of the logitudinal offsets of the slots (see data wave mutual) should be equal to 1 and the second should be equal to (Smax+(Ldl+Ld2)/2)/DLX where Smax is the maximum separation between the slots, Ldl,d2 are the lengths of the two dipoles and DLX is the subsection length. 4) The subsection length DLX (see data wave mutual) should be equal to Ldl,d2/Ndl,d2 where Ndl,d2 are the number of points on the slots (see data wave mutual). 5) In the main program on the fistr line of DO-LOOP 108 the parameter IZSTEP should be equal to INT(Smin/DLX) where Smin is the minimum separation between the slots. Also, IZ MIN should be equal to Smin+l.

####### ####### #### # ####### a p o l 1 o d o m a i n CAEN/Apollo K K K K KKK K K K K K A K A A { A A A A { AAAAAAA K A A K A A TTTTTTT T T T T T T EEEEEEE H H E H H E H H EEEEE HHHHHHH E H H E H H EEEEEEE H H III I I I I I III dddcld aa d d a a d d a a d d aaaaaa d d a a dddcld a a ttttt t t t t t aa a a a a aaaaaa a a a a w w w w w w w ww w ww ww w w aa a a a a aaaaaa a a a a V V V V V V V V V V VV eeeeee e eeeee e e eeeeee m m u u mm mm u u m mmm u U m m u U m m U u m m uuuu t ttttt t t t t U U aa u u a a u u a a u u aaaaaa u u a a uuuu a a 1 1 1 1 1 111111 //tera/users/katehi/tape/data-wave-mutual LAST MODIFIED ON: 89/01/25 1:13 PM FILE PRINTED: 89/01/25 1:30 PM

Print file "data_wave_mutual" Page 1 Dielectric constant --- 2.62 Substrate Thickness -- 0.02544 Conductor Thickness --- 0.00001 Number of Slots ---- 2 Transverse offsets of the slots ---- 0.3166 0.60864 Longitudinal offets of the slot 1 57 Slot widths ---- D. 048 D0.048 Slot Excess Widths ---- ID. 0 0. 0 Subsection Length ---- (3.0125 0.0125 Lower Limit of the Tail Contribution ---- 100.0 ---- Number of Points on the Slots ---- 29 29 Error in the evaluation of the series ---- 1. D-6

#M############ # a p o110 d o m a i n CAEN/Apollo ################ ##############8# ################ ################ K K A TTTTTTT EEEEEEE H H III K K AA T E H H I K K A A T E H H I KKK A A T EEEEE HHHHHHH I K K AAAAAAA T E H H I K K A A T E H H I K K A A T EEEEEEE H H III ssss 1 0000 ttttt s 1 0 0 t ssss 1 0 0 t si 0 0 t s s 1 0 0 t ssss 111111 0000 t ddddd eeeeee ssss d d e s d d eeeee ssss d d e s d d e s a ddddd eeeeee ssss i gggg n n ffffff ttttt n n i g g nn n f L nn n i g n n n fffff L n n n I g ggg n n n... f t n n n i g g n nn... f t n nf i gggg n n... f t n n ~######## ###### //tera/users/katehi/tape/slot-design.ftn LAST MODIFIED ON: 89/01/26 9:09 AM FILE PRINTED: 89/01/26 9:11 AM ################ ################ ################ ################

Print file "slotdesign.ftn" Page 1 SLOT DESIGN.FTN This program designs dielectric covered slot arrays IMPLICIT REAL*8 (A-H,O-Z) REAL*4 RCUR,AICUR COMPLEX YS,YSlS2,CI,SUM MD, SUM_MW, SUM M,CUR RES,Z-SELF-RES COMPLEX YS-ADM,YSW-ADM,CONSTN,CONSTM,Z12 MD,Z12 MW EXTERNAL F EER COMMENTS Input file: Output file: DATA WAVE MUTUAL OUT WAVE MUTUAL This program calls the following subroutines: DATA: FEER: GENERATE: CUBSPL: MUTAL SLOT ARRANGE SLOT This subroutine reads the values of the substrate parameters from the input file This subroutine specifies the appropriate normalization constant This subroutine evaluates the resonant length, resonant conductance and field distribution at resonance. This subroutine segments the slots into subsections of the same length starting from the centers to the end points This subroutine finds the mutual coupling between the subsections of one slot and the subsections of the neighboring slots This subroutine combines these interactions between subsections to get the total mutual coupling between slots COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPIrTPI2,PI,E1,E2,EER,AKO,AK, *AKK, FA, OFFSET(7),OFFLIM,ERROR,NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS COMMON/MUTUALADMAT/YSADM(7,7,200),YSWADM(7,7,200) COMMON/RES/S-LENGTH(30),DLX-RES(30),Z-SELF-RES(30), *CUR-RES(30,60) COMMON/IOFF/INSS(7,7),NSSL(7,7) COMMON/SPLINE/RCUR(60),AICUR(60) COMMON/MAN/IBMATR(260,260) OPEN(UNIT=05,FILE='DATA WAVE MUTUAL',STATUS='OLD') OPEN(UNIT=06,FILE='OUT WAVE-MUTUAL',STATUS='OLD') Subroutine DATA reads the values of the geometrical parameters CALL DATA CALL F EER CI= (0.0,1.0) ICUR=1 ICUR=0 resonant field derived from GENERATE ICUR=1 we assume a form for the resonant field IF (ICUR.EQ.0) THEN

Print file "slot_design. ftn" Page 2 C --- —---------------------------------------------------------- C Call GENERATE to find the resonant lengths of various C slots C C DO 1 I SLOT=1,NSLOTS C CALL GENERATE(I SLOT) C 1 CONTINUE C --- —------------------------------------------------------------------ END IF DO 7 I SLOT=1,NSLOTS NSL(ISLOT)=NSL(ISLOT)+2 N MAX=NSL(I SLOT)-1 DO 8 N=1,N MAX CURRES(I SLOT,N+1)=CUR RES(I SLOT,N) 8 CONTINUE CUR RES(I SLOT,1)=(0.0,0.0) CURRES(ISLOT,NMAX+1)=(0.0,0.0) 7 CONTINUE C C Find common subsection length C N SLOT=1 IF (NSLOT.LE.4) THEN I MIN=1 ELSE I MIN=NSLOT-3 END IF C IF (NSLOT.GT.(NSLOTS-4)) THEN I MAX=NSLOTS ELSE I MAX=N SLOT+3 END IF DLX=DLX RES(I MIN) DO 2 I=I MIN,I MAX IF (DLX RES(I).LT.DLX) THEN DLX=DLX RES(I) END IF 2 CONTINUE Interpolate the current of nslot DLX DIF=DABS(DLX RES(N SLOT)-DLX) IF (DLX DIF.GT.1.D-5) THEN CALL CUBSPL(ICUR,DLX,1,N SLOT, ) CALL CUBSPL(ICUR,DLX,1,N SLOT,2) DLX RES(N SLOT)=DLX L MAX=NSL (N SLOT) DO 9 L=1,L MAX CUR RES(N SLOT,L)=RCUR(L)+CI*AICUR(L) WRITE (6,77) N SLOT,L,CUR RES(N SLOT,L) 77 FORMAT(5X,'N SLOT=',I4,2X,'L=',I4,2X,'CUR=', * E14.7,2X,E14.7) 9 CONTINUE ELSE IF (ICUR.EQ.1) THEN L MAX=NSL(N SLOT) DO 502 L=1,L MAX RCUR(L)=SIN(PI*(L-l)/(NSL(NSLOT)-1)) AICUR(L)=0.0 WRITE (6,601) L,RCUR(L),AICUR(L) 601 FORMAT(2X,'L=',I4,2X,'RCUR(L)=',E14.7,2X, *'AICUR(L)=',E14.7) 502 CONTINUE DO 505 L=1,L MAX CURRES(NSLOT,L)=RCUR(L)+CI*AICUR(L) 505 CONTINUE

Print file "slot design. ftn" Page 3 END IF C C Interpolate the current on the other slots C DO 33 M=I MIN,I MAX IF (M.EQ.NSLOT) GO TO 33 C C Interpolate the current of m slot C DLX DIF=DABS(DLX RES(M)-DLX) IF (DLX DIF.GT.1.D-5) THEN CALL CUBSPL(ICUR,DLX, 1,M, 1) CALL CUBSPL(ICUR,DLX,1,M,2) DLX RES(M)=DLX L MAX=NSL(M) DO 34 L=1,L MAX CUR RES(M,L)=RCUR(L)+CI*AICUR(L) WRITE (6,77) M,L,CURRES(M,L) 34 CONTINUE ELSE IF (ICUR.EQ.1) THEN L MAX=NSL(M) DO 503 L=1,L MAX RCUR(L)=SIN(PI*(L-1)/(NSL(NSLOT)-1)) AICUR(L)=0.0 WRITE (6,601) L,RCUR(L),AICUR(L) 503 CONTINUE DO 506 L=1,L MAX CURRES(M,L) =RCUR (L)+CI*AICUR(L) 506 CONTINUE END IF 33 CONTINUE C C C Call MUTUAL SLOT to find mutual coupling between slot C nslot and the neighboring slots CALL MUTUALSLOT(NSLOT) DO 11 I=I MIN,I MAX J MIN=I MIN+1 J MAX=I MAX DO 12 J=J MIN,J MAX IJMAX=NSSL(I, J) WRITE (6,13) I,J 13 FORMAT(10X,'Interactions between slots',I2,' and ' I2//) DO 14 IJ=1,IJMAX WRITE (6,15) IJ,YS ADM(I,J,IJ) 15 FORMAT(1X,'IJ=',I4,1X,'YSD=',E14.7,2X,E14.7, * ) 14 CONTINUE 12 CONTINUE 11 CONTINUE IZ MIN=48 IZ MAX=NXOFF(2) IZ STEP=47 DO 108 IZ=IZ MIN,IZMAX,IZSTEP NXOFF(2)=IZ CALL ARRANGEMUTUAL E'ind the center of n slot NCO=(NSL(NSLOT)+:1)/2

Print file "slot_design.ftn" C Find the corresponding row for IBMATR C I ROW=0 DO 20 I=I MIN,N SLOT IF (I.GT.1) IROW=IROW+NSL(I-1) 20 CONTINUE C C Find the mutual coupling terms due to dielectric,waveguide C SUM MD=(0.0,0.0) I COL=0 DO 3 M=I MIN,I MAX IF (M.EQ.N SLOT) THEN IF (M.GT.1) I COL=I COL+NSL(M-1) GO TO 3 END IF C C Find the center of m slot C NCI=(NSL(M)+1)/2 C C Find corresponding collumn in IBMATR C IF (M.GT.1) I COL=I COL+NSL(M-1) C C ICUR = 0: We derive the current from GENERATE C ICUR = 1: We assume a form for the current C IN MIN=1 IN MAX=NSL(N SLOT) DO 4 IN=IN MIN,IN MAX CONSTN=CUR RES(N SLOT,IN)/CUR RES(N SLOT,NCO) C C WRITE (6,88) N SLOT,IN,CONSTN C 88 FORMAT(2X,'N=',I4,2X,'IN=',I4,5X,'CONSTN=', * E14.7,2XE1 4.7//) /IM MIN=1 IM MAX=NSL(M) DO 5 IM=IM MIN,IM MAX CONSTM=CUR RES(M,IM)/CURRES(M,NCI) CON=CONSTN*CONS TM IJ=I ROW+IN KJ=I COL+IM IK=IBMATR (IJ, KJ) WRITE (6,89) IM,CONSTM,IJ,KJ,IK 89 FORMAT(1OX,'IM=',I4,2X,'CONSTM=',E14.7,2X,E14.7/ * 10X,'IJ=',I4,2X,'KJ='I4,2X, 'IK=',I4) SUM MD=SUM MD+SNGL(CON)*YS ADM(NSLOT,M,IK) 5 CONTINUE 4 CONTINUE 3 CONTINUE DIST X=(NXOFF(2)-NXOFF(1))*DLX WRITE (6,52) DIST X 52 FORMAT(///2X,'LONGITUDINAL DISTANCE =', E14.7/) WRITE (6,60) SUM MD 60 FORMAT (/1OX,'SUM MD=',E14.7,5X,E14.7/) Z12 MD=-(120.0*SNGL(PI))**2*SUMMD/2.0 WRITE (6,61) Z12 MD 61 FORMAT(/1OX,'Z12 MD=',E14.7,2X,E14.7//) Page 4

Print file "slotdesign.ftn" Page 5 108 CONTINUE 1000 CONTINUE STOP END C............................................................... C The name of this subroutine is DATA C and gives all the data used by the main program and the other C subroutines. C........................................................................... SUBROUTINE DATA IMPLICIT REAL*8 (A-H,O-Z) DIMENSION WORK(7,7) C COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/MUTUAL AD-MAT/YSADM(7,7,200),YSW-ADM(7,7,200) C COMMON/IOFF/INSS(7,7),NSSL(7,7) C COMMON/MAT-DIEL/YS(200),YS1S2(7,200),NOFFS(7) C COMMON/RES/S LENGTH(30),DLX-RES(30),Z-SELF-RES(30), *CUR-RES(30,60) C PI=3,.141592653589D0 C C C ---- Dielectric constant --- READ (5,1) ER 1 FORMAT (///6X,D16.9) WRITE (6,2) ER 2 FORMAT (10X,'Dielectric Constant of the Substrate'/10X,E14.7//) ---- Substrate Thickness --- READ (5,1) H WRITE (6,3) H 3 FORMAT(1OX,'Substrate Thickness'/10X,E14.7//) Conductor Thickness --- READ (5,1) T WRITE (6,4) T 4 FORMAT(1OX,'Conductor Thickness'/10X,E14.7//) Number of Slots ---- READ (5,20) NSLOTS 20 FORMAT(///6X,14) WRITE (6,6) NSLOTS 6 FORMAT(10X,'Number of Slots'/10X,'NSLOTS=',I4//) Limit for offsets: Small Offset< OFFLIM ---- Large Offset> OFFLIM OFFLIM=0.1 - Transverse Offsets of the Slots ---- READ(5,1) YOFF(1) WRITE (6,7) YOFF(1) 7 FORMAT(10X,'Transverse Offsets of the Slots'/10X, *'YOFF(1)=',E14.7)

Print file "slotdesign.ftn" IF (NSLOTS.GT.1) THEN DO 8 I=2,NSLOTS READ(5,10) YOFF(I) 10 FORMAT(6X,D14.7) WRITE (6,9) I,YOFF(I) 9 FORMAT(10X,'YOFF(' 2, ')=',E14.7) 8 CONTINUE END IF WRITE(6, 60) 60 FORMAT(1OX,//) C C ---- Longitudinal Offsets of the Slots ( in dlx ) C READ (5,20) NXOFF(1) WRITE (6,11) NXOFF(1) 11 FORMAT(1OX,'Longitudinal Offset of the Slots'/ *j10X,'NXOFF(1)=',14) IF (NSLOTS.GT.1) THEN DO 12 I=2,NSLOTS READ(5,30) NXOFF(I) 30 FORMAT(6X,14) WRITE (6,13) I,NXOFF(I) 13 FORMAT(1OX,'NXOFF(',12,')=',4) 12 CONTINUE END IF WRITE(6,60) C C ---- Slot Widths ---- C READ(5,1) WS(1) WRITE(6,14) WS(1) 14 FORMAT(10X,'Slot Widths'/1OX,'WS(1)=',E14.7) IF (NSLOTS.GT.1) THEN DO 15 I=2,NSLOTS READ(5,10) WS(I) WRITE (6,16) I,WS(I) 16 FORMAT(10X,' WS(', 2,')=',E14.7) 15 CONTINUE END IF WRITE (6,60) ---- lots Excess Widths --- READ(5,1) WSDELTA(1) WRITE (6,17) WSDELTA(1) 17 FORMAT(10X,'Slots Excess Widths'/1OX,'WSDELTA=', *E14.7) IF (NSLOTS.GT.1) THEN DO 18 I=2,NSLOTS READ(5,10) WSDELTA(I) WRITE(6,19) I,WSDELTA(I) 19 FORMAT(10X,'WSDELTA(',12,')=',E14.7) 18 CONTINUE END IF WRITE (6,60) - Subsection Length --- READ (5,1) DLX RES(1) WRITE (6,21) DLX RES(1) 21 FORMAT(1OX,'Subsection Length'/10X,E14.7//) IF (NSLOTS.GT.1) THEN DO 40 I=2,NSLOTS READ(5,10) DLXRES(I) WRITE(6,46) I,DLX RES(I) 46 FORMAT(1OX,'DLX RES(',12,')=',E14.7) Page 6

Print file "slot_design.ftn" 40 CONTINUE END IF WRITE (6,60) C C C ---- Lower Limit of the Tail Contribution --- C READ (5,1) A WRITE (6,22) A 22 FORMAT(1OX,'Lower Limit of Tail Contribution'/lOX,E14.7//) C C ---- Number of Points on Each Slot ---- C READ (5,20) NSL(1) WRITE (6,23) NSL(1) 23 FORMAT(10X,'Number of Points on Each Slot including the ends', */10X,'NSL(1)=',I4) IF (NSLOTS.GT.1) THEN DO 24 I=2,NSLOTS READ(5,25) NSL(I) 25 FORMAT(6X, 4) WRITE(6,26) I,NSL(I) 26 FORMAT (1X,'NSL(', 2,')=', 14) 24 CONTINUE END IF WRITE (6,60) C C ---- Error in the evaluation of the series ---- C READ (5,1) ERROR WRITE (6,27) ERROR 27 FORMAT(1OX,'Error in the evaluation of the series'/ *10X,'ERROR=',E14.7//) C C Initialize OFFSET( ) to 0 C DO 37 1=1,7 OFFSET(I)=0.DO 37 CONTINUE fInitialize NOFF to 1 NOFF=1 RETURN END --- - - - - - - - - - -- - - - - - - - - - --------------------------- This function evaluates the normalization constant --- - - - - - - - - - - - - - - - - - --- -- ----------------------- SUBROUTINE F EER IMPLICIT REAL*8 (A-H,O-Z) ---- Normalization Constant ---- COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS EER=ER+(1.D0-ER) *(W/H)/ (1.DO+W/H) EER=1.0 WRITE (6,100) EER WRITE(*,100) EER 100 FORMAT(1lOX,'Normalization Constant'/10X,E14.7/) RETURN END Page 7

Print file "slotdesign.ftn" Page 8 C --- —---------------------------------------------------------- C This subroutine denormalizes with respect to CNORM-OLD C and normalizes again with respect to CNORM NEW C --- —-------------------------- ---------------------- SUBROUTINE NORM(CNORM OLD,CNORM NEW) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/MUTUAL AD MAT/YS ADM(7,7,200),YSW-ADM(7,7,200) C COMMON/IOFF/INSS(7,7),NSSL(7,7) C CNORM=CNORM OLD/CNORM NEW C PI=3.141592654 C AKO=2.DO*PI*CNORM-NEW AKK=2.DO*PI AK=AKO*DSQRT(ER) C H=H*CNORM AW=AW*CNORM BW=BW*CNORM T=T*CNORM DLX=DLX*CNORM OFFLIM=OFFLIM*CNORM C YOFF (1) =YOFF (1) *CNORM IF (NSLOTS.GT.1) THEN DO 8 I=2,NSLOTS YOFF(I)=YOFF(I)*CNORM 8 CONTINUE END IF WS (1)=WS (1) *CNORM IF (NSLOTS.GT.1) THEN DO 15 I=2,NSLOTS WS(I)=WS(I)*CNORM 15 CONTINUE END IF WSDELTA(1)=WSDELTA(1)*CNORM IF (NSLOTS.GT.1) THEN DO 18 I=2,NSLOTS WSDELTA (I)=WSDELTA (I) *CNORM 18 CONTINUE END IF RETURN END.......................... Spli ne Interpolation...................... SUBROUTINE CUBSPL (ICUR, DLX, IEND, NSLOT,IRX) IMPLICIT REAL*8 (A-H,O-Z) COMPLEX CURRENT,CUR RES,ZSELF RES,CC REAL*4 RCUR, AICUR, REAL_CUR, AIMAG CUR DIMENSION S(260),A(260,4),X(260),Y(260),AI(260),BI(260), *CI (260),DI (260) COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30), NSL(30), NSLOTS COMMON/RES/S-LENGTH (30),DLX-RES (30), ZSELF-RES (30),

Print file "slotdesign.ftn" Page 9 *CUR RES(30,60) C COMMON/SPLINE/RCUR(60),AICUR(60) C C This routine computes the matrix for finding the coefficients of a C cubic spline through a set of data. C The system is then solved to obtain the second derivative values, C and the coefficients of the cubic spline between each pair of points. C - --------------—. --- — - - - - - - - - - - - - - - - - - - - - - - -- - C Parameters are C X,Y Arrays of X and Y values to be fitted C C DLX Subsection length (if all points have same spacing) C C S Array of second derivative values at the points C C N Number of points C C IEND Type of end condition to be used C IEND=1, Linear ends, S(1)=S(N)=0 C IEND=2, Parabolic ends, S(1)=S(2), S(N)=S(N-1) C IEND=3, Cubic ends S(1),S(N) are extrapolated C C A Augmented matrix of coefficients and R.H.S. for finding S C C IRX 1: Interpolate the real part of the current C 2: Interpolate the imaginary part of the current C C ICUR =0 resonant field derived from GENERATE C ICUR =1 we assume a form for the resonant field C ---— _ --- —------------------------------------------------------ PI=3.141592654 N=NSL(N SLOT) CC=(0.0,1.0) Computation of matrices X,Y NCO OLD=(NSL(N SLOT)+1)/2 NSLOT NEW=2*NINT( (NSL(NSLOT)-1) *DLXRES(NSLOT) / (2.0*DLX))+1 NC0 NEW=(NSLOT NEW+1)/2 ITEST=(NSLOT NEW+1)-NCO NEW*2 I CUR=(NSLOT NEW+1)/2 I MIN=1 I MAX=NSL(N SLOT) L MAX=I MAX IF (ICUR.EQ.1) GO TO 500 DO 1 I=I MIN,I MAX X(I)=DLX RES(N SLOT)*FLOAT(I-1) REAL CUR=REAL(CUR RES(N SLOT,I)) CURRENT=-CC*CUR RES(N SLOT,I) AIMAG CUR=REAL(CURRENT) IF (IRX.EQ.1) Y(I)=DBLE(REAL CUR) IF (IRX.EQ.2) Y(I)=DBLE(AIMAGCUR) WRITE (6,67) I,X(I),Y(I) 67 FORMAT(1OX,'I=',I4,2X,'X=' E14.7,2X,'Y=',E14.7) 1 CONTINUE ------------------------------------------------------------------—. ---I Compute the N-2 rows I ------------------------- NM2=N-2 NM1=N-l DX1=X(2)-X(1) DY1=(Y(2)-Y(l))/DX1*6.DO DO 10 I=1,NM2 DX2=X (I+2) -X (I+1)

Print file "slotdesign. ftn" DY2=(Y(I+2)-Y(I+1))/DX2*6.DO A(I,1)=DX1 A(I,2)=2.DO* (DX1+DX2) A(I,3)=DX2 A(I, 4) =DY2-DY1 DX1=DX2 DY1=DY2 10 CONTINUE C C Adjust first and last rows to end condition C GO TO (20,50,80), IEND C C for IEND = 1 no change is needed C 20 GO TO 100 C C for IEND = 2, S(1)=S(2), S(N)=S(N-1), parabolic ends. C 50 A(1,2)=A(I,2)+X(2) -X(1) A (NM2, 2) =A (NM2, 2) +X (N) -X (NM1) GO TO 100 C C for IEND = 3, cubic ends, S(1), S(N) are extrapolated. C 80 DX1=X(2)-X(1) DX2=X (3) -X(2) A(1,2)=(DX1+DX2)*(DX1+2.DO*DX2)/DX2 A (1,3) = (DX2*DX2-DX1*DX1) /DX2 DXN2=X (NM1) -X (NM2) DXN1=X (N) -X (NM1) A (NM2,1) = (DXN2*DXN2-DXN1 *DXN1) /DXN2 A(NM2,2)=(DXN1+DXN2)*(DXN1+2.DO*DXN2)/DXN2 GO TO 100 C C Now we solve the tridiagonal system. First reduce 100 DO 110 I=2,NM2 A(I,2)=A(I,2)-A(I,1) /A(I-1,2) *A(I-1,3) A(I,4)=A(I,4)-A(I,1)/A(I-1,2)*A(I-1,4) 110 CONTINUE Back substitution A (NM2,4)=A(NM2,4) /A (NM2,2) DO 120 I=2,NM2 J=NM1-I A(J,4)=(A(J,4)-A(J, 3)*A(J+1,4))/A(J,2) L20 CONTINUE Place values in S-vector 3 DO 130 I=1,NM2 S(I+1)=A(I,4) L30 CONTINUE Set S(1) and S(N) according to end conditions GO TO (150,160,170), IEND Linear ends 50 S(1)=0. S(N)=0. GO TO 200 Page 10

Print file "slotdesign. ftn" C Parabolic ends C 160 S(1)=S(2) S(N)=S(N-1) GO TO 200 C C For cubic ends C 170 S(l)=((DX1+DX2)*S(2)+DX1D*S(3))/DX2 S(N)=((DXN2+DXN1)*S(NM1)-DXN1*S(NM2))/DXN2 C C Find spline fit coefficients C C C Evaluation of the coefficients ai,bi,ci,di - Store into AI,BI C CI,DI C 200 DO 210 I=1,NM1 AI(I)=(S(I+1)-S(I))/(6.D0*DLXRES(NSLOT)) BI(I)=S(I)/2.D0 CI(I)=(Y(I+1)-Y(I))/DLX RES(N SLOT)-(2.DO*S(I)+S(I+1)) * *DLX RES(N SLOT) /6.DO 210 DI(I)=Y(I) Re-evaluate nsl(nslot) and curres(nslot) DO 2 I=1,I CUR IF (ITEST.EQ.0) NCP=NCO NEW+I-1 IF (ITEST.EQ.1) NCP=NC0 NEW+I NCM=NCO NEW-I+1 DISTP=(NCP-1)*DLX DISTM=(NCM-1)*DLX RIP=DISTP/DLX RES(NSLOT) IP=INT(RIP) IF ((RIP-IP).GT.0.999) IP=IP+1 IF(IP.EQ.NSLOT NEW) IP=IP-1 RIM=DISTM/DLXRES(NSLOT) IM=INT(RIM) IF((RIM-IM).GT.0.999) THEN IM=IM+1 END IF DIFP=DISTP-FLOAT(IP)*DLX RES(N SLOT) DIFM=DISTM-FLOAT(IM)*DLXRES(NSLOT) DIFP2=DIFP*DIFP DIFM2=DIFM*DIFM DIFP3=DIFP2*DIFP DIFM3=DIFM2*DIFM IF (IRX.EQ.1) THEN IP=IP+1 IM=IM+1 RCUR(NCP)=SNGL(AI (IP)*DIFP3+BI(IP) *DIFP2+ * CI(IP)*DIFP+DI(IP)) RCUR(NCM)=SNGL(AI(IM)*DIFM3+BI(IM)*DIFM2+ * CI(IM)*DIFM+DI(IM)) WRITE (6,666) NCP,IP,NCM,IM,RCUR(NCP),RCUR(NCM) 666 FORMAT(2X,'NCP=',I4,2X,'IP=',I4,2X,'NCM=',I4,2X, 'IM=', * I4/30X,'RCUR(NCP)=',E14.7,2X,'RCUR(NCM)=',E14.7) END IF IF (IRX.EQ.2) THEN IP=IP+1 IM=IM+1 AICUR (NCP)=SNGL(AI(IP)*DIFP3+BI(IP)*DIFP2+ * CI(IP)*DIFP+DI(IP)) AICUR (NCM)=SNGL (AI (IM) *DIFM3+BI (IM) *DIFM2+ * CI (IM) *DIFM+DI (IM)) WRITE (6,777) NCP,IP,NCM,IM,AICUR(NCP),AICUR(NCM) Page 11

Print file "slotdesign.ftn" Page 12 777 FORMAT(2X,'NCP=',I4,2X,'IP=',I4,2X,'NCM=',I4,2X,'IM=', I4/10X,'AICUR(NCP)=',E14.7,2X,'AICUR(NCM)=',El4.7) END IF 2 CONTINUE C IF (IRX.EQ.2) NSL(N SLOT)=NSLOT NEW RETURN C 500 CONTINUE DO 502 L=1,L MAX IF (IRX.EQ.1) THEN RCUR(L)=SIN(PI* (L-1) / (NSL(NSLOT)-1)) WRITE (6,601) LRCUR(L) 601 FORMAT('OX,'L=',I4,2X,'RCUR=',El4.7) ELSE IF (IRX.EQ.2) THEN AICUR(L) =0.0 WRITE (6,602) L,AICUR(L) 602 FORMAT(2X,'L=',I4,2X,'AICUR=',El4.7) END IF 502 CONTINUE RETURN END

a p oll o d omai n CAEN/Apol lo K K A TTTTTTT EEEEEEE H H III K K A A T E H H I K K A A T E H H I KKK A A T EEEEE HHHHHHH I K K AAAAAAA T E H H I K K A A T E H H I K K A A T EEEEEEE H H III m m u u ttttt u U aa 1 mms mm u u t u U a a 1 m mm m U U t u u a a I m m U U t u u aaaaaa 1 m m u U t U u a a I m m uuuu t uuuu a a 111111 sass 1 0000 ttttt S 1 a 0 t assas 1 0 0 t a 1 0 0 t a a 1 0 0 t sass 111111 0000 t ffEffff ttttt n n f t nfl n fffff t n n n f t n n n.. f t ni nnl f t fi n //tera/users/katehi/tape/mutual-slot.ftn LAST MODIFIED ON: 88/10/25 2:59 PM FILE PRINTED: 89/01/25 1:34 PM * # # # # # # # # ## # # # # # # # # # # # # # # # # # # # # # # ## # ## # ## ## # ## # # # # # ## # ## ## # ## # #

Print file "mutual slot. ftn" Page 1 MUTUAL SLOT.FTN This program evaluates the mutual coupling terms for the second design equation SUBROUTINE MUTUAL-SLOT(N-SLOT) IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YS,YSlS2,CI COMPLEX YS-ADM,YSW-ADM EXTERNAL F-EER COMMON/CTAIL/S1(4,205,7),Dl(4,205,7),D2(4,205,7), *T1 (4,205,7),T2 (4,205,7),T3(4,205,7),T4 (4,205,7) COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AK0,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF - COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS COMMON/MUTUAL-AD-MAT/YSADM(7,7,200),YSW-ADM(7,7,200) COMMON/MAT-DIEL/YS(200),YS1S2(7,200),NOFFS(7) COMMON/OUT/GS(250),GS1S2 (7,250) COMMON/MAT/PLI,AI,TI,V(3),IY COMMON/PUT/SSJO(250,7),SAJO(250,7),YSIN,YCOS COMMON/ADON/DIST(250,7,10),RCOE(20,250,7,10),AX,SERS(5),SERA(5), *DARG(10,4),S(10,2),WREAL,NSER, NMAX(7) COMMON/DATT/COAL(20),POINT(20),CN(51),BM(51),POLTM(20), *POLTE(20),AM(41),DM(41),POLES(40),VXXM(20),VZXM(20),VZXE(20), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ, FiX,F1Z COMMON/IOFF/INSS(7,7),NSSL(7,7) COMMON/B01/BJ0, BJ1 COMMON/MAN/IBMATR(260,260) Subroutine DATA-MUTUAL-SLOT prepares the parameters for the evaluation of the mutual coupling terms CALL DATA MUTUAL-SLOT(N-SLOT) CNORM OLD=1.D0 CNORM NEW=1.DO/DSQRT (EER) CALL NORM (CNORM-OLD, CNORM-NEW) Subroutine YIJ DIEL evaluates the contribution to the elements of the admittance matrix coming from the dielectric substrate CALL YIJ-DIEL CNORM OLD=1.DO/DSQRT(EER) CNORM NEW=1.DO CALL NORM(CNORM-OLD,CNORM NEW) RETURN END The name of t....his subroutine is DATAMUT.....UAL.OT.. The name of this subroutine is DATA-MUTUAL-SLOT............................ o...................

Print.file "mutual slot.ftn" SUBROUTINE DATA MUTUAL SLOT(NSLOT) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION WORK(7,7) I COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK, FA, OFFSET (7),OFFLIM,ERROR,NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS I COMMON/IOFF/INSS(7,7),NSSL(7,7) I COMMON/MATDIEL/YS(200),YSlS2(7,200),NOFFS(7) IF (N SLOT.LE.4) THEN I MIN=1 ELSE I MIN=NSLOT-3 END IF IF (NSLOT.GT.(NSLOTS-4)) THEN I MAX=NSLOTS ELSE I MAX=N SLOT+3 END IF - Evaluation of the Elements for the Mutual Interactions WRITE (6,70) 70 FORMAT(///1OX,'Number of elements to be evaluated for', *' the mutual interactions'/) DO 28 I=I MIN,I MAX J MIN=I+1 J MAX=I MAX DO 29 J=J MIN,J MAX WORK(I,J)=ABS(YOFF(I)-YOFF(J)) NSSL(I, J) =NXOFF (J) + (NSL (J) -1) /2-(NXOFF(I)* (NSL(I)+1)/2) WRITE (6,50) I,J,NSSL(I,J),WORK(I,J) 50 FORMAT(10X,'I=',I4,2X,'J=',I4,2X,'NSSL=',I4, * E14.7) 29 CONTINUE 28 CONTINUE ---- Evaluation of the offsets for the dielectric ---- IJ=1 OFFSET(1)=DABS(YOFF(I MAX)-YOFF(IMIN)) NOFFS(1)=NSSL(I MIN,I MAX) DO 31 I=I MIN,I MAX J MIN=I+1 J MAX=I MAX DO 32 J=JMIN,J MAX TEST=WORK(I, J) IMIN=I JMIN=J DO 33 L=I MIN,I MAX K MIN=L+1 K MAX=I MAX DO 34 K=K MIN,K MAX IF (TEST.GT.WORK(L,K)) THEN TEST=WORK(L,K) IMIN=L JMIN=K END IF 34 CONTINUE 33 CONTINUE.Page 2

Print file "mutualslot. ftn " Page 3 DO 35 N=1,IJ IF (TEST.EQ.OFFSET(N)) THEN INSS(IMIN,JMIN)=N IF (NOFFS (N). LT.NSSL(IMIN,JMIN)) NOFFS (N) =NSSL(IMIN, JMIN) END IF GO TO 36 THEN C END IF 35 CONTINUE IJ=IJ+1 OFFSET(IJ)=TEST INSS (IMIN, JMIN) =IJ NOFFS(IJ)=NSSL(IMIN,JMIN) 36 WORK(IMIN,JMIN)=100 32 CONTINUE 31 CONTINUE WRITE (6,80) 80 FORMAT(///10X,'Offsets for the dielectric layer and number', *' of corresponding elements'/) DO 51 I=I MIN,I MAX WRITE (6,52) I,OFFSET(I),NOFFS(I) 52 FORMAT(1OX,'I=',I4,2X,'OFFSET=',E14.7,2X,'NOFFS=',14) 51 CONTINUE WRITE (6,90) 90 FORMAT (///10X,'SLOTS and corresponding offsets in the dielectric' * /) DO 53 I=I MIN,I MAX J MIN=I+l J MAX=I MAX DO 54 J=J MIN,J MAX IJ=INSS (I, J) WRITE(6,55) I,J, INSS(I,J),OFFSET(IJ) 55 FORMAT(10X,'I=', I4,2X, 'J=',I4,2X,'INSS=', 4, * 2X,'OFFSET=',E14.7/) 54 CONTINUE 53 CONTINUE ---- Evaluation of the Max Number of Offsets for the Diel. NOFF=IJ WRITE (6,56) NOFF 56 FORMAT(///10X,'Max number of offsets in the dielectric'/ *10X,' NOFF=',I4//) RETURN END

*** WARNING *** 1 line was too long and was truncated. *** WARNING ***

a p oll o d om ai n CAEN/Apollo 4 ## 4 #44 ## ## #44 #4 44444 #4 # # ## 44444 4 # # # ## #44 ## 444 #4 4 #4 # # # # # # # #4 # # #4 K K K K K K KKK K K K K K K A A A A A A A AAAAAAA A A A A TTTTTTT EEEEEEE T E T E T EEEEE T E T E T EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I III ppp~p p p p p pPPPp P P 0000 1 eeeeee assas o o 1 e s o o 1 eeeee ssss o o 1 e s o o 1 e a s 0000 111111 eeeeee sass ____ m m u U mm mm u u m mm m u u m m U U m m u u m m uuuu ttttt t t t t t U U O U O U U U U U Uu~u aa 1 a a 1 a a 1 aaaaaa 1 a a 1 a a 111111 if f ff f fi iffff.. f.. f.. f I: Ii I: n n nfl n n n n n 00n n nfl O n //tera/users/katehl/tape/poles-mutual.ftn LAST MODIFIED ON: 88/10/25 2:59 PM FILE PRINTED: 89/01125 1:35 PM 44444444 f #44444444444444 f #44444444444444 #444444444444444 #444444444444444

Print file "poles mutual. ftn" P Page 1 C The name of this file is........... POLES MUTUAL.FTN................ SUBROUTINE SPOLES IMPLICIT REAL*8 (A-H,O-Z) C C ER:.... Dielectric constant C C H:....Height of the dielectric substrate C C NE:....Number of TE surface waves C C NM:.... Number of tm surface waves C C XS:... Matrix of poles contributing to TE surface waves C C XR:.... Matrix of poles contributing to TM surface waves C C ERR:.... Error in the computation of the poles C C....................................................................... DIMENSION XS(40),XR(40),LOR(40) C COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO0GENER, *AK_GENER,AKK_GENER,FA, OFFSET(7),OFFLIM,ERROR,NOFF COMMC)N/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS COMMON/DATT/COAL(20),POINT(20),CN(51),BM(51),TMP(20),TEP(20), *AM(41),DM(41),TPO(40),VXXM(20),VZXM(20),VZXE(20),BPOINT(10), *BCOAIL(10),MPOINT,NPOINT,NKO,MA,NM,NE,NKOK,IFIRST AER=DSQRT(EER) ER2=ER*ER PI2=PI*PI MAXE=5 ERR=0.0000001DO DP=H/AER - ------- --------------------------------------- PART I: TE MODES --------—. --- —-------------—. --- —--------------- AKO=2.D0*PI AK=DSQRT (ER) *AK0 X0=DP*DSQRT(AK**2-AK0**2) -- --- - - - - -- - - - - - - - - -------------------- 3 WRITE (6,300) AK0,AK,X0,PI 300 FORMAT(10X,'AKO=',E14.7,2X,'AK=',E14.7,2X,'X0=',E14.7, ~ *2X,'PI=',E14.7/) - - - -- -- - - - - - - - - - - - --- --- --------------- AN=X0/PI+0.5D0 NE=AN IF (NE.EQ.0) GO TO 310 DO 2 I=1,NE IF (X0-(2.D0*FLOAT(I)+1.D0)*PI/2.D0) 3,3,4 4 XS0= (2.DO*FLOAT (I) -1.D0) *PI/2.D0+ERR XS1= (2.DO*FLOAT (I) +1.DO) *PI/2.DO-ERR GO TO 5 3 XS0=(2.DO*FLOAT(I) -1.DO)*PI/2.DO+ERR XS1=X0 5 CONTINUE IF (DABS(XS0-XS1)-ERR) 22,7,7 7 XSA= (XSO+XS1) /2.DO Y=-DTAN (XSA) *DSQRT (X0**2-XSA**2) -XSA IF (Y) 8,9,10 9 XS(I)=XSA

Print file "polesmutual. ftn" GO TO 222 8 XS1=XSA GO TO 5 10 XSO=XSA GO TO 5 22 XS(I)=(XSO+XS1)/2.DO 222 XS(I)=DSQRT(AK**2-XS(I)**2/DP**2) 2 CONTINUE --—. --- —----------------------------------------------------- WRITE (6,301) ER,H 301 FORMAT(//10X,' Dielectric Constant=',D16.9/1OX,'Substrate ' *,'Thickness',D16.9///) ---- --- --- --- ---- --- --- --- --------------------- 310 IF (NE.EQ.0) WRITE (6,304) 304 FORMAT(/////10X,'No TE waves excited in the substrate'//) IF (NE.EQ.0) GO TO 312 IF (NE.GT.0) WRITE (6,305) NE 305 FORMAT(///10X,'There are',I4, *' TE waves excited in the substrate'//) DO 302 I=1,NE TEP(I)=XS(I)/AER IF (I.GT.1) THEN I MAX=I-1 DO 502 I I=1,I MAX TEP MIN=TEP(II) IF (TEP(I).LT.TEP(I I)) THEN TEP(II)=TEP(I) TEP(I)=TEP MIN END IF 502 CONTINUE END IF DO 503 I=1,NE WRITE (6,303) I,TEP(I) 303 FORMAT (10X,I4,2X,D16.9) 503 CONTINUE 302 CONTINUE 312 CONTINUE END OF PART I 3 - ------------------------- --------------- PART II: TM MODES ----—. --- —------------------------------------ AN=XO/PI+1.DO NM=AN DO 13 I=1,NM IF (XO-(2.D0*FLOAT(I)+1.D0)*PI/2.D0) 14,14,15 15 XS1=FLOAT(I)*PI-PI/3.D0-0.01D0 GO TO 16 14 XS1=X0 16 XSO=FLOAT(I-1)*PI+ERR 17 CONTINUE IF (DABS(XSO-XS1)-ERR) 113,19,19 19 XRA=(XSO+XS1)/2.DO ---—. --- —------------------------------------ WRITE (6,301) XRA 301 FORMAT(1OX,'XRA=',E14.7/) ---—. --- —------------------------------------ Y=DSQRT (ER) **2* (1.DO/DTAN(XRA)) *DSQRT (X0**2-XRA**2)-XRA IF (Y) 20,21,24 21 XR(I)=XRA GO TO 333 20 XS1=XRA GO TO 17 24 XSO=XRA GO TO 17 Page 2

Print file "polesmutual. ftn" 113 XR(I)=(XSO+XS1)/2.D0 333 XR(I)=DSQRT(AK**2-XR(I)**2/DP**2) 13 CONTINUE WRITE (6,307) NM 307 FORMAT(///10X,'There are',14,' TM waves excited in the substrate'/ */) DO 308 I=1,NM TMP (I)=XR(I)/AER IF (I.GT.1) THEN I MAX=I-1 DO 508 I I=1,I MAX TMP MIN=TMP(I I) IF (TMP(I).LT.TMP(I I)) THEN TMP(I I)=TMP(I) TMP(I)=TMP MIN END IF Page 3 508 306 509 308 322 CONTINUE END IF DO 509 I=1,NM WRITE (6,306) I,TMP(I) FORMAT (10X,I4,2X,D16.9) CONTINUE CONTINUE CONTINUE NK=NE+NM IF (NE.EQ.0) GO TO 350 DO 411 IQW=1,NE TPO (IQW)=TEP (IQW) LOR(IQW)=1 411 CONTINUE 350 CONTINUE DO 412 IQW=1,NM TPO (NE+IQW)=TMP (IQW) LOR(NE+IQW)=0 412 CONTINUE IF (NK.EQ.1) GO TO 416 NNK=NK-1 DO 415 IIP=1,NNK IK=IIP+1 DO 413 IIF=IK,NK QWR=TPO(IIP) IIW=LOR(IIP) IF (TPO(IIP).LT.TPO(IIF)) GO TO 413 TPO(IIP)=TPO(IIF) LOR(IIP)=LOR(IIF) TPO(IIF)=QWR LOR(IIF)=IIW CONTINUE CONTINUE IF (LOR(1).EQ.0) IFIRST=0 IF (LOR(1).EQ.1) IFIRST=1 GO TO 417 413 415 416 IFIRST=2 417 CONTINUE RETURN END

*** WARNING *** 7 lines were too long and were truncated. *** WARNING ***

# # # # # #~# # # ### # # fr#####~# ## # ### # a p oll o d om ai n CAEN/Apol lo K K K KKK K K K K A K A A K A A A A K AAAAAAA K A A K A A TTTTTTT T T T T T T EEEEEEE E E EEEEE E E EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I I III y y y y y y y y I I I I I i j j j iii j ddddd d d d d d d d d ddddd I i i I I I eeeeee e eeeee e e eeeeee 1 1 1 1 1 111111 n in U u mm mm u u mininin u u in in U U m m U U m in uuuu ttttt t t t t t U U aa 1 U u a a 1 U u a a 1 U u aaaaaa 1 U u a a 1 Uuuu a a 111111 ffffff f ff ff f...... //tera/users/katehi/tape/yij-diel-inutual. ftn LAST MODIFIED ON: 88/10/25 2:59 PM FILE PRINTED: 89/01/25 1:36 PM # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # I # # # ## # ## # # # ## # # I # # # # # # # # # # # ## # #

Print file "yijdiel_mutual. ftn" Page 1 C......................YIJDIEL MUTUAL.FTN C C This program evaluates the part of the elements of the admittance C matrix coming from th dielectric substrate. C This program is good for any substrate thickness h, er and C any dimensions of the slot. C C C C C C SUBROUTINE YIJ DIEL IMPLICIT REAL*8 (A-H,O-Z) REAL*4 CONST,GSK,GS1S2K COMPLEX YS,YS1S2,CI,YSADM,YSWADM DIMENSION MOFFS(7) C COMMON/CTAIL/S1 (4,205,7),D1 (4,205,7),D2(4,205,7), *T1 (4,205,7),T2 (4,205,7) T3 (4,205,7),T4 (4,205,7) C COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EERAKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF r COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS COMMON/MUTUAL ADMAT/YS ADM(7,7,200),YSW ADM(7,7,200) COMMON/MAT-DIEL/YS(200),YS1S2(7,200),NOFFS(7) COMMON/OUT/GS(250),GS1S2(7,250) COMMCN/MAT/PLI,AI,TI,V(3), IY COMMC)N/PUT/SSJO (250,7),SAJO(250,7),YSIN,YCOS COMMON/ADON/DIST(250,7,10),RCOE(20,250,7,10),AX,SERS(5),SERA(5), *DARG (7,10,4),S (10,2),WREAL,NSER,NMAX (7) COMMON/WIDTH/W,WDELTA COMMON/DATT/COAL(20),POINT(20),CN(51),BM(51),POLTM(20), *POLTE (20),AM(41),DM(41),POLES(40),VXXM(20),VZXM(20),VZXE (20), *BPOINT (10),BCOAL(10),MPOINT,NPOINT,NKO,MANTM,NTE,NKOK,IFIRST COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, F1X, F1Z COMMON/IOFF/INSS(7,7),NSSL(7,7) COMMON/BO1/BJO, BJ1 W=WS (1) WDELTA=WSDELTA(1) WREAL=W W=W*(1. D0+2.DO*WDELTA/W) Subroutine POLES evaluates the poles of the Green's function and orders them according to their magnitude CALL SPOLES This subroutines gives data for the numerical integration CALL DATASLOT

Print file "yij diel-mutual.ftn " Page 2 CI=(0.00,1.00) DO 1 I=1,NOFF MOFFS(I)=NOFFS(I) IF (NOFFS(I).GT.200) NOFFS(I)=200 NMAX(I)=NOFFS(I)+2 1 CONTINUE ADL=AKK*DLX YSIN=DSIN(ADL) YCOS=DCOS (ADL) For the normalization of the current along the y axis CVON=W*PI/2.DO Computation of lamda-integration limits between 0 and A CALL LIMIT Evaluation of the Green's function at different points in the interval [0,A]. The Bessel function has been excluded CALL GREEN Evaluation of the tail contribution (from a to infinity) CALL TAIL CONST=-(1.DO/CVON)*DSQRT(EER)/(480.DO*(PI**3)*YSIN*YSIN) WRITE (6,10) 10 FORMAT(///10X,'Contribution to admittance from the dielectric'///) KMAX=MOFFS(1) DO 2 K=1,KMAX YS (K)=YS (K) *CONST GSK=REAL (GS (K)) *CONST WRITE (6,11) K,YS(K),GSK 11 FORMAT(IX, I4,2X, ' YS=',El4.7,2X,E14.7,2X, * 'GSK=',E14.7) YS (K) = (YS (K) +GSK) *CI WRITE (6,12) K,YS(K) 12 FORMAT(5X, I4,5X,'YS=', E14.7,2X,E14.7) 2 CONTINUE DO 3 I=1,NOFF WRITE(6,13) I 13 FORMAT(///5X,'OFFSET #',I4///) KMIN=I+1 KMAX=MOFFS(I) DO 4 K=KMIN,KMAX YS1S2 (I,K)=YS1S2(I,K)*CONST GSlS2K=REAL(GSlS2 (I,K) ) *CONST WRITE(6,14) K,YS1S2(I,K),GS1S2K 14 FORMAT(1X,I4,2X,'YSlS2=',(E14.7,2X,E14.7), * 2X,'GSlS2K=',E14.7) YSlS2(I,K)=(YSlS2(I,K)+GSlS2K)*CI WRITE (6,15) K,YS1S2(I,K) 15 FORMAT(5X,1I4,5X,'YSlS2=', (E14.7,2X,E14.7)) 4 CONTINUE 3 CONTINUE DO 5 I=1,NSLOTS DO 6 J=I,NSLOTS KMAX=NSSL(I,J) DO 7 K=1,KMAX

Print file "yi jdielmutual. ftn " IF (I.EQ.J) THEN YS ADM(I,J,K)=YS(K) ELSE IJ=INSS(I,J) IF(IJ.EQ.1) YS ADM(I,J,K)=YS(K) IF(IJ.GE.2) YS ADM(I,J,K)=YS1S2(IJ,K) END IF 7 CONTINUE 6 CONTINUE 5 CONTINUE f1000 CONTINUE RETURN END This subroutine evaluates the limits of integration in the interval [O,A]. Specifically: 1) It divides the interval [0,kO] to 10 equal subsections and then apply fixed-point Gaussian Quadrature 2) It divides the interval [kO,k] into so many subsections as the number of poles and in such a way that each subsection includes one pole only away from the ends of the subsection 3) It divides the interval [k,A] into 20 equal subsections and then apply fixed-point Gaussian Quadrature SUBROUTINE LIMIT IMPLICIT REAL*8 (A-H,O-Z) EXTERNAL WSPE,WTPE,WSPM COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK, FA, OFFSET(7), OFFLIM, ERROR, NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS 'COMMON/DATT/COAL(20) INT(,POINT(20),CN(51),BM(51),POLTM(20), *POLTE(20),AM(41),DM(41),POLES(40),VXXM(20),VZXM(20),VZXE(20), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST ------------------------------------------------— + Step 1: Evaluation of vector CN it gives the end points of the intervals considered in (0,kO) I ------ ---------------------------------- + DELTA=AKO/FLOAT(NKO) CN(1)=0O.DO DO 1 I=1,NKO CN (I+1)=DELTA*FLOAT(I) 1 CONTINUE ------------------------------------------------— + Step 2: Evaluation of vector BM: it gives the end points of the = intervals considered in (k,A) - ---- - ----------------------------------------- - - - DELTA=(A/DSQRT(EER)-AK)/FLOAT(MA) 3BM(1) =AK DO 2 I=1,MA BM (I+1) =DELTA*FLOAT (I) +AK 2 CONTINUE - -- --------- E o ------- ----- A --- —----—, Step 3: Evaluation of the vectors AM,DM I I "AM" gives the end points around I Page 3

Print file "yijdielmutual.ftn"v C the TM poles C "DM" gives the end points around C the TE poles C C IFIRST= 2 only one TM pole C 1 TEO<TM0 C 0 TM0<TE0 C --- —------------------------------------------— + AM(1)=AK0 DM(1)=AK0 NMAX=NTE+NTM-1 IF (IFIRST.EQ.2) GO TO 3 DO 4 I=1,NMAX AM(I+1)=(POLES (I+1)+POLES (I)) /2.D0 DM(I+1)=AM(I+1) 4 CONTINUE AM(NMAX+2)=AK DM(NMAX+2)=AK IF (IFIRST.EQ.1) GO TO 5 DM(NMAX+1) =AM(NMAX+2 ) DO 6 I=1,NMAX DM (NMAX-I+1 )=AM (NMAX-I+2) 6 CONTINUE GO TO 7 5 AM (NMAX+1) =DM (NMAX+2) DO 8 I=1,NMAX AM (NMAX-I+1) =DM (NMAX-I+2) 8 CONTINUE GO TO 7 3 DELTA=(AK-AKO)/FLOAT(NKOK) AM(1)=AKO DO 9 I=1,NKOK AM(1+1)=DELTA*FLOAT(NKOK)+AK0 9 CONTINUE 7 CONTINUE ------------------------------------------------ Step 4: evaluation of vectors VZXE ----------------------------------------------— + IF (IFIRST.EQ.2) GO TO 10 DO 11 I=1,NTE ARG=POLTE(I) VZXE(I)=HZXE(ARG) 11 CONTINUE 10 CONTINUE -----------------------------------------------— + Step 5: evaluation of vector VXXM,VZXM -------------------------------------------— + DO 12 I=1,NTM ARG=POLTM(I) VXXM(I) =GXXM(ARG) VZXM(I)=GZXM(ARG) 12 CONTINUE RETURN END This subroutine evaluates the values of the integrand of the Green's function at different points in the interval [0,A]. Then it evaluetes the space integrals of the Bessel function at the same points and multiply these values with the corresponding values of the Green's function. Finally, it multiplies these products with known coeffic. and it adds them up. This way, the moments'-method space integrals of the first part of the Green's function are evaluated and are stored in the complex vectors ZS,ZS1S2 Page 4

Print file Fvyijdijelmutual.ftn P Page 5 C......................................................................... SUBROUTINE GREEN IMPLICIT REAL*8 (A-HO-Z) COMPLEX YS,Y5152,CI COMMON/MATDIEL/YS(200),YS1S2(7,200), NOFFS(7) COM4ON/MAT/PLI, AI, TI, V (3),rIY COMMON/PUT/SSJO (250,7),SAJO (250,7),YSIN,YCOS COMMON/ADON/DIST (250, 7, 10) RCOE (20, 250, 7, 10),AX, SERS (5) SERA (5) *DARG (7,10,4), S (10,2),WREAL, NSER, NMAX (7),COMMON/DATSUB/ERHTDLXAWBWA,TPITPI2,PIElE2,EER,AKO,AK, *AKK, FA, OFFSET (7),OFFLIM,ERROR,NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C. OMMON! WIDTH/W, WDELTA COMMON/DATT/COAL(20),POINT(20),CN(51),BM(51),POLTM(20), *POLTE (20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), *BPOINT (10),BCOAL(10),MPOINTNPOINTNKOMANTMNTENKOK,IFIRST C-OMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FiX, FlZ COMMC)N/IOFF/INSS (7,7),NSSL(7, 7) -------------------------------------------------- Evaluation of the coefficients for the FF's functions ------------------------------------------------- F1X=1.DO F1Z=2.DO* (1.DO-ER)/ ((1.DO+ER) * (1.DO+E2) * (1.DO+0.5D0*E1)) IF ((ER-1.DO).LT.0.005) F1Z=0.DO CALL ARIS DO 1 I=1,NPOINT INCON=I IY=I AI=COAL (I) TI=POINT(I) evaluation of intervals 1 and 2 IAD=1 DO 2 N=1,NKO AUP=CN (N+1) ALOW=CN (N) CALL FUNCT(IADAUPALOWN, INCON) 2 CONTINUE evaluation of intervals 3 and 4 NTTM=NTM IF (IFIRST.EQ.2) NTTM=NKOK DO 3 IAD=3,4 IFD=0 DO 4 N=1,NTTM IFD=IFD+1 AUP=AM (IFD+1) ALOW=AM(IFD) CALL FUNCT(IADAUPALOWNINCON)

Print file "yijdielmutual. ftn" IFD=IFD+1 4 CONTINUE 3 CONTINUE IF (IFIRST.EQ.2) GO TO 9 C C evaluation of the intervals 5 and 6,9,11 C DO 5 IAD=5,6 IFD=0 DO 6 N=1,NTE IFD=IFD+1 AUP=DM (IFD+1) ALOW=DM(IFD) CALL FUNCT(IAD,AUP,ALOW,N,INCON) IFD=IFD+1 6 CONTINUE 5 CONTINUE 9 CONTINUE C evaluation of the interval 7 IAD=7 DO 7 N=1,MA AUP=BM(N+1) ALOW=BM(N) CALL FUNCT(IAD,AUP,ALOW, N,INCON) 7 CONTINUE 1 CONTINUE evaluation of the intervals 8,10 IAD=8 IFD=C) DO 8 N=1,NTM IFD=IFD+1 AUP=AM(IFD+1) ALOW=AM(IFD) CALL FUNCT(IAD,AUP,ALOW,N,INCON) IFD=IFD+1 8 CONTINUE RETURN END Functions GXXM,GZXM,HZXE These functions evaluate the residues from the different poles ]FUNCTION GXXM(X) IMPLICIT REAL*8 (A-H,O-Z) COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7), OFFLIM, ERROR, NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS X2=X*X AK02=AK 0 AK0* AK2=AK*AK IM=DSQRT (AK2-X2) RMO=DSQRT (X2-AK02) RMH=RM*H RMOH=RM * H IMT=RM* (-H+T) SXN=RM*DCOS (RMT) -ER*RM0*DSIN (RMT) SXD= (ER+RMOH) * (RM/RMO) *DCOS (RMH) + (1.D0+ER*RMOH)*DSIN(RMH) GXXM=SXN/SXD Page 6

Print file "yij dielmutual.ftn" Page 7 RETURN END C C................................................................... C FUNCTION GZXM(X) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C X2=X*X AK02=AKO*AKO AK2=AK*AK RM=DSQRT(AK2-X2) RMO=DSQRT (X2-AK02) RMH=RM*H RMOH=RMO*H RMT=RM*T CST=DCOS(RMT) CSH=DCOS(RMH) SNH=DSIN(RMH) SXN=RM*CST SXD=(RM*CSH+RMO*SNH)* ((ER+RMOH)*CSH/RMO+ (1.DO+ER*RMOH)*SNH/RM) GZXM=SXN/SXD RETURN END FUNCTION HZXE(X) IMPLICIT REAL*8 (A-H,O-Z) COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS X2=X*X AK02=AKO*AKO AK2=AK*AK RM=DSQRT (AK2-X2) RMO=DSQRT (X2-AK02) RMH=RM* H RMT=RM* T RMOH=RMO*H CSH=DCOS(RMH) CST=DCOS(RMT) SNH=DSIN(RMH) SXN=PRM*CST SXD=(ER*RM0*CSH-RM*SNH) *(1.DO+RMOH)* (SNH/RMO-CSH/RM) HZXE=SXN/SXD RETURN END.................................... 1) This subroutine evaluates the integrand of the Green's function at different points (subroutine Grei). 2) It evaluates the space integrals comming from the application of moments' method (subroutine adonis) 3) Multiply these two valueswith appropriate weighting coefficients and it adds them up....SUBROUTINE FUNCT(IADA....U.........P..........A. S'UBROUTINE FUNCT(IAD,AUP,ALOW, N, INCON)

Print file "1yij diel-mutual.ftn" IMPLICIT REAL*8 (A-H,O-Z) REAL*4 31,S2 COMPLEX YSYS1S2,CI C COMMON/MATDIEL/YS(200),YSlS2(7,200),NOFFS(7) C COMMON/MAT/PLI,.AI,TIfV (3), IY C COMMON/PUT/SSJO (250,7), SAJO (250,7),YSIN,YCOS C COMMON/ADON/DIST(250,7,10),RCOE(20,250,7,10),AX,SERS(5), *SEPRA (5), DARG (7,f 1 0, 4), S (1 0, 2), WREAL, NSER, NMAX (7) C COMMON/DATSUB/ERHTDLXAW,,BWA,,TPITPI2,PIElE2,EERAKOAK, *AKK, FA, OFFSET (7),OFFLIM, ERROR, NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/WIDTH/W, WDELTA C COMMON/DATT/COAL (20),POINT (20),CN(51),BM(51),POLTM(20), *POLTE (20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), *BPOINIT(10),BCOAL(10),MPOINTNPOINTNKOMANTM,NTENKOKIFIRST C COMMON/COEF/RX, XX, RZ,. XZ,. FRX, FRZ, FiX, F1Z c COMMON/IOFF/INSS (7,7),NSSL(7,7) CI= (0.0,1.0) NCON=0 X=AUP -ALOW Y=AUP+ALOW.AKO02=AKO *AKO.AK2 =AK*AK.AKK2 =AKK*AKK ER1=1.DO-ER IF (IAD.GT.2) GO TO 1 ALI=0. 5D0* (TI*X+Y) GCONX=AI*X*0. 5D0 FCONX=GCONX GCONZ=GCONX* ERi IF' (DABS (ER1).LT. 0. 005) GCONZ=0. DO FCONZ=FCONX AIMA=1.DO CALL GREI (ALI,0.DO,0.DOIAD,0.DO) GO TO 10 1 IF (I-AD.NE.3) GO TO 2 ALI=0. 5D0* (TI*X+Y) XTIM=POLTM (N) TMTM= (2.D0*XTM-Y) /X GC'ONX=AI/ (TI-TMTM) GCONZ=GCONX* ER1 FCONX=AI*X*0. 5D0 FCONZ=FCONX AIMA=0.DO IF' (DABS(ER1).LT.0.005) THEN GCONX=0.DO GCONZ=. DO FCONX=. DO FCONZ=. DO END IF CALL GREI(ALI,XTM,0.DOIAD,0.DO) GO TO 10 2 IF (IAD.NE.4) GO TO 3 ALI=POLTM (N) TM= (2. DO *ALI -Y) /X Page 8

Print file "yij dielmutual. ftn" GCONX=-AI/ (TI-TM) GCONZ=GCONX* ER1 FCONX=O DO FCONZ=O DO AIMA=O DO RX=VXXM (N) RZ=VZXM (N) IF (DABS (ER1). LT. 0. 005) THEN GCONX=O DO GCONZ=O DO FCONX=O.DO FCONZ=O.DO END IF GO TO 10 3 IF (IFIRST.EQ.2) GO TO 5 IF (IAD.NE.5) GO TO 4 ALI=O.5D0*(TI*X+Y) XTE=POLTE(N) TMTE= (2.DO*XTE-Y) /X GCONX=AI*X*O. 5DO GCONZ=AI*ER1/ (TI-TMTE) FCONX=GCONX FCONZ=FCONX AIMA=O DO CALL GREI(ALIO.DO,XTE,IAD,TMTE) IF (DABS (ER1). LT. 0. 005) THEN GCONX=O.DO GCONZ=O DO FCONX=O DO FCONZ=O DO END IF GO TO 10 4 IF (IAD.NE.6) GO TO 5 NCON=6 ALI=POLTE(N) TM= (2.DO*ALI-Y) /X GCONX=O DO GCONZ=-AI*ER1/ (TI-TM) FCONX=O DO FCONZ=O DO AIMA=O DO RZ=VZXE (N) IF (DABS(ER1).LT.O.005) THEN GCONX=O DO GCONZ=O DO FCONX=O DO FCONZ=O.DO END IF GO TO 10 5 IF (IAD.NE.7) GO TO 6 ALI=O.5DO*(TI*X+Y) GCONX=AI*X*O 5D0 GCONZ=GCONX* ERi IF (DABS(ER1).LT.O.005) GCONZ=O.DO FCONX=GCONX FCONZ=FCONX AIMA=O.DO CALL GREI(ALl,0.DO, 0.DOAD, f0.DO) GO TO 10 6 NCON=8 ALI=POLTM (N) TM= (2.DO*ALI-Y) /X FCONX=O DO FCONZ=O DO AIMA=O DO RX=VXXM (N) Page 9

Print file "yij-diel-mutual. ftn" RZ=VZXM (N) GO TO 28 C 10 CONTINUE GXXR=GCONX*RX-FCONX*FRX GXXX=AIMA*GCONX*XX GZXR=GCONZ*RZ-FCONZ*FRZ GZXX=AIMA*GCONZ*XZ 27 CONTINUE VARX= (AK2-AKK2) *GXXR+AKK2*GZXR VARZ=AKK* (GXXR-GZXR) GXXR=VARX GZXR=VARZ VARX= (AK2-AKK2) *GXXX+AKK2*GZXX VARZ=AKK*(GXXX-GZXX) GXXX=VARX GZXX=VARZ PLI=ALI C CALL ADONIS KMAX=NOFFS (1) DO 13 K=1,KMAX S1=REAL(GXXR*SSJO(K,1)+GZXR*SAJO(K, 1)) S2=REAL(GXXX*SSJO(K,1)+GZXX*SAJO(K, 1)) YS(K)=YS(K)+S1-CI*S2 13 CONTINUE DO 14 I=2,NOFF KMAX=NOFFS(I) DO 15 K=1,KMAX S1=REAL (GXXR*SSJO (K, I) +GZXR*SAJO (K, I)) S2=REAL (GXXX*SSJO (K, I) +GZXX*SAJO (K, I)) YSlS2(I,K)=YSlS2(I,K)+S1-CI*S2 15 CONTINUE 14 CONTINUE 28 IF (NCON.EQ.0) GO TO 24 IF (INCON.LT.NPOINT) GO TO 24 GCONX1=0.0 GCONX2=0.0 GCONZ1=ER1*DLOG((l.DO-TM)/(l.DO+TM)) GCONZ2=ER1*PI IF (NCON.EQ.6) GO TO 29 GCONX1=GCONZ1/ER1 GCONX2=GCONZ2/ER1 29 CONTINUE GXXR=GCONX1*RX GXXX=GCONX2 *RX GZXR=GCONZ1*RZ GZXX=GCONZ2*RZ FXXR=0.DO FZXR=O.DO IF (DABS(ER1).LT.0.005) THEN GXXR=O.DO GXXX=O.DO GZXR=O.DO GZXX=O.DO END IF 25 CONTINUE NCON=0 GO TO 27 24 CONTINUE RETURN END............. *...o..... *..............o........................... This subroutine evaluates the integrand of the green's function at different points Page 10

Print file "1yij diel mutual. ftnI"Pge1 Page I 1 SUBROUTINE GREI (XXFM,XFE,IAD,TM) IMPLICIT REAL*8 (A-HO-Z) COMMON/DAT_-SUB/ERHTDLXAWBWATPITPI2,PIElE2,EER,AK0,AK, *.AKK,.FAr OFFSET (7) r OFFLIMrERRORrNOFF C.1-OMMON/SLOTS/YOFF(30)rNXOFF(30)rWS(30)rWSDELTA(30)fNSL(30),NSLOTS COl-MMON! WIDTH/W, WDELTA C''-OMMON/COEF/RX, XXRZ, XZFRX, FRZ, FiX, FlZ,X2=X*X,AK2 =AK*AK,AK02=AK0O*AKO RPM=DSQRT (DABS (AK2 -X2)) RM0=DSQRT (DABS (X2-AKO2)).RMH=RM* H RPMT=RM* T.IRMHT=RM* (-H+T) C"SH=DCOS (RMH) SNH=DSIN (RMH) C'-ST=DCOS (RMT) SNT=DSIN (RMT) C-SHT=DCOS (RMHT),SNHT=DSIN (RMHT) RPM2 =RM*RM RMO2=RM0*PRM0 CSH2=CSH*CSH ERMO=ER*RMOQ ERM02=ERM0O*ERMO4 EXX=DEXP (-X*T/FA) /FA EXZ=DEXP (-X*(2.DO*H) /FA) /FA IF (IAD.NE.7) GO TO 100 EX=DEXP (RMH) TANH= (EX-1l.DO/EX) /(EX+1.DO/EX) CSHH=(EX+1.DO/EX) /2.DO EX=DEXP (RMT) CSHT=0.5D0* (EX+1.DO/EX) SNHT=0.5D0* (EX-l.D0/EX) TANT=SNHT/CSHT EX=DEXP (RMHT) CSHHT=0.5D0'*(EX+1.DO/EX) SNHHT=0.5D0* (EX-l.DO/EX) TANHT=SNHHT/CSHHT 100 'IF (IAD.NE.1) GO TO 1 DEN=RM2+ (ERM02-RM2) *CSH2 PNOM=-~RM2*SNT+ (RM2-ERM02) *CSH*SNHT XNOM=ER*RM*RMO *CST Cl=X/RM R-X=C1l*RNOM/DEN IF ( (ER-1. DO).LT. 0. 005) RX=0. DO XX=C1l*XNOM/DEN FRX=FlX*EXX DEN=DEN* (RMO2+AK02* (ER-l.D0) *CSH2) RNOM=-CST* (RM2+ER*RM02) *CSH*SNH XNOM=CST*RM*RMO* (-1.DO+ (1.DO+ER) *CSH2) Cl=X*RM RZ=-C1l*RNOM/DEN XZ~=C1*XNOM/DEN

Print file Uvyijdielmutual.ftn" FRZ=F1 Z*EXZ RETURN IF (IAD.NE.3) GO TO 2 C1=X-XFM IF (DABS(AK-X).LT.1.D-6) GO TO 10 DEN=ERMO *CSH RM * SNH RNOM= (RM*CSHT-ERMO*SNHT) C2=X /RM RX=C1 *C2 *RNOM/DEN C DEN=DEN* (RM*CSH+RMO*SNH) RNOM=CST C3=X*RM RZ=C1 *C3*RNOM/DEN C FRX=F1X*EXX FRZ=F1Z*EXZ RETURN C 10 RNOM=1.DO-ERM0* (-H+T) RX=C1 *X*RNOM/ERMO FRX=F1X*EXX RZ=X*C1/ (ERMO* (1.DO+RMO*H)) FRZ=F1lZ*EXZ RETURN 2 IF (IAD.NE.5) GO TO 4 C1=X-XFE IF (DABS(AK-X).LT.1.D-6) GO TO 13 RNOM=RM*CSHT-ERM0 * SNHT DEN=ERMO *CSH-RMP* SNH RX= (X/RM) *RNOM/DEN FRX=F1X*EXX RNOM=RM*CST DEN=DEN* (RM*CSH+RMO*SNH) RZ=X*C1 *RNOM/DEN FRZ=F1Z*EXZ RETURN 13 RX=X* (1.DO-ERMO* (-H+T)) /ERMO FRX=F1X*EXX RZ=X*C1/ (ERMO* (1.DO+RMO*H)) FRZ=F1 Z*EXZ RETURN 4 IF (IAD.NE.7) GO TO 6 IF (DABS(X-AK).LT.1.D-6) GO TO 15 DEN=ERMO+RM* TANH RNOM= (RM+ERMO*TANH) *CSHT-DEN*SNHT RX= (X/RM) *RNOM/DEN FRX=F1X*EXX RNOM=X* (RM*CSHT) / (CSHH*CSHH) DEN=DEN* (RM+RMO*TANH) RZ=RNOM/DEN FRZ=F1 Z*EXZ RETURN 15 RQX=X* (1.D0-ERM0* (-H+T)) /ERMO F-7RX=F1X*EXX R:Z= (X/ERMO) / (1. DO+RMO*H) IFRZ=FlZ*EXZ 6 C-ONTINUE RETURN END.............~~..............~~~...~................. I ARI S Page 12

'rint file "yij diel-mutual. ftn"P;Page 13 SUBROUTINE ARIS IMPLICIT REAL*8 (A-H,O-Z) C_ OMMON/DAT SUB/ERHTDLXAWBWATPITPI2,PIE1,E2,EER,AKO,AK, *AKK, FA, OFFSET (7), OFFLIM, ERROR, NOFF C=OMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS COMMON! WIDTH/W, WDELTA C=OMMON/DATT/COAL (20),POINT (20),CN(51),BM(51),POLTM(20), *]POLTE(2O),AM(41), DM(41),POLES (40),VXXM(2O),VZXM(20),VZXE(20), *BPOINT(10),BCOAL(10),MPOINTNPOINTNKOMANTMNTENKOKIFIRST C=OMMON/ADON/DIST(25F,7,10),RCOE(20,25f,7, 1),AX,SERS(5), *SERA(5),DARG (7,10,4) S(10,2),WREAL, NSER, NMAX(7) COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FiX, Fl Z ---------------------------------------------- Formation of the matrices: DIST, DARG,RCOE + --- —----------------------------------------- W2=W/2.DO U=WREAL/W TrHMIN=DATAN (DSQRT (1. DO/(U*U)-1. DO)) pHMAX I -THMIN AX= (THMAX-THMIN) /2.DO BX= (THMAX+THMIN) /2.DO X(=PI/4.DO DO 1 J=1,NOFF MAX=NMAX (J) LPOINT=MPOINT IF (OFFSET(J).LE.OFFLIM) LPOINT=NPOINT DO 2 I=1,LPOINT POIN=BPOINT(I) IF (OFFSET(J).LE.OFFLIM) POIN=POINT(I) FI=X*(POIN+1.DO) THETA=AX* POIN+BX AS=DSIN (FI) AC=DCOS (FI) DARG (J, I 1) =W2 *AC DARG(J, I,2) =AC DARG (J, I,3) =AS DARG(J, I,4) =X DO 3 N=1,MAX AXN=FLOAT (N-2) *DLX IF (OFFSET(J).GT.OFFLIM) GO TO 4 DIST (N, J, I)=AXN*AS GO TO 5 4 AXN2=AXN*AXN BXN=OFFSET (J) -W*DCOS (THETA)/2.DO BXN2=BXN* BXN DIST(N, J, I)=DSQRT (AXN2+BXN2) SIG=DIST(N,J,I) SIG2=SIG*SIG SIG3=SIG2*SIG DSIG=DABS (AXN) /SIG DSIG2=BXN2/SIG3 DSIG3=-3.DO*DSIG*DSIG2/SIG DSIG4=-3.DO*DSIG2*(DSIG2-4.DO*DSIG**2/SIG)/SIG DSIG5=-3.DO* (15.DO*DSIG2**2*DSIG+(20.DO/SIG)* DSIG2*DSIG**3)/SIG2 DSIG6=-3.DO*(-15.DO*DSIG2**3+(180.DO/SIG)*DSIG2

'rint;File "yij diel mutual. ftn * **2*DSIG**2 - (120.DO/SI1G2)*DSIG2*DSIG**4)/ SIG2 DSIG7=-3.D0* (525.DO*DSIG2**3*DSIG (2100.DO/SIG)* DSIG2**2*DSIG**3+(840.DO/SIG2)*DSIG2*DSIG **5)/SIG3 DSIG8=-3.D0*(525.D0*DSIG2**4-(12600.DO/SIG)*DSIG2 **3*DSIG**2+(25200.DO/SIG2)*DSIG2**2*DSIG**4 -(6720.DO/SIG3) *DSIG2*DSIG**6)/SG3 Evaluation of the coefficients Gij G21=DSIG2 G22=DSIG**2 ------------------ G41=DSIG4 G42=4.DO*DSIG3*DSIG+3.DO*DSIG2**2 G43=6.DO*DSIG2*DSIG**2 G4 4=DS IG* * 4 ------------------ G6 1=DS 1G6 G62=6.DO*DSIG5*DSIG+15.DO*DSIG4*DSIG2+10.DO*DSIG3**2 G63=15.DO*DSIG4*DSIG**2+60.DO*DSIG3*DSIG2*DSIG+15.DO * *DSIG2**3 G64=20.DO*DSIG3*DSIG**3+45.DO*DSIG2**2*DSIG**2 G65=15.DO*DSIG2*DSIG**4 G66=DSIG**6 ----------------- G81=DSIG8 G82=8.DO*DSIG7*DSIG+28.DO*DSIG6*DSIG2+56. DODSIG5 *DSIG3+35.DO*DSIG4**2 G83=28.DO*DSIG6*DSIG**2+168.DO*DSIG5*DSIG2*DSIG+ 280.DO*DSIG4*DSIG3*DSIG+210.DO*DSIG4*DSIG2**2+ 280.DO*DSIG3**2*DSIG2 G84=56.DO*DSIG5*DSIG**3+420.DO*DSIG4*DSIG2*DSIG**2 +280.DO*DSIG3**2*DSIG**2+840.DO*DSIG3*DSIG2**2 * *DSIG+105.DO*DSIG2**4 G85=70.DO*DSIG4*DSIG**4+560.DO*DSIG3*DSIG2*DSIG**3 +420.DO*DSIG2**3*DSIG**2 G86=56.D0*DSIG3*DSIG**5+210.DO*DSIG2**2*DSIG**4 G87=28.DO*DSIG2*DSIG**6 G88=DSIG**8 RCOE (2,N, J, I) =-O. 5D0* (G22+SIG*G21) RCOE (1, N, JrI) =0. 5D0* (G22-SIG*G21) SX=0.5DO*SIG*(G42-SIG*G41) S30=-0.5D0*SIG*(G42+SIG*G41) S31=0.25D0* (SX+3.DO*G43) S33=0.25D0*(SX-G43) RCOE(3,NJI)=0.5D0*(SIG*S33/3.DO+G44/4.DO) RCOE(4,N,J,I)=0.5D0*(SIG*S31+SIG*S33/3.DO G44) RCOE(5,N,J,I)=0.5D0*(SIG*S31+3.DO*G44/4.DO) RCOE (6, N, J, I) =SIG*S30 SX=SIG*S33/3.DO+G64/4.DO ST=SIG*S31+SIG*S33/3.DO-G64 S5M3=SIG2*S30 S5M1=0.5D0*SIG*(SIG*S31+3.DO*G64/4.DO) S51=0.25D0*(0.5DO*SIG*ST-5.D0*G65/2.D0) S53=0.25D0*(0.5D0*SIG*ST+0.25D0*SIG*SX+0.5D0*G65/ 4.DO) S55=0.125DO*(0.5D0*SIG*SX-0.5*G65) RCOE(7,N,J,I)=0.5D0*(SIG*S55/5.DO+G66/16.DO) RCOE(8,N,J,I)=0.5D0*(SIG*S53/3.DO+SIG*S55/5.DO6.DO*G66/16.DO) RCOE(9,N,J,I)=0.5D0*(SIG*S51+SIG*S53/3.DO+15.DO* Page 14

'rint file "yij diel-mutual. ftn" G66/16.DO) RCOE(lO,N,J,I)=O.5DO*(SIG*S51-10.DO*G66/16.DO) RCOE (11,N,J, I) =SIG*S5M1 RCOE (12,N,J, I) =SIG*S5M3 S7M5=SIG2*S5M3 S7M3=SIG2*S5M1 S7Ml=O.5D0*SIG*(SIG*S51-10.DO*G86/16.DO) S71=0.5D0*(0.25D0*SIG*(SIG*S51+SIG*S53/3.DO+ 15.DO*G86/16.DO) +35.DO*G87/32.DO) S73=0.5D0*(0.25D0*SIG*(SIG*S51+SIG*S53/3.DO+15.DO *G86/16.D0)+0.125D0*SIG*(SIG*S53/3.DO+SIG* S55/5.DO-6.DO*G86/16.DO)-21.DO*G87/32.DO) S75=0.5DO*(0.125DO*SIG*(SIG*S53/3.DO+SIG*S55/5.DO6.DO*G86/16.DO)+(SIG/12.DO)* (SIG*S55/5.DO+ G86/16.DO) +7.DO*G87/32.DO) S77=0.5D0* ((SIG/12.DO)* (SIG*S55/5.DO+G86/16.DO)G87/32.DO) RCOE(13,N,JI)=0.5D0*(SIG*S77/7.DO+G88/64.DO) RCOE(14,N,J,I)=0.5D0*(SIG*S75/5.DO+S77*SIG/7.DO -8.DO*G88/64.DO) RCOE(15,N,J,I)=0.5D0*(SIG*S73/3.DO+SIG*S75/5.DO +28.DO*G88/64.DO) RCOE(16,N,J,I)=0.5DO*(SIG*S71+SIG*S73/3.DO-56.DO *G88/64.DO) RCOE(17,NJ,I)=0.5D0*(SIG*S71+35.DO*G88/64.DO) RCOE (18,N,J, I)=SIG*S7M1 RCOE (19,N,J, I) =SIG*S7M3 RCOE (20,N, J, I) =SIG*S7M5 5 CONTINUE 3 CONTINUE 2 CONTINUE CONTINUE Formation of the series s(dlx) Storage in vectors SERS(5),SERA(5) Ul=2.DO*THMIN/FLOAT (NSER) DO 6 JN=1,NSER S2= (2.DO*FLOAT (JN) -1.DO) S2=S2/ (2.DO*FLOAT (NSER)) S3=DCOS (S2*THMIN) S (JN, 2)=S3*W/2.DO S (JN, 1)=U1 6 CONTINUE ADL=AKK*DLX ADL2=ADL*ADL ADL3=ADL2 *ADL ADL4=:ADL3 *ADL ADL5=ADL4 *ADL ADL6=ADL5 *ADL YSIN=DSIN (ADL) YCOS=DCOS (ADL) SER1=: (1. D0-YCOS) *2.D0/AKK SER2=-YSIN/3.DO+ADL*YCOS/4.DO+ADL2*YSIN/1O.DO-ADL3*YCOS/36.DO -ADL4*YSIN/168.DO+ADL5*YCOS/960.DO+ADL6*YSIN/6480.DO SER3=YSIN/60.DO-ADL*5.DO*YCOS/360.DO-ADL2*YSIN/168.DO+ADL3 *YCOS/560.DO+ADL4*YSIN/2592.DO-ADL5*YCOS/12960.DO-ADL6 *YSIN/95040.DO SER4=-YSIN/2520.DO+ADL*YCOS/2880.DO+ADL2*YSIN/6480.DO-ADL3 *YCOS/21600.DO-ADL4*YSIN/95040.DO+ADL5*YCOS/518400.DO Page 15

Print file "yij dielmutual. ftn" SER5=YSIN/181440.DO-ADL*YCOS/201600.DO-ADL2*YSIN/443520.DO+ ADL3*YCOS/1442775. 9D0 C SERS(1)=SER1*SER1 SERS(2)=DLX*2.DO*SER1*SER2 SERS(3)=DLX*(DLX*SER2*SER2+2.DO*SER1*SER3) SERS(4)=DLX*(2.DO*SER1*SER4+2.DO*DLX*SER2*SER3) SERS(5)=DLX*(DLX*SER3*SER3+2.DO*DLX*SER2*SER4) C SERA (1) =SER1 SERA (2) =DLX*SER2 SERA (3)=DLX*SER3 SERA (4) =DLX*SER4 SERA (5) =DLX*SER5 111 CONTINUE RETURN END C..................................................................... C ADONIS o This subroutine evaluates the space integaris of the bessel function SUBROUTINE ADONIS IMPLICIT REAL*8 (A-HO-Z) DIMENSION BJ(1O,2),DERIV(9,3) COMMON/ADON/DIST(25f,7,1O),RCOE(20,25f,7,1O),AXSERS(5), *SERA (5), DARG (7, 10, 4),S (10, 2) WREAL, NSER, NMAX (7) COMMON/PUT/SSJO (250,7), SAJO(250,7),YSINYCOS COMMON/DATSUB/ERH,TDLXAWBWA,TPITPI2,PIElE2,EERAK0,AK, *AKK, FA, OFFSET (7),OFFLIM,ERROR, NOFF C-OMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C OMMON! WIDTH/W, WDELTA lC:OMMON/DATT/COAL (20),POINT (20),CN(51),BM(51),POLTM(20), *POLTE(20),AM(41),DM(41),POLES (40), VXXM(20),VZXM(20),VZXE (20), *. BPOINT (10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NK0KIFIRST COMMON/BSS/ARG(10),AARG iCOMMON/MAT/PLIAI,TI,V(3), IY COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FiX, F1Z ARX=W*AX/2. DO Wl=2.DO*YCOS PR1=PLI *DLX PR2=PR1 *PR1 2R4=PR2 *pR2 P R6=PR4 *PR2 ]?R8=PR6*PR2 DO 1 J=1,NOFF MAX=NMAX (J) DO 2 N=1,MAX SSJO(N,J)=O.DO SAJO (N,J)=O.DO 2 CONTINUE 1 CONTINUE Page 16 DO 11 J=1,NOFF LPOINT=MPOINT

'Irint file 13 12 17 16 15 20 21 Fvyjj diel mutual. ftn IF (OFFSET(J).GT.OFFLIM) GO TO 12 LPOINT=NPOINT DO 13 I=1,NPOINT ARG (I) =P LI *DARG (Jr I1,1) CONTINUE CALL BESS1(BJ) DO 14 I=1,LPOINT DO 17 NK=1,5 DERIV (NK, 1) =0. DO DERIV (NK, 2) =0.DO CONTINUE ASIN=ARX*BCOAL (I IF (OFFSET(J).GT.OFFLIM) GO TO 15 ASIN=W*DARG (J, I, 4) *COAL (I) AROF=PLI *OFFSET (J) *DARG (Jr If,2) COFF=DCOS (AROF) SSUM=0.DO DO 16 JN=1,NSER ARAF=PLI *S (JN, 2) *DARG (J, I, 2) CAFF=DCOS (ARAF) SSUM=SSUM+S (JN,1) *CAFF CONT INUE CONTINUE KMAX=NMAX (J) DO 18 K=1,KMAX DO 20 NK=1,5 DERIV (NK, 1) =DERIV (NK, 2) DERIV (NK, 2) =DERIV (NK, 3) CONTINUE IF (OFFSET(J).GT.OFFLIM) GO To 21 SIN1=DARG (J. I1,3) SIN2=SIN1*SIN1 COS1=DCOS (PLI*DIST (K, JI)) TERM=COFF* (BJ (I,1) -SSUM/PI) *COS1 DERIV (1, 3) =TERM SIN1=SIN2 DERIV (2,f3) =-TERM* SIN1 SIN1=SIN1*SIN2 DERIV (3, 3) =TERM* SI N1 SIN1=SIN1 *SIN2 DERIV (4,,3) =-TERM*SIN1 SIN1=SIN1 *SIN2 DERIV (5, 3) =TERM* SI N1 GO To 22 AARG=PLI*DIST (K, J,I) ARG2=AARG*AARG ARG4=ARG2 *ARG2 ARG6=ARG4 *ARG2 CALL BESS2(BJ) DERIV (1,3) =BJ (1,2) DERIV (2 f3) =RCOE (1 IKrJ, I)*BJ (3,2) + RCOE (2,IKrJ, I) *BJ (1,I 2) DERIV (3,,3) =RCOE (3,f K, J, I) *BJ (5,2) + RCOE (4,IK, Jr I) *BJ (3,2) + (RCOE (5,fKrJ, I) +RCOE (6, KrJrI) /ARG2) *BJ (1,I2) DERIV (4, 3) =RCOE (7,fKrJ, I) *BJ (7,2) + RCOE (8,I K, Jr I) *BJ (5,2) +RCOE (9,I K, Jr I)* BJ (3,I2) + (RCOE (10,I K, Jr I) +RCOE (11,I K, J,,I) /ARG2+RCOE (12, KJ, I)/ARG4)* BJ(1,2) DERIV (5, 3) =RCOE (13, K, Jr I) *BJ (9, 2) + RCOE (14,IKrJrI) *BJ (7,2) +RCOE (15, KrJr I) *BJ (5 I2) +RCOE (1 6,IKrJrI)*BJ (3,2) + (RCOE (1 7 IKJr I)+RCOE (1 8 IKrJrI)/ARG2 +RCOE (19, KJ, I)/ARG4 +RCOE (20, K IJ II) /ARG6) *BJ (1 2) Page 1 7 * * * * * * * * * * * *

P~rint file "1yij diel mutual. ftn"1 22 IF (K.LT.3) GO TO 18 SUMS=SERS (1) *DERIV(1,2)-~PR2*SERS (2) *DERIV(2,2) *+PR4 *SERS (3) *DERIV (3,r2) -PR6 *SERS (4) *DERIV *(4, 2) +PR8 *SERS (5) *DERIV (5,r2) C CH1 =SERA (1) * (DERIV (1,r1) +DERIV (1, 3) -Wl1*DERIV * (1,2)) CH2=SERA (2) * (DERIV (2,r 1) +DERIV (2, 3) -Wl1*DERIV * ~(2,2)) *PR2 CH3=SERA (3) * (DERIV (3,r1) +DERIV (3,r 3) -Wl1*DERIV * ~(3,2)) *PR4 CH4=SERA (4) * (DERIV (4, 1) +DERIV (4,r3) -W1*DERIV * ~(4,2)) *PR6 CH5=SERA (5) * (DERIV (5, 1) +DERIV (5,r3) -Wl1*DERIV * ~(5,2)) *PR8 SUMA=CH1l-CH2+CH3-CH4+CH5 KJ=K-2 SSJO (KJ, J) =SSJO (KJ, J) +ASIN* SUMS SAJO (KJ, J) =SAJ0O(KJ, J) +ASIN*SUMA oc',ceC IF (KJ.EQ.1)WRITE (6,665) KJ,J,SSJ0(KJ,J), * SUMS, SAJO (KJr J), SUMA 0 —665 FORMAT(l0X,'KJ=f',I4,2XfJ=fI4/lOX,ISSJO=', * E14.7,2X,'SUMS=I,El4.7/l0X,'SAJO=',El4.7, * 2X, F SUM.A=' El14. 7/ OCCC 18 CONTINUE 14 CONTINUE 11 CONTINUE RETURN END BESSi This subroutine gives values for the zeroth order Bessel functions. It is used for small offsets SUBROUTINE BESSi1(BJ) IMPLICIT REAL*8 (A-HO-Z) DIMENSION BJ(10,2) C~ —OMMON/COEF/RX, XXRZ, XZFRX, FRZ, FiX, F1Z C-OMMON/ADON/DIST(250,7,10),RCOE(20,250,7,10),AX,,SERS(5). *5ERA(5), DARG (7,r1 0,f4), S (1 0,r2), WREAL, NSER, NMAX (7) COMMON/BSS/ARG(10),AARG C:OMMON/DATT/COAL (20),POINT (20),CN(51),BM(51),POLTM(20), *'POLTE(20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), *BPOINT (10),BCOAL (10),MPOINTNPOINTNK0,MANTMNTENK0K,IFIRST IPI=3. 141592653589D0 DO 1 IJ=1,NPOINT X=ARG (IJ) IF (X.GT..001DO) GO TO 10 X3=X/3.DO X32=X3 *X3 X34=X32 *X32 X3 6=X34 *X32 BJO=l1.DO-2.2499997D0*X32+1.2656208D0*X34-0.3163866D0 * *X36 BJ(IJ 1) =BJO GO TO 1 10 IF (X.GT.3.DO) GO TO 12 x3=x/3.DO X32=X3*X3 Page 18

?rint file "yij dielmutual.ftn a I.Page 19 X3 4=X32 *x32 X3 6=X34 *x32 X3 8=X36*X32 X31 0=X38*X32 X312=X310*X32 BJO=1.DO-2. 2499997D0*x32+1. 2656208D0*X34-0. 3163866D0 * *X36+0.0444479D0*X38-0.0039444D0*X310+0.00021000 DO*X312 BJ(IJ,1)=BJO GO TO 1 12 CONTINUE X3=3.DO/X X32=X3 *x3 X33=X32 *X3 X34=X33*X3 X3 5=X3 4 *X3 X36=X35*X3 FJO=0.7978 8456D0-0. 00000077D0*X3-.0. 00552740DO*X32-0.0000 9512D0*X33+0.00137237D0*X34-0.00072805D0*X35+0.00014 476D0*X36 TJ0O=X-0. 78539816D0-0. 04166397D0*X3-0. 00003954D0*X32+0. 00 262573D0*X33-0.00054125D0*X34-0.00029333D0*X35+0.000 13558D0*X36 WCON=DSQRT (1.DO/X) BJ (IJ, 1) =WCON*FJO*DCOS (TJO) 1 CONTINUE RETURN END TAIL This subroutine evaluates the tail contribution SUBROUTINE TAIL IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YS,YS1S2 COMMON/CTAIL/S1 (4,205,7),D1 (4,205,7),D2 (4,205,7), *T1 (4,205,7),T2 (4,205,7),T3 (4,205,7),T4 (4,205,7) COMMON/MATDIEL/YS(200),YS1S2(7,200), NOFFS(7) COMMON/OUT/GS (250),GS1S2 (7,250) C"OMMON/DAT SUB/ER,HTDLXAWBWA,TPITPI2,PIElE2,EER,AKO,AK, *.AKK, FA, OFFSET (7), OFFLIM, ERROR, NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C- OMMON/WIDTH/W, WDELTA CZOMMON/INT/XNS(40),CNS(40),XND(20,2),CND(20),xNT(40,3), *C1-.-NT (40), NDP, NTP, NSP COMMON/ADON/DIST(25r,7,10),RCOE(2,25 0, 7,1),AXSERS(5), *SERAP5),DARG(7,10,4),S(10,2), WREAL, NSER, NMAX(7) COMMON/ IOFF/ INSS (7, 7), NSSL (7, 7) This vector contains the values of t in the integrals hO Z1=T Z2=2.DO*H This vector contains the values of the coefficient C in the integrals hO

Print file "yij diel_mutual. ftn " Page 20 C1=FA C C C This vector contains the values of the coefficient A in C the integrals hO C AK2=AK*AK AKK2=AKK*AKK AK02=AKO*AKO W2=W/2.DO THMIN=WREAL/W THMIN=DATAN(DSQRT(1.DO/THMIN**2-1.DO)) THMAX=PI-THMIN PI2=PI/2.DO PI4=PI/4.DO DLX2=DLX/2.DO DLX4-DLX2*DLX2 C YCOS-DCOS(AKK*DLX) CCS=DCOS(2.DO*AKK*DLX) YSIN=DSIN (AKK*DLX) SSN=D)SIN(2.DO*AKK*DLX) C C + --- —---------------------------- C I Evaluation of S1,S2,S3,S4,S5,S6 I | (Single Integrals) + --- —--------------------------— + DO 201 J=1,7 DO 202 K=1,205 DO 203 JK=1,4 Sl(JK,K,J)=O.DO D1(JK,K,J)=O.DO D2 (JK,K,J)=O.DO T1(JK,K,J)=O.DO T2(JK,K,J)=O.DO T3(JK,K,J)=O.DO T4(JK,K,J)=O.DO 203 CONTINUE 202 CONTINUE 201 CONTINUE ZP1=Z1/C1 ZP2=Z2/C1 ZP12=ZP1*ZP1 ZP22=ZP2*ZP2 DO 1 J=1,NOFF KMAX=NMAX(J)+2 IF (OFFSET(J).LT.1.D-6) THMAX=PI DSP=(THMAX-THMIN)/4.DO DDP=DSP*DLX2 DTP=DSP*DLX4 COEF1=(THMAX-THMIN)/2.DO IF (OFFSET(J).LT.l.D-6) COEF1=(PI/2.D0-THMIN)/2.DO COEF2=(THMAX+THMIN)/2.DO IF (OFFSET(J).LT.1.D-6) COEF2=(PI/2.DO+THMIN) /2.DO DO 10 I=1,NSP THI=COEF1*XNS(I)+COEF2 C1=DCOS(THI) C2=W2*C1 C2=OFFSET(J)-C2 CW=C2*C2 AASIN=CNS (I) *DSP DO 11 K=1,KMAX

'rint file "yij dielmutual.ftn v XN=FLOAT (K-3) *DLX RAD2=XN*XN+CW TRAD1=DSQRT (RAD2+ZP12) TRAD2=DSQRT (RAD2+ZP22) S1 (1, K, J)=S1 (1, K, J)+DLOG(2. DO* (TRAD1+XN)) *AASIN Si (2, K,rJ) =S1 (2, K, J)+DLOG(2.DO* (TRAD2+XN) ) *AASIN 11 CONTINUE 10 CONTINUE + --- —----------------------------------------------------------- I EVALUATION OF D1,D2,D4,D5 1 + --- —----------------------------------------------------------- DO 20 I=i,NDP THI=COEF1*XND(I,1)+COEF2 XI=DLX2* (XND(I,2)+1.DO) C1=DCOS(THI) C2=W2*C1 C2=OFFSET (J) -C2 CW=C2*C2 AASIN=CND (I) *DDP SV1=DSIN(AKK* (DLX-XI)) SV2=-SV1 SV4=DSIN (AKK*XI) C2=DCOS(AKK*(DLX-XI)) DO 21 K=1,KMAX XNP=XI+FLOAT (K-2) *DLX XNM=-XI+FLOAT (K-2) *DLX RADP 2=XNP *XNP+CW RADM2=XNM*XNM+CW TRAP1=DSQRT (RADP2+ZP12) TRAP2=DSQRT (RADP2+ZP22) TRAM1=DSQRT (RADM2+ZP12) TRAM2=DSQRT (RADM2+ZP22) XA1=AKK*XNP XA2==AKK*XNM XAP=DSIN (XA1) XAM=DSIN (XA2) SANP1=XAP*DLOG(2.DO* (TRAP1+XNP)) SANP2=XAP*DLOG(2.DO* (TRAP2+XNP)) SANM1=XAM*DLOG(2.DO* (TRAM1+XNM)) SANM2=XAM*DLOG(2.DO*(TRAM2+XNM)) XAP=DSIN(XA1/2.DO) XAM=DSIN (XA2/2.DO) SONP1=XAP/TRAP1 SONP2=XAP /TRAP2 SONM1 =XAM/ TRAM1 SONM2 =XAM/ TRAM2 Y1=-XNM/2.DO-DLX Y2=-XNP/2.DO+DLX CY1=DCOS(AKK*Y1) CY2=DCOS(AKK*Y2) SY1=DSIN(AKK*Y1) SY2=DSIN(AKK*Y2) D1(1,KJ)=D1(1,KJ)+(SANP1+SANM1)*SV2*AASIN D2 (1, K, J) =D2 (1, KrJ) + (CY1*SONP1-CY2*SONM1) *AASIN Dl (2, K,rJ) =D1 (2, K,rJ) + (SANP2+SANM2) *SV2*AASIN D2 (2,KJ)=D2 (2,KJ)+ (CY1*SONP2-CY2*SONM2) *AASSIN 21 CONTINUE Page 21

Print file "1yij dielmutual. ftn" Page 22 20 CONTINUE evaluation of T1,T2,T3,T4 DO 30 I=1,NTP THI=COEFi*XNT (I,1) +COEF2 XI=DLX2* (XNT (I, 2) +1.DO) XIP=DLX2* (XNT (I, 3) +1.DO) Cl=DCOS (THI) C2=W2*Cl C2=OFFSET (J) -C2 CW=C2*C2 SVi=DSIN(AKK* (DLX-XI)) SV2=-SV1 SV3=DSIN(AKK* (DLX-XIP)) AASIN=DTP*CNT (I) DO 31 K=i,KMAX XNPP= (XI+XIP) +FLOAT (K-1) *DLX XNPM= (XI-XIP) +FLOAT (K-1) *DLX XNMP= (-XI+XIP) +FLOAT (K-1) *DLX XNMM= (-XI-XIP) +FLOAT (K-1) *DLX RADPP2=XNPP*XNPP+CW RADPM2=XNPM*XNPM+CW RADMP 2=XNMP *XNMP+CW RADMM2=XNMM*XNMM+CW TAPPI=DSQRT (RADPP2+ZP12) TAPP2=DSQRT (RADPP2+ZP22) TAPMi=DSQRT (RADPM2+ZP12) TAPM2=DSQRT (RADPM2+ZP22) TAMPi=DSQRT (RADMP2+ZP12) TAMP2=DSQRT (RADMP2+ZP22) TAMMI=DSQRT (RADMM2+ZP12) TAMM2=DSQRT (RADMM2+ZP22) CSTi=DCOS (AKK* (XNPM/2.DO+DLX) ) *DSIN (AKK*XNPP /2.DO) CST2=DCOS (AKK* (-XNMP/2.DO+DLX) ) *DSIN(AKK*XNMM /2.DO) CST3=DCOS (AKK* (XNMM/2.DO+DLX) ) *DSIN (AKK*XNMP /2.DO) CST4=DCOS (AKK* (-XNPP/2.DO+DLX) ) *DSIN(AKK*XNPM /2.DO) Ti(l,KJ)=Ti(1,K,J)+SV2*AASIN*CST1/TAPP1 T2 (i,K,J)=T2 (i,K,J)+SVl*AASIN*CST2/TAMM1 T3(iK, J)=T3(1,K, J)+SVl*AASIN*CST3/TAMP1 T4 (i,K,J)=T4(i,K,J)+SV2*AASIN*CST4/TAPM1 Ti (2,K,J)=Ti (2,K,J)+SV2*AASIN*CST1/TAPP2 T2(2,K,J)=T2(2,K,J)+SVi*AASIN*CST2/TAMM2 T3(2,K,J)=T3(2,K,J)+SVi*AASIN*CST3/TAMP2 T4 (2,K,J)=T4 (2,K,J)+SV2*AASIN*CST4/TAPM2 31 CONTINUE 30 CONTINUE 1 CONTINUE Evaluation of GS,GS1S2 CZX=2.DO* (i.DO-ER) / ((i.DO+ER)* (i.DO+E2)* (i.DO+0.5D0*Ei)) IF ((ER-1.DO).LT.0.005) CZX=0.DO CXX= 1.DO CSX= (AK2-AKK2) *CXX/FA CS Z=AKK2 *CZX/FA CAX=AKK* CXX/FA CAZ=AKK*CZX/FA DO 4 J=i,NOFF NJMAX=NOFFS (J)

Print file vyijjdielmutual. ftn Pe Page 23 DO 62 N=i,NJMAX NP1=N+2 NO=N+i NM1=N STX=-Di (iNPi, J)+2.DO*YCOS*Dl (i, NO,J) -D1 (iNMlJ) +2. DO* (Ti (iN, J)+T2 (iN, J) -T3 (iNJ) -T4 (iNJ)) STZ=-Dl(2,NPiJ)+2.DO*YCOS*Dl(2,NO,J)-Dl(2,NMi,J) +2. DO* (T1 (2, N,J)+T2 (2, N, J) -T3 (2,NJ) -T4 (2,NJ)) MP2=N+4 MPi=N+3 MO=N+2 MMi=N+i MM2=N SINP2=DSIN (AKK*FLOAT (N+i) *DLX) SINP1=DSIN (AKK*FLOAT (N) *DLX) SINO=DSIN(AKK*FLOAT(N-i)*DLX) SINMi=DSIN (AKK*FLOAT (N-2) *DLX) SINM2=DSIN (AKK*FLOAT (N-3) *DLX) ATX=SINP2*Si(i,MP2,J)-4.DO*YCOS*SINPi*Si(i,MPi,J) +2.DO* (2.DO+CCS) *SINO*Si (iMO, J) -4.DO*YCOS **SINMi*Si (iMMiJ)+SINM2*Si (iMM2,J) ATZ=SINP2*Si(2,MP2,J)-4.DO*YCOS*SINPi*Si(2,MPij) +2.DO* (2.DO+CCS) *SINO*Si (2,MO, J)-4.DO*YCOS *SINMi*Si (2,MMi,J)+SINM2*Si (2,MM2,J) AAX=-2.DO*(D2(iNP1,J)-2.DO*YCOS*D2(1,NO,J) +D2 (iNMiJ)) AAZ=-2.DO* (D2 (2,NPiJ) -2.DO*YCOS*D2 (2,NO,J) +D2 (2,NMiJ)) AX=ATX+AAX AZ=AT Z+AAZ ZW=W*' (CSX*STX+CSZ*STZ+CAX*AX-CAZ*AZ) IF (J.EQ.i) GS(N)=ZW IF(J.GE.2) GSiS2(J,N)=ZW 62 CONTINUE 4 CONTINUE RETURN END This subroutine evaluates the higher order bessel functions using the ascenting series expression or hankel's expansion. SUBROUTINE BESS2 (BJ) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION BJ(1O,2),U(4),RBJ(50,2) C-OMMON/BO 1 /BJO, BJi COMMON/BSS/ARG(O),X PI=3.141592653589 Evaluation of JO,J1 CALL BSJO(X) ]RBJ (1,2) =BJO IRBJ (2,2) =BJi N14CON=il N=IDINT(2.4D0*X) IF (N.LT.10) N=10:rF (X.LT.3.DO) GO TO 10 EVALUATION OF HIGHER ORDER BESSEL FUNCTIONS UP TO ORDER LESS THEN THE ARGUMENT NIMAX=IDINT (X) -i IEF (NIMAX.GT.9) NIMAX=9 DO 1 I=2,NIMAX

'Irint file Ffyij diel mutual. ftn"Pae2 Page 24 NJ1=I NJ2=I-1 NB=I+l RBJ(NB,2) =FLOAT (2*NJ2) *RBJ(NJ1,2) /X-RBJ(NJ2, 2) 1 CONTINUE -IF (NIMAX.EQ.9) GO TO 20 NCON=NIMAX I)EBYE'S ASYMPTOTIC EXPANSION-EVALUATION OF JN 10 DO 11 J=1,2 JN=N-J+l1 XA=X/FLOAT (JN) XA=1.DO/XA XE=XA+DSQRT (XA*XA-1l.DO) A=DLOG (XE) CTH=(XE+1.DO/XE) /(XE-l.D0/XE) CALL F(CTHU) TNH=1.DO/CTH Rl1=D EXP (F LOAT (JN) * (TNH -A)) R2=DSQRT (2.DO*PI*FLOAT (JN) *TNH) BN1=JN BN2=JN* JN BN3=BN2 *JN BN4=BN3*JN RBJ(JN+1,2)=(Rl/R2)*(l.DO+U(1)/BN1+U(2) * ~U(4) /BN4) 11 CONTINUE /BN2+U (3) /BN3+ EVALUATION OF HIGHER ORDER BESSEL FUNCTIONS WHEN X<10 NJMAX=N-2 -NCON DO 2 I=1,NJMAX NJB=N-I NJB1=NJB+l NJB2=NJB1+1 RBJ (NJB, 2) =2. DO*FLOAT (NJB) *RBJ (NJB1, 2) /X-RBJ (NJB2, 2) 2 CONTINUE 2 0 C".ONTINUE, DO 3 1=1,9 BJ(I, 2) =RBJ(I, 2) 3 C"-ONTINUE RETURN END 'SUBROUTINE BSJ0O(X) IMPLICIT REAL*8 (A-H, O-Z) C-OMMON/BOl1/BJ0, BJ1 Evaluation of JO using the series expansion given in Abramowitz..PI=3. 141592653589D0 IF (X.GT.3.DO) GO TO 20 iX3=X/3.DO,X32=X3*X3.X34=X32 *X32 X3 6=X32 *X34,X38=X32*X36,X310=:X3 8*X32 iX3 12=X3 10 *X32.BJ0=l.DO-2.2499997D0*X32+1.2656208D0*X34-0.3163866D0*X36+ * 0.0444479D0*X38-0.0039444D0*X310+0.00021000D0*X312:BJ1=X*(0.5D0-0.56249985D0*X32+0.21093573D0*X34-0.03954289D0

Print file "yij dielmutual. ftn" P Page 25 * *x36+0.00443319D0*X38-0.00031761D0*X310+000001109D0 * *x312) GO TO 21 C 20 X3=3.DO/X X32=X3*X3 X33=X32*X3 X3 4=X3 3 *)X3 X3 5=X3 4 *X3 X36=X35*X3 FJ0=0.79788456DO-0.000000 77D*X3-0. 00552740DO*X32-0.00009512D0 *x33+0.00137237D0*X34-0.00072805D0*X35+000014476D0*X36 FJ1=0.79788456D0+0. 000 00156D0*X3+0.01659667D*X32+0.00017105D *x33-0.00249511D0*x34+0.00113653D0*x35-.000020033D0*X36 TJO=X-0.78539816D0-0.04166397D0*X3-0. 00003954D0*X32+0.00262573D *x33-0.00054125D0*X34-0.00029333D0*X35+000013558D0*X36 TJ1=X-2.35619449D+0.124 99612D0*X3+0. 000 05650D*X320.0063787 9D *x33+0.00074348D0*X34+0.00079824D0*X35-0.00029166D0*X36 WCON=DSQRT(1.D0/X) BJO=WCON*FJO*DCOS(TJO) BJ1=WCON*FJ1*DCOS(TJ1) 21 CONTINUE RETURN END SUBROUTINE F(XU) IMPLICIT REAL*8(A-H,O-Z) DIMENSION U(4) X2=X*X X3=X2 *X( X4=X3*X X5=X4*X.X6=X5*X.X7=X6*X.X8=X7 *X.X9=X8 *.X 0=x9*X Xl 1=X1 0 *> X12=x11*x U(1)==(3.D0*X-5.D0*X3)/24.DO 'U(2)=(81.DO*X2-462.DO*X4+385.DO*X6)/1152.DO U(3)=(30375.DO*X3-369603.DO*X5+765765.DO*X7-425425.DO*X9)/ 414720.D0 U (4) = (4465125.D0*X4-94121676.D0*X6+349922430.DO*X8-446185740.DO* X10+185910725.DO*Xl2)/39813120.DO RETURN END........................................................................... SUBROUTINE DATA SLOT This subroutine gives all the data for integration used in subroutine SLOT.FTN.......................................................................... SUBROUTINE DATASLOT IMPLICIT REAL*8 (A-H,O-Z) COMMON/DATSUB/ER,-,T,DLX,AW,BW,A,TPITPI2,PIE1,E2,EERAK0,AK, *AKK, FA, OFFSET (7), OFFLIM, ERROR, NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS COMMON/DATT/COAL (20),POINT(20),CN(51),BM(51),POLTM(20), *]?OLTE (20),AM(41), DM(41),POLES(40),VXXM(20),VZXM(20),VZXE (20), *]BPOINT (10),BCOAL(l0),MPOINTNPOINTNK0,MANTMNTENKOK, IFIRST

Print file "yijdielmutual. ftn" COMMON/INT/XNS(40),CNS(40),XND(20,2),CND(20),XNT(40,3), *CNT(40),NDP,NTP,NSP C COMMON/ADON/DIST(250,7,10),RCOE(20,250,7,10),AX,SERS(5), *SERA (5), DARG(7,10,4),S(10,2) WREAL,NSER,NMAX(7) C COMMON/IOFF/INSS(7,7),NSSL(7,7) C PI=3.141592653589D0 C C TPI=2.D0*PI TPI2=TPI*TPI C + --- —-----------— + C I ERROR FUNCTIONS I C + --- —------------— + C A1=A*A/ER-TPI2 A2=TPI2-TPI2/ER E1=0.5D0*A2/A1 E2=ER*E1/(1.D0+ER) FA=DSQRT(1.D+TPI2/A1) C ----------------------------------------------------— + C I Data for the poles C I IFIRST= 0: dominant mode is TM wave (many poles) C I 1: dominant mode is TE wave (many poles) 1 2: only one TM surface wave + --- —---------------------------------------------- + --- —------------------— + Data for the Integration + --- —-------------------— + NKO=20 NKOK=1 MA=40 NSER=10 NPOINT=10 Vector COAL COAL(1)=0.0666713443D0 COAL(2) =0.14945134915D0 COAL(3)=0.21908636251D0,COAL(4)=0.26926671931D0 COAL(5) =0.29552422471D0 COAL (6)=COAL(5) COAL (7)=COAL(4) COAL(8)=COAL(3) COAL (9)=COAL(2) COAL (10)=COAL(1) 'Vector POINT POINT(1) =0.973906528517D0 POINT(2)=0.865063366688D0 ]POINT (3)=0. 679409568299D0 ]?OINT(4)=0.433395394129D0 ]POINT(5)=0.148874338981D0 POINT (6)=-POINT(5) POINT(7)=-POINT(4) POINT (8)=-POINT (3) POINT (9)=-POINT(2) POINT (10)=-POINT (1) Page 26 MPOINT=5

?rint file "1yij diel mutual. ftn" Pag2,'Page 2 7 Vlector BOQAL 1BCOAL (1) =0. 2369268851D0 I3COAL (2) =0. 4786286705D0 I3COAL (3) =0. 5688888888D0 B3COAL (4) =BCOAL (2) B3COAL (5) =BCOAL (1) Vlector BPOINT ]3POINT (1) =0. 9061798459D0 BPOINT (2) =0. 5384693101D0 BPOINT (3) =0.DO BPOINT (4) =-BPOINT (2) BPOINT (5) =-BPOINT (1) Single integration NSP=31 RS1=0.9970874 8181D0 RS2=0. 984 68590966D0 RS3=0. 96250392509D0 RS4=0. 93075699789D0 RS5=0. 88976002994D0 RS6=0. 83992032014D0 RS7=0.78173314841D0 RS8=0.71577678458D0 RS9=0. 64270672292D0 RS10=0.56324 916140ODO RS11=0. 47819378204D0 RS12=:0. 38838590160D0 RS13=0.29471806998D0 RS14=:0. 19812119933D0 RS15=0. 09955531215D0 RS16=0.D0 XNS (1)=RS1 XNS (2)=RS2 XKNS (3) =RS3 XNS (4)=RS4 XKNS (5) =RS5 XNS (6) =RS6 XNS (7) =RS7 XKNS (8)=RS8 XNS (9)=RS9 XNS (10) =RS10 XKNS (11) =RS11 XKNS (12) =RS12 XNS (13) =RS13 XNS (14) =RS14 XKNS (15) =RS15 XKNS (16) =RS16 XKNS (17) =-RS15 XNS (18) =-RS14 XKNS (19) =-RS13 XKNS (20) =-RS12 XKNS (21) =-RS11 XKNS (22) =-RS10 XNS (23) =-RS9.XNS (2 4) =-RS 8 XKNS (25) =-RS7 X"'NS (2 6) =-RS 6 X'NS (27) =-RS5 X'.NS (28) =-RS4 -XNS (2 9) =-RS 3

Print file "ryij diel mutual.Etn vrPae2 Page 28 XNS (30) =-RS2 XNS ('31) =-RS1 CNS (1) =0. 0074708315792D0 CNS (2) =0. 0173186207903D0 CNS (3) =0. 0270090191849D0 CNS (4) =0. 0364322739123D0 CNS (5) =0. 0454937075272D0 CNS (6) =0. 0541030824249D0 CNS (7) =0. 0621747865610D0 ONS (8) =0. 0696285832354D0 ONS (9) =0. 07639038 65987D0 CNS (10) =0. 0823929917615D0 CNS (11) =0. 0875767406084D0 CNS (12) =0. 0918901138 936D0 CNS (13) =0. 0952902429123D0 CNS (14) =0. 0977433353863D0 CNS (15) =0. 0992250112266D0 CNS (16) =0. 0997205447934D0 CNS (17) =CNS (15) CNS (18) =CNS (14) ONS (19) =CNS (13) CNS (20) =CNS (12) CNS (21) =CNS (11) CNS (22) =CNS (10) CNS (23) =CNS (9) CNS (24) =CNS (8) CNS (25) =CNS (7) ONS (26) =CNS (6) ONS (27) =CNS (5) CNS (28) =CNS (4) CNS (29) =CNS (3) OCNS (30) =CNS (2),CNS (31) =CNS (1) 2) Double Integration NDP=1 6.Rl=DSQRT((15.D0-2.D0*DSQRT(30.D0))/35.D0):R2=-R1,Sl=DSQRT((15.DO+2.DO*DSQRT(30.DO))/35.DO),S2=-Si A1=4.DO*(59.DO+6.DO*DSQRT(30.DO))/864.DO A2=4.D0*(59.D0-6.D0*DSQRT(30.D0))/864.DO Ak3=4.DO*49.DO/864.DO XND (1,1) =R1 XND (1,2)=R1 CND (1) =Al 'XND (2, 1) =R2.XND (2,f2) =R1 CND (2)=A1,XND (3,1) =R1 XND (3,2) =R2 CND (3) =A1 XND (4, 1) =R2 XND (4,2) =R2 CND (4) =A1 XND (5, 1) =S1

Print file "yij diel-mutual. ftn" XND (5,2) =51 CND (5) =A2 C XND (6,1) =S1 XND (6,,2) =S2 CND (6) =A2 C XND (7,1) =52 XND (7,2) =51 CND (7) =A2 C XND (8,1) =52 XND (8,2) =52 CND (8) =A2 XND (9,1) =R1 XND (9,2) =51 CND (9) =A3 XND (10,1) =R1 XND (10,,2) =52 CND (10) =A3 XND (11,1) =51,XND (1 1, 2) =R1 OND (11) =A3 XND (12,1) =52 XND (12,2) =R1,CND (12) =A3.XND (13,1) =R2 XND (13,2) =51,CND (13) =A3:XND (1,4, 1) =R2.XND (14,2) =52 OND (4) =A3.XND(15,1) =51 XND (15, 2) =R2 CND (15) =A3 XND (16,1) =52 XND (16,,2) =R2 CND (16) =A3.3) Triple Integration NTP=34 RS1=0. 931738 0000D0 RS2=-RS1 UU1=0.9167441779D0 1JU2 =-UU1 S51=0. 4086003800D0 552=-S551 'TT1=0. 7398529500D0 TrT2=-TT 1 ]31=8.D0*0. 03558180896D0 ]32=8.DO*0. 01247892770D0 133=8.D0*0. 05286772991D0 134=8.DO*0. 02672752182D0 Page 29 'XNT (1, 1) =RS1l 'XNT (1, 2) =0.DO

Print file "yij diel-mutual. ftn" XNT (1,3) =0.DO ONT (1)=B1 C XNT (2,1) =RS2 XNT (2,,2) =0.DO XNT (2,f3) =0. DO CNT (2) =31 C XNT (3,1) =0.DO XNT (3,2) =RS1 XNT (3, 3)=0.DO ONT (3) =B1 C XNT (4,f1) =0. DO XNT (4,2) =RS2 XNT (4,F3) =0. DO CNT (4) =31 XNT (5,1) =0.DO XNT (5,2) =0.DO XNT (5,3) =RS1 CNT (5) =Bl XNT (6,1) =0.DO XNT (6,2) =0.DO.XNT (6,3) =RS2 CNT (6) =B1 XNT (7,1) =UU1.XNT (7,2) =UU1.XNT (7,3) =0.DO C-NT (7) =B2:xNT (8, 1) =UU2 XNT (8,,2) =UU1 XNT (8,3) =0.DO O-NT (8) =B2 XNT (9, 1)=UU1 XNT (9, 2)=UU2 XNT (9,3) =0.DO C-NT (9) =32 XNT (10, 1)=UU2 XNT (10,2) =UU2 XKNT (10,3) =0.DO CNT (1 0) =B2 XKNT (11,1) =UU1 XNT (1 1,r2) =0. DO XNT (11,3) =UU1 CNT (1 1) =32 -XNT (1 2,f1) =UU1 XNT (12,2) =0.DO 'XNT (1 2, 3) =UU2 CNT (12) =32 XINT (13, 1) =UU2 X<NT (13,2) =0.DO XKNT (13,3) =UU1 C —NT (13) =32 XNT (14,1) =UU2 IXNT (1 4, 2) =0. DO IXNT (1 4, 3) =UU2 Page 30

'Irint file Flyjj diel mutual.ftnFF CNT (14) =B2 X<NT (15,1) =0.D0 XNT (15,2) =UU1 XNT (15,3) =UU1 O-NT (15) =B2 XNT (16,1) =0.DO XNT (16,2) =UU1 'XNT (1 6,r3) =UU2 C-NT (16) =B2 XNT (1 7, 1) =0.DO XKNT (17,2) =UU2 XNT (17,3) =UU1 CNT (17) =B2 XKNT (18,1) =0.DO Xl)NT (1 8, 2) =UU2 XNT (1 8, 3) =UU2 CNT (18) =B2 'XNT (1 9, 1) =SS 1 XI.NT (1 9,r2) =SS 1 XNT (19,,3) =SS1 CNT (19) =B3 XNT (20,1) =SS1 XNT (20,2) =SS1 XNT (20,3) =SS2 CNT (20) =B3 XNT (21,1) =SS1 KNT (21,2) =SS2 XNT (21,3) =SS1 CNT (2 1) =B3 XNT (22,1) =SS1 XNT (22,2) =SS2 XNT (22,3) =SS2 CNT (22) =B3 XNT (23,1) =SS2 XNT (23,2) =SS1 XNT (23,3) =SS1 CNT (23) =B3 XNT (24,1) =SS2 XNT (24,2) =SS1 XKNT (24, 3)=SS2 CNT (24) =B3 XKNT (25,1) =SS2 XNT (25,f2)=SS2 XNT (25,3) =SS1 O-NT (25) =B3 XNT (2 6,r1) =SS2 XKNT (26,2) =SS2 XKNT (26,3) =SS2 CNT (26) =B3 XKNT (27,1) =TT1 XKNT (27,2) =TT1 XKNT (27,3) =TT1 CNT (27) =B4 Page 31

Print file Fvyjj diel-mutual.Eftn" Pag3 Page 32 XNT (2 8, 1) =TT1 XKNT (28,2) =TT1 XYNT (28,3) =TT2 Cl~-NT (2 8) =B4 XKNT (29,1) =TT1 XNT (29,2) =TT2 XKNT (29,3) =TT1 O-NT (2 9) =B4.XNT (30, 1)=TT1.XNT (30, 2)=TT2.XNT (30,3) =TT2 C-NT (30) =B4.XNT (31, 1)=TT2.XNT (31,2) =TT1.XNT (31, 3)=TT1 OCNT (31) =B4.XNT (32,1) =TT2 XNT (32,2)=TT1.XNT (32,3) =TT2 CONT (32) =B4 XNT (3 3,r1) =TT2 XNT (33,2) =TT2 XNT (33, 3) =TT1 C'"NT (33) =B4 XNT (34,1) =TT2 XKNT (34,2) =TT2 XNT (34, 3)=TT2 C-NT (34) =B4 RETURN END

########agg# ########888## ########tfgaa# ########aa8#aa# a p o o d o m a i n CAEN/Apollo 4~## ###### ## ### # # H### ##### ## # ### ## ## # #### # ## # #### # # ### # ## ## ### # # # K K K K K K KKK K K K K K K A TTTTTTT EEEEEEE H H A A T E H H A A T E H H A A T EEEEE HHHHHHH AAAAAAA T E H H A A T E H H A A T EEEEEEE H H III I I I I I III aa rrrrr rrrrr aa n n gggg eeeeee a a r r r r a a nn n g g e a a r r r r a a n n n g eeeee aaaaaa rrrrr rrrrr aaaaaa n n n g ggg e a a r r r r a a n nn g g e a a r r r r a a n n gggg eeeeee m m u u mm mm u u m mm m u u m m u u m m u u m m uuuu ttttt u u aa 1 ffffff t u u a a 1 f t u u a a 1 fffff t u u aaaaaa 1... f t u u a a 1... f t uuuu a a 111111... f ttttt t t t t t //tera/users/katehi/tape/arrange mutual.ftn LAST MODIFIED ON: 88/10/25 3:00 PM FILE PRINTED: 89/01/25 1:40 PM ###a###aa###a 8####8#BBBfBfg t#######ffs#t88 f#########88f88 ######8######### ################ ##8############# #############8##

Print;file "arrange_mutual. ftn " The name of this file is......... ARRANGE MUTUAL................ SUBROUTINE ARRANGE MUTUAL IMPLICIT REAL*8 (A-H,O-Z) -i COMMON/MAN/IBMATR(260,260) COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK, FA, OFFSET (7), OFFLIM, ERROR, NOFF COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS DATA NOEL1=NSL(1) NOEL2=NSL(2) NS12=NXOFF(2)-NXOFF(1) NOR=NOEL1+NOEL2 WRITE(6,222) NOEL1,NOEL2,NS12 222 FORMAT (10X,'NOEL1=',I4/1OX,'NOEL2='fI4/10OX,'NS12=', *:I4, //////)...... First Diagonal Matrix......... IMIN=1 IMAX=NOEL1 DO 4 I=IMIN,IMAX IXN=0 DO 5 KI=I,IMAX IXN=IXN+1 IBMATR (IXN, KI) =I IBMATR(KI,IXN)=IBMATR(IXN,KI) 5 CONTINUE 4 CONTINUE....... Second Diagonal Matrix........ INI=NOEL1 IMIN=NOEL1+1 IMAX=NOEL1+NOEL2 DO 6 I=IMIN,IMAX IXN=INI DO 7 KI=I,IMAX IXN=IXN+1 IBMATR (IXN, KI)=I-INI IBMATR (KI, IXN) =IBMATR (IXN, KI) 7 CONTINUE 6 CONTINUE...1... First off-diagonal matrix 1) Upper Part IAI=NOEL1-NOEL2 IMI=IABS (IAI)+1 IMIN=NOEL1+1 IMAX=NOEL1+NOEL2 DO 12 I=IMIN,IMAX IXN=0 LXN=IABS(NS12+I-IMIN)+1 IF (IAI.LT.0) GO TO 13 KIMIN=I KIMAX=IMAX GO TO 14 IPage 1

Print file "arrange_mutual. ftn" 13 KIMIN=I KIMAX=I+NOEL1 IF ((I-IMIN+1).GE.IMI) KIMAX=IMAX 14 DO 15 KI=KIMIN,KIMAX IXN=IXN+1 IBMATR(IXN, KI)=LXN IBMATR (KI, IXN)=IBMATR (IXN, KI) 15 CONTINUE 12 CONTINUE...... 2) lower Part.............. IMIN=2 IMAX=NOEL1 DO 16 I=IMIN,IMAX IXN=I-1 LXN=IABS(NS12-I+IMIN-1)+1 IF (IAI.GT.O) GO TO 17 KIMIN=NOEL1+1 KIMAX=2*NOEL1-I+IMIN-1 GO TO 18 17 KIMIN=NOEL1+1 KIMAX=NOEL1+NOEL2 IIMI=I-IMIN+2 IF (IIMI.GE.IMI) KIMAX=NOEL1+NOEL2-IIMI+IMI 18 DO 19 KI=KIMIN,KIMAX IXN=IXN+1 IBMATR(IXN, KI)=LXN IBMATR(KI, IXN)=IBMATR(IXN,KI) 19 CONTINUE 16 CONTINUE RETURN END Page 2

a p oll o d om a in CAEN/Apol lo 4 # # # # # # ## # # # # # # # 4 # # # ## # # # ## # ## # # 4 # # # # # # # # # # # # # # # 4 # # # ## # ## # # # ## # # K K K K K K KKK K K K K K K A A A A A A A AAAAAAA A A A A TTTTTTT EEEEEEE T E T E T EEEEE T E T ~ T EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I I III rrrrr u ii n n r r u ii nn n r r u u n n n rrrrr u ii n n n r r u ii n nnl r r uuuu n n m m u U mm mm u U m mm m u U m m u u m m u u m m uuuu ttttt t t t t t u u aa u u a a U u a a U u aaaaaa U u a a uuuu a a 1 1 1 1 1 11111. Ilteralusers/katehi/t ape/run-mutual LAST MODIFIED ON: 89/01/25 11:47 AM FILE PRINTED: 89/01/25 1:41 PM 4 ## # ## # ## ## # ## # # 4 ## # ## # ## # # # ## # # 4 # # # # # # # # # # # # # # 4 ## # # # # # # ## # # # # #

Print file "runmutual" Page 1 BIND SLOT DESIGN.BIN MUTUAL SLOT.BIN POLES MUTUAL.BIN YIJ DIEL MUTUAL.BIN ARRANGE MUTUAL.BIN -

*** WARNING *** 1 line was too long and was truncated. *** WARNING ***

a p oll o darnm a i n CAEN/Apollo K K K K K K KKK K K K K K K A A A A A A A AAAAAAA A A A A TTTTTTT T T T T T T EEEEEEE E E EREEEE E E EEEE EE E H H H H H H HHHHIHHH H H H H H H III I I I I I III 0000 U U o a u U o 0 U U o a u U o a U U 0000 UUUU ttttt t t t t t w w w w w w w ww w ww ww w w aa a a a a aaaaaa a a a a V V V V V V V V V V VV eeeeee e eeeee e e eeeeee n in U U nun mm U U mnmmin U U n in U U n in U U in in UUUU ttttt t t t 1: t U U aa 1 U U a a 1 U U a a 1 U U aaaaaa 1 U U a a 1 UUUU a a 111111 //Itera!/users/katehl/ta~pe/out-waVE~-mUtUal LAST MODIFIED ON: 89/01/26 9:33 AM FILE PRINTED: 89/01/26 9:39 AM

Print file "out wave mutual" Page 1 Dielectric Constant of the Substrate 0.2620000E+01 Substrate Thickness 0.2544000E-01 Conductor Thickness 0.1000000E-04 Number of Slots NSLOTS= 2 Transverse Offsets of the Slots YOFF(1)= 0.3166000E+00 YOFF( 2)= 0.6086400E+00 Longitudinal Offset of NXOFF(1)= 1 NXOFF( 2)= 57 the Slots Slot Widths WS(1)= 0.4800000E-01 WS( 2)= 0.4800000E —01 Slots Excess Widths WSDELTA= 0.000000OE+00 WSDELTA( 2)= 0.0000000E+00 Subsection Length 0.1250000E-01 DLX-RES( 2)= 0.1250000E-01 Lower Limit of Tail 0.1000000E+03 Number of Points on NSL(1)= 29 NSL( 2)= 29 Contribution Each Slot including the ends Error in the evaluation of the series ERROR= 0.1000000E-05 Normalization Constant 0.1000000E+01 L= 1 RCUR(L)= 0.OOOOOOOE+00 AICUR(L)= 0.OOOOOOOE+00

Print file "~out wave mutualF Pae Page 2 L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= 2 3 4 5 6 7 8 9 10 12 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 22 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 31 1 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1.22 2 3 2 4 2 5:2 6:2 7:2 8:2 9 3 0.31 ROUR (L) = RCUR (L) = RCUR (L) = RCUR (L = RCUR (L = RCUR (L = RCUR (L = RCUR (14 = RCUR (IM = RCUR (Li = RCUR (1 = RCUR (L = RCUR (L4 = RCUR (14= RCUR (1 = RCUR (L = RCUR (1 = ROUR (1 = RCUR (1 = RCUR (1 = RCUR (L = RCUR (L = RCUR (L = RCUR (L = RCUR (L) = RCUR (L = RCUR (Is = RCUR (1 = RCUR (14= RCUR (1 = RCUR (La) = RCUR (L) = RCUR (L = RCUR (L = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (1 = RCUR (14= ROUR (1 = RCUR (14= RCUR (L = RCUR (L = RCUR (14= RCUR (1 = RCUR (L4 = RCUR (L = RCUR (L = RCUR (L) = RCUR (L = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (14 = RCUR (L) = RCUR (1 = RCUR (L = RCUR (14 = RCUR (14 = RCUR (L4 = RCUR (14 = 0. 1045285E'+00 0. 2079117E'+00 0. 3090170E'+00 0. 4067366E'+00 0. 5000000EI+00 0.5877 852E'+00 0. 6691306E]+00 0. 7431448E'+00 0. 8090170E'+00 0. 8660254E'+00 0. 9135454E'+00 0. 9510565E'+00 0. 9781476E'+00 0. 9945219E1+00 0. 1000000EJ+01 0. 9945219E'+00 0.978147 6E'+00 0. 9510565E'+00 0. 9135454E'+00 0. 8660254E'+00 0. 8090170E'+00 0. 7431448E'+00 0.669130 6EJ+00 0.5877 852E'+00 0. 5000000E'+00 0. 4067366E'+00 0. 3090170E'+00 0. 2079117E'+00 0. 1045285E'+00 0. 7932658E'-12 0.0OOOOOOOEJ+00 0. 1045285E'+00 0. 2079117E'+00 0. 3090170E'+00 0. 4067366E'+00 0. 5000000E~100 0.5877 852E'+00 0. 6691306E;+00 0. 7431448E;+00 0. 8090170E:+00 0. 8660254E:+00 0. 9135454E:+00 0. 9510565E;+00 0. 9781476E;+00 0.994 5219E;+00 0. 1000000E:+01 0. 9945219E:+00 0. 9781476E:+00 0. 9510565E:+00 0.91354 54E:+00 0. 8660254E:+00 0. 8090170E:+00 0.743144 8E;+00 0.669130 6E:+00 0. 5877852E:,+00 0. 5000000E'+00 0. 4067366E:+00 0. 3090170E+00 0. 2079117E+00 0. 1045285E;+00 0. 7932658E-12 AICUR (L) = AICUR (L) = AI CUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (14 = AICUR (L) = AICUR (I) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (14 = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00I 0.OOOOOOOE+00I 0. OOOOOOOE+00 0. OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE+00 0. OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE~00 0. OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE+OCI 0. OOOOOOOE+OCI 0.OOOOOOOE+OCI 0.OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE+00I 0. OOOOOOOE+OCI 0. OOOOOOOE+OC' 0. OOOOOOOE+OC' 0. OOOOOOOE~OG' 0. OOOOOOOE+00I 0. OOOOOOOE+OG' 0. OOOOOOOE+00 0. OOOOOOOE+00I 0. OOOOOOOE+OG 0.OOOOOOOE+OC 0. OOOOOOOE+O0 0. OOOOOOOE~00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0.OOOOOOOE+00 0. OOOOOOOE+00 0.000 OOOOE+00 0. OOOOOOOE~00 0. OOOOOOOE+00 0.OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 Number of elements to be evaluated for the mutual interactions

Print file "out wave mutual" I= 1 J= 2 NSSL= 87 0.2920400E+00 Page 3 Offsets for the dielectric layer and number of corresponding elements I= 1 I= 2 OFFSET= 0.2920400E+00 OFFSET= 0.0000000E+00 NOFFS= 87 NOFFS= 0 SLOTS and corresponding offsets in the dielectric I= 1 J= 2 INSS= 1 OFFSET= 0.2920400E+00 Max number of offsets in the dielectric NOFF= 1 No TE waves excited in the substrate There are 1 TM waves excited in the substrate 1 0.631427169E+01 Contribution to admittance from the dielectric OFFSET # 1 Interactions between slots 1 and 2 I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= 1 2 3 4 5 6 7 8 9 10 11 112 YSD=-0.7824835E-06 YSD=-0.7817870E-06 YSD=-0.7796996E-06 YSD=-0.7762282E-06 YSD=-0.7713833E-06 YSD=-0.7651809E-06 YSD=-0.7576400E-06 YSD=-0.7487855E-06 YSD=-0.7386444E-06 YSD=-0.7272494E-06 YSD=-0.7146360E-06 YSD=-0.7008439E-06 0.1558373E-05 0.1552693E-05 0.1535848E-05 0.1508451E-05 0.1471411E-05 0.1425862E-05 0.1373079E-05 0.1314513E-05 0.1251922E-05 0.1187477E-05 0.1123704E-05 0.1063042E-05

Print file "Fout wave mutualF Pae Page 4 IJj= IJj= IJj= IJj= IJj= IJj= IJj= I J= IJj= IJj= I J= IJj= IJj= IJj= IJj= IJj= I J= I J= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= I J= IJj= IJj= I J= IJj= IJj= IJj= I J= IJj= IJj= IJj= I J= IJj= I J= IJj= IJj= I J= IJj= I J= IJj= IJj= I J= IJj= I J= I J= IJj= IJj= I J= IJj= IJj= IJj= IJj= I J= I J= IJj= I J= IJj= I J= I J= 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 21 22 2 3 2 4 25 2 6 27 2 8 2 9 3 0 31 32 33 34 35 3 6 37 3 8 3 9 4 0 4 1 42 4 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 51 52 53 5 4 55 5 6 57 5 8.59 6 0 61 62 6 3 164,65 6 6 6-7 IS8 6-9 7 0 7 1 7 2 7 3 7 4 7 5 7 6 7 7 7 8 YSD=-0. 6859163E-06 YSD=-0. 6699007E-06 YSD=-0. 6528462E-06 YSD=-0. 634 8060E-06 YSD=-0. 6158364E-06 YSD=-0.5959959E-06 YSD=-0.5753450E-06 YSD=-0. 5539477E-06 YSD=-0.5318 685E-06 YSD=-0.5091747E-06 YSD=-0. 4859345E-06 YSD=-0.4622173E-06 YSD=-0. 4380942E-06 YSD=-0.4136361E-06 YSD=-0.388914 6E-06 YSD=-0.3640019E-06 YSD=-0.338 9715E-06 YSD=-0. 3138 884E-06 YSD=-0.2888288E-06 YSD=-0.2638 660E-06 YSD=-0.2390565E-06 YSD=-0.2144 823E-06 YSD=-0. 1902016E-06 YSD=-0.1662792E-06 YSD=-0.1427780OE-06 YSD=-0.1197573E-06 YSD=-0. 97274 64E-07 YSD=-0.753 8512E-07 YSD=-0.5414 028E-07 YSD=-0.3358976E-07 YSD=-0.13778 86E-07 YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= 0.524 9304E-08 0.234 5550E-07 0. 4080386E-07 0. 5726202E-07 0. 7280136E-07 0. 8739682E-07 0. 1010273E-06 0. 1136752E-06 0. 1253268E-06 0. 1359724E-06 0. 1456057E-06 0. 1542244E-06 0. 1618298E-06 0. 1684268E-06 0.174 0240E-06 0.178 6332E-06 0. 1822699E-06 0. 1 849 52 6 E- 06 0. 1867033E-06 0.18754 63E-06 0. 1875094E-06 0. 1866229E-06 0. 1849196E-06 0. 1824344E-06 0.179204 8E-06 0. 1752701E-06 0.170 6712E-06 0. 1654507E-06 0. 1596529E-06 0. 1533227E-06 0. 1465064E-06 0. 1392509E-06 0. 1316037E-06 0. 1236126E-06 0. 1153255E-06 0. 1006943E-05 0.954 9244E-06 0. 9043670E-06 0. 8517802E-06 0. 7954015E-06 0.7377 696E-06 0. 6858309E-06 0. 6471066E-06 0. 6235971E-06 0. 6079404E-06 0. 5864324E-06 0. 5488644E-06 0. 4982312E-06 0. 4511244E-06 0.4254 873E-06 0.42420 90E-06 0. 4295155E-06 0. 4162005E-06 0. 3744660E-06 0. 3213586E-06 0.2871093E-06 0. 2865827E-06 0. 3027549E-06 0. 3012312E-06 0. 2640741E-06 0. 2094553E-06 0.174 8476E-06 0. 1785652E-06 0.1994006E-06 0. 1977392E-06 0.157734 6E-06 0. 1053305E-06 0. 8094082E-07 0. 9514 656E-07 0. 1163907E-06 0. 1056789E-06 0. 6046866E-07 0. 1792455E-07 0. 1287583E-07 0. 3790763E-07 0.5182 596E-07 0.27357 60E-07 -0. 1711874E-07 -0. 3917364E-07 -0.222 3567E-07 0.50342 81E-08 0. 3011337E-08 -0. 3172977E-07 -0. 6266885E-07 -0. 5750394E-07 -0. 2691218E-07 -0. 1115973E-07 -0. 3105652E-07 -0. 63012 07E-07 -0. 6841788E-07 -0. 4100843E-07 -0. 1404192E-07 -0. 1890794E-07 -0. 4660967E-07 -0. 5960180E-07 -0. 3873151E-07 -0. 6675805E-08 0.9264340OE-09 -0. 2001843E-07 -0. 3761033E-07 -0. 24544 65E-07

Print file "out wave mutual" Page 5 IJ= IJ= IJ= IJ= IJ= IJ= IJ= IJ= IJ= 79 80 81 82 83 84 85 86 87 YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= YSD= 0.1067905E-06 0.9805507E-07 0.8916630E-07 0.8017092E-07 0.7111441E-07 0.6204162E-07 0.5299594E-07 0.4401960E-07 0.3515319E-07 0.7759468E-08 0.2417755E-07 0.1041008E-07 -0.9506152E-08 -0.4317599E-08 0.2479453E-07 0.4632329E-07 0.3890204E-07 0.1814317E-07 Interactions between slots 2 and 2 NOEL1= 31 NOEL2= 31 NS12= 47 LONGITUDINAL DISTANCE = 0.5875000E+00 SUM MD= 0.1292908E —04 0.3637009E-04 Z12 MD=-0.9187551E4-00 -0.2584500E+01