RL-865 " Characterization of Waveguide Longitudinal Slots Covered by a Dielectric Layer" LIST OF PROGRAMS Pisti B. Katehi April 1989 RL-865 = RL-865

Print file "tape.lst " Here is an index of your tape which was written: 99 records of "arrangemutual.ftn" written to tape file #1. 44 records of "datag2_diel" written to tape file #2. 53 records of "datawave kO" written to tape file #3. 60 records of "data wave mutual" written to tape file #4. 771 records of "g2_diel.ftn" written to tape file #5. 356 records of "generatek0.ftn" written to tape file #6. 177 records of "inv-wave k0.ftn" written to tape file #7. 144 records of "main wave k0.ftn" written to tape file #8. 193 records of "mutualslot.ftn" written to tape file #9. 370 records of "out_g2_diel" written to tape file #10. 445 records of "out wave kO" written to tape file #11. 367 records of "out wave mutual" written to tape file #12. 190 records of "poles.ftn" written to tape file #13. 191 records of "poles mutual.ftn" written to tape file #14. 2 records of "runericsson" written to tape file #15. 1 record of "run ericsson.bak" written to tape file #16. 3 records of "run kO" written to tape file #17. 2 records of "run k0.bak" written to tape file #18. 1 record of "run mutual" written to tape file #19. 838 records of "slot design.ftn" written to tape file #20. 2047 records of "yijdielk0.ftn" written to tape file #21. 2084 records of "yijdiel mutual.ftn" written to tape file #22. 271 records of "yij wavek0.ftn" written to tape file #23. 367 records of "yij wavemutual.ftn" written to tape file #24. Page 1

This program evaluates the coupling term G in accordance to Elliott's definition in its paper An Improved Design Procedure for Small Arrays of Shunt Slots", IEEE Trans. on Antennas and Propagation, Vol. AP-31, No. 1, Jan. 1983. The files which consist this program are: RUN ERICSSON: DATAG2 DIEL: OUT G2 DIEL: G2 DIEL.FTN: POLES MUTUAL.FTN: YIJ DIEL MUTUAL.FTN: This program links all the subroutines. Input File Output File Main Program Subroutine G2 DIEL Subroutine F EER Subroutine NORM Subroutine CUBSPL Subroutine SPOLES Subroutine YIJ DIEL Subroutine LIMIT Subroutine GREEN Function GXXM Function GZXM Function HZXE

Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine FUNCT GREI ARIS ADONIS BESS1 TAIL BESS2 BSJO F DATASLOT ARRANGE MUTUAL ARRANGE MUTUAL.FTN:

# # # # ## # #44 # # # ## # # a p oll o d om a in CAEN/Apollo # ######4 #44#444444 # # # # # # # 44 #4 #444 # ## ## # ## # 4 94 4444 # #4# # # #4 4 4 44944 4 K K K P KKK K P K K K A K A A K A A A A AAAAAAA K A A K A A eeeeee e eeeae e e eeeeee TTTTTTT T T T T T T rrrrr r r r r rrrrr r r r r EEEEFEEE 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 rrrrr r r r r rrrrr r r r r U1 U U U U U U1 U U1 U UUUU n n nfl n n n n nn nf n nn n n i I I I I I cccc sasss C C S c assss C a C c a a CCCC Ssss ass a S ass a a a a Ssss 0000 o 0 o 0 o 0 o o 0000 ni n nn n n n n n n n ni nfl ni n //tera/uaera/katehi/tape/run-ericsson LAST MODIFIED ON: 89/04/24 10:54 AM FILE PRINTED: 89/04/24 11:00 AM # # ## # # # 4 444 4 4

Print file "run ericsson" Page 1 BIND G2 DIEL.BIN MUTUAL SLOT ERICSSON.BIN POLES MUTUAL.BIN YIJ DIEL MUTUAL.BIN ARRANGE MUTUAL.BIN -B SLOT ERICSSON

ft ft ft # # ft ftft f # f tf tf # ft ft ftf tf f tf t t# f a pao 110 d om ai n CAEN/Apollo ft## #####ftt ftf ftf ft ftug 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 2 2 222 gggg 2 2 g g 2 g 22 22 2 q ggg 2 g g2 gggg 2222222 H H H H H H HHHHHHH H H H H H H II I I I I I I I II ddddd d d d d d d d d ddddd aa a a a a aaaaaa a a a a ttttt t 0 t 0 0 aa a a a a aaaaaa a a a a ddddd d d d d d d d d ddddd I I 1 I I i eeeeee e eeeee e a eeeeeea 1 1 1 1I11 11 ftftftftftftft#ftft#ft#ft#ft ftftftft ftftftftftft##ftftft# ftftftftftftftftft####ft## ftftftft#ftftftft#ftftft### //tera/users/katehi/tape/data-g2_diel LAST MODIFIED ON: 89/04/24 10:34 AM FILE PRINTED: 89/04/24 10:48 AM #f#####M##fttfftf f

Print file "datag2_diel " Page 1 C C ---- Dielectric constant --- C 2.62 C C ---- Substrate Thickness --- C 0. 050 C C ---- Conductor Thickness --- C 0.00001 C C ---- Dimensions of the Waveguide ---- C 0.6858 0.3048 C C ---- Half lengths of the slots C 0.17595 0.16595 C C ---- Transverse offsets of the slots ---- C 0.24765 0.43815 C C ---- Longitudinal offets of the slot ---- C 0.73053 C C ---- Slot widths ---- C 0.047625 0.047625 C C ---- Lower Limit of the Tail Contribution ---- C 100.0 C C ---- Error in the evaluation of the series ---- C l.D-6

it # i titi t ti # it# ### #iitt it 4 iti titi titi ## ti itt i it # i titi t ti i t# a p oll o d orna i n CAEN/Apol lo # # # # # # # # # 9 9 4 4 4 4 11 4 # # # # # # # # # # 4 4 4 # 4 # # # # # # # # # 9 9 4 9 4 9 , 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 0000 U U ttttt o 0 U U t o 0 U U t o 0 U U S o 0 U U S 0000 UUUU S 2 222 2 gggg 2 2 g g 2 g 22 22 2 g ggg 2 g g 2 gggg 2222222 ddddd d d d d d d d d ddddd I eeeeee I I e 1 I eeeee 1 I e 1 i e 1 1 eeeeee 111111 / /tera/users/katehi/tape/out-g2-dieI LAST MODIFIED ON: 89/04/24 10:34 AM FILE PRINTED: 8 9/ 04 /2 410:56 AM it itit it itit it it#itititititit# ititt### ##t#ttt

Print file "outg2_diel" Dielectric Constant of the Substrate 0.2620000E+01 Substrate Thickness 0.5000000E-01 Conductor Thickness 0.1000000E-04 Dimensions of the Waveguide AW= 0.6858000E+00 BW= 0.3048000E+00 Half lengths of the slots SLOT L1= 0.1759500E+00 SLOTL2= 0.1659500E+00 Longitudinal offset of the slots SLOTDX= 0.7305300E+00 Slot Widths SLOT W1= 0.4762500E-01 SLOT W2= 0.4762500E-01 Lower Limit of Tail Contribution 0.1000000E+03 Error in the evaluation of the series ERROR= 0.1000000E-05 Normalization Constant 0.1000000E+01 L= 1 RCUR= 0.0000000E+00 L= 2 RCUR= 0.9801714E-01 L= 3 RCUR= 0.1950903E+00 L= 4 RCUR= 0.2902847E+00 L= 5 RCUR= 0.3826834E+00 L= 6 RCUR= 0.4713967E+00 L= 7 RCUR= 0.5555702E+00 L= 8 RCUR= 0.6343933E+00 L= 9 RCUR= 0.7071068E+00 L= 10 RCUR= 0.7730104E+00 L= 11 RCUR= 0.8314696E+00 L= 12 RCUR= 0.8819213E+00 L= 13 RCUR= 0.9238795E+00 L= 14 RCUR= 0.9569404E+00 L= 15 RCUR= 0.9807853E+00 L= 16 RCUR= 0.9951847E+00 L= 17 RCUR= 0.1000000E+01 Page 1

Print file "rout g.~diel Fv ag Page 2 L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= 1 8 L= 1 9 IL= 2 0 L= 21 4=22 14 23 1L= 24 I.J= 25 14J 2 6 14J 27 L= 2 8 14J= 2 9 14 30 1=31 1=32 L= 33 1 AICUR= 2 AICUR= 3 AICUR= 4 AICUR= 5 AICUR= 6 AICUR= 7 AICUR= 8 AICUR= 9 AICUR= 10 AICUR= 11 AICUR= 12 AICUR= 13 AICUR= 14 AICUR= 15 AICUR= 16 AICUR= 17 AICUR= 18 AICUR= 19 AICUR= 20 AICUR= 21 AICUR= 22 AICUR= 23 AICUR= 24 AICUR= 25 AICUR= 26 AICUR= 27 AICUR= 28 AICUR= 29 AICUR= 130 AICUR= 31 AICUR= 32 AICUR= -33 AICUR= N SLOT= 1 N SLOT= 1 N-SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N S LOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N SLOT= 1 N-SLOT= 1 RCUR= 0.9951847E+00 RCUR= 0.9807853E+00 RCUR= 0.9569404E+00 RCUR= 0.9238795E+00 RCUR= 0.8819213E+00 RCUR= 0.8314696E+00 RCUR= 0.7730104E+00 RCUR= 0.7071068E+00 RCUR= 0.6343933E+00 RCUR= 0.5555702E+00 RCUR= 0.4713967E+00 RCUR= 0.3826834E+00 RCUR= 0.2902847E+00 RCUR= 0.1950903E+00 RCUR= 0.9801.714E-01 RCUR=-0. 4102 069E-09 0. OOOOOOOE+00 0. OOOOOOOE+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+00 0. 0000000E+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+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 L= 1 CUR= L= 2 CUR= L= 3 CUR= L= 4 CUR= L= 5 CUR= L= 6 CUR= L= 7 CUR= L= 8 CUR= L= 9 CUR= L= 10 CUR= L= 1 1 CUR= L= 12 CUR= L= 13 CUR= L= 14 CUR= L= 15 CUR= L= 16 CUR= L= 17 CUR= 0. OOOOOOOE+00 0. 9801714E-01 0. 1950903E+00 0. 2902847E+00 0.382 6834E+00 0. 4713967E+00 0. 5555702E+00 0. 6343933E+00 0. 7071068E+00 0. 7730104E+00 0.8314 696E+00 0. 8819213E+00 0. 9238795E+00 0. 95694 04E+00 0. 9807853E+00 0. 9951847E~00 0. 1000000E+01 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. 0000000E+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00

Print file "~out g.~dielv Pae Page 3 L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= N' S LOT= 1I N'S LOT= 1I N'S LOT= 1I N SLOT= 1I N SLOT= 1I N'SLOT= 1I N'SLOT= 1I N SLOT= 1I NfSLOT= 11 N SLOT= 11 N SLOT= 11 N SLOT= 11 N SLOT= 11 N SLOT= 11 N SLOT= 11 N-SLOT= 11 1 RCUR (L) = 2 RCUR (L) = 3 RCUR (L) = 4 RCUR (L) = 5 RCUR (L) = 6 RCUR (L) = 7 RCUR (L) = 8 RCUR (L)= 9 RCUR (L) = 1 0 RCUR (L) = 1 1 RCUR (L) = 1 2 RCUR (L) = 1 3 RCUR (L) = 1 4 RCUR (L) = 1 5 RCUR (L) = 1 6 RCUR (L) = 1 7 RCUR (L) = 1 8 RCUR (L)= 1 9 RCUR (L) = 2 0 RCUR (L) = 2 1 RCUR (L) = 2 2 RCUR (L) = 2 3 RCUR (L) = 2 4 RCUR (L) = 2 5 RCUR (L) = 2 6 RCUR (L) = 2 7 RCUR (L) = 2 8 RCUR (L) = 2 9 RCUR (L) = 3 0 RCUR (L) = 3 1 RCUR (L) = 1 8 1 9 2 0 2 1 22 2 3 24 25 2 6 27 2 8 2 9 3 0 31 32 33 CUR= CUR= CUR= CUR== CUR= CUR= CUR= CUR= CUR= CUR= CUR= CUR= CUR= CUR= CUR= CUR=-0.4102069E-09 0. OOOOOOOE+00 0. 1045285E+00 0.2079117E+00 0. 3090170E+00 0. 4067366E+00 0. 5000000E+00 0. 5877852E+00 0. 6691306E+00 0.743144 8E+00 0. 8090170E+00 0. 8660254E+00 0. 9135454E+00 0. 9510565E+00 0. 9781476E+00 0. 9945219E+-00 0. 1000000E+01O 0. 9945219E+00 0. 9781476E+00 0. 9510565E+00 0. 9135454E+00 0. 8660254E+00 0. 8090170E+00 0. 7431448E+-00 0. 669130 6E+-00 0. 5877852E+00 0. 5000000E+00 0. 4067366E+00 0. 3090170E+-00 0. 2079117E+00 0. 1045285E+00 0.7932 658E-,12 AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (IL) = 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) = 0. 9951847E+00 0. 9807853E+00 0.95694 04E+00 0. 9238795E+00 0. 8819213E+OC 0.8314 696E+00 0. 7730104E+00 0. 7071068E+0C 0. 6343933E+OC 0. 5555702E+OC 0. 4713967E+0C 0. 3826834E+0C 0. 2902847E+OC 0. 1950903E+OC 0. 9801714E-01 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~00 *.OOOOOOOE+00 0.OOOOOOOE+00 0. OOOOOOOE+00 0.000000 OE~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+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.000 OOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0.000000 OE+00 0. OOOOOOOE+00 Number of elements to be evaluated for the mutual interactions I= 1 J= 2 NSSL= 99 0.1905000E+00 Offsets for the dielectric layer and number of corresponding eleme-:nts I= 1 OFFSET= 0.1905000E+00 I= 2 OFFSET= 0.OOOOOOOE+00 NOFFS= 99 NOFFS= 0 SLOTS and corresponding offsets in the dielectric I= 1 J= 2 INSS= 1 OFFSET= 0.1905000E+00

Print file "Outg2_dielP Page 4 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 O.640756827E+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= IJ= I J= I J= I J= I J= I J= I J= I J= I J= I J= IJ= IJ= IJ= IJ= I J= IJ= IJ= IJ= IJj= 1 2 3 4 5 6 7 8 9 10 11 1 2 13 14 15 16 17 18 119 20 21 2 2 23 214 2! 5 2 6 YSD=-0. 1336066E-05 YSD=-0. 1335278E-05 YSD=-0.1332916E-05 YSD=-0.1328984E-05 YSD=-0.1323492E-05 YSD=-0.1316454E-05 YSD=-0.1307886E-05 YSD=-0.1297808E-05 YSD=-0.1286245E-05 YSD=-0.1273222E-05 YSD=-0.1258771E-05 YSD=-0.124292 6E-05 YSD=-0.1225724E-05 YSD=-0.1207205E-05 YSD=-0.1187414E-05 YSD=-0.1166393E-05 YSD=-0. 1144194E-05 YSD=-0. 1120868E-05 YSD=-0. 1096468E-05 YSD=-0.1071049E-05 YSD=-0. 1044671E-05 YSD=-0.1017393E-05 YSD=-0.9892756E-06 YSD=-0. 9603837E-06 YSD=-0.9307815E-06 YSD=-0. 9005344E-06 0.2025418E-05 0.1999338E-05 0.1923216E-05 0.1803263E-05 0.1649357E-05 0.1474246E-05 0.1292181E-05 0.1116486E-05 0.9561593E-06 0. 8126619E-06 0.6794269E-06 0.5463025E-06 0.4085598E-06 0.2753354E-06 0.1698209E-06 0.1167152E-06 0.1220969E-06 0.1606052E-06 0.18424 61E-06 0.1532349E-06 0.6887217E-07 -0.1981857E-07 -0.4837193E-07 0.1134345E-07 0.1213307E-06 0.2001468E-06

Print file "out g2_diel" Pae Page 5 I J= I J= I J= IJj= IJ= I J= I J= IJ= IJj= I J= IJj= IJj= I J= I J= IJj= IJj= I J= I J= IJj= I J= IJj= Jj= Jj= I J= I J= I J= I J= IJj= I J= I J= IJj= IJj= IJj= I J= IJj= IJj= IJ= IJ= I J= IJj= I J= I J= I J= IJj= I J= IJj= IJj= I J= IJj= I J= I J= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= I J= 2 7 2 8 29 3 0 31 32 33 3 4 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 54 55 5 6 57 5 8 5 9 6 0 61 62 63 6 4 65 6 6 6 7 6 8 6 9 7 0 7 1 72 7 3 7 4 7 5 7 6 7 7 7 8 7 9 8 0 8 1 82 8 3 8 4 185 8 6 8 7 8 8 8 9 90 91 92 YSD=-0. 8697093E-06 YSD=-0. 8383743E-06 YSD=-0. 8065973E-06 YSD=-0.7744471E-06 YSD=-0. 7419927E-06 YSD=-0. 7093030E-06 YSD=-0. 67644 68E-06 YSD=-0. 6434 921E-06 YSD=-0. 6105077E-06 YSD=-0.5775607E-06 YSD=-0.5447172E-06 YSD=-0.5120475E-06 YSD=-0.4796019E-06 YSD=-0.4474570E-06 YSD=-0.4156614E-06 YSD=-0.3842 918E-06 YSD=-0. 3533924E-06 YSD=-0. 3230218E-06 YSD=-0.2932330E-06 YSD=-0.2640776E-06 YSD=-0.2356037E-06 YSD=-0.2078578E-06 YSD=-0.1808828E-06 YSD=-0.15472 02E-06 YSD=-0. 1294 074E-06 YSD=-0.1049797E-06 YSD=-0. 814 6906E-07 YSD=-0.58904 98E-07 YSD=-0. 3731316E-07 YSD=-0. 1671714E-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= YSD= 0. 2863389E-08 0.214 1152E-07 0. 3891360E-07 0.55358 61E-07 0. 7073939E-07 0. 8505119E-07 0. 9829265E-07 0.1104 652E-06 0. 1215734E-06 0. 1316245E-06 0. 1406285E-06 0. 1485986E-06 0.15 5 54 9 9 E- 06 0.1615008E-06 0. 1664716E-06 0. 1704851E-06 0. 1735664E-06 0. 1757428E-06 0. 1770434E-06 0. 1774991E-06 0. 1771428E-06 0. 1760088E-06 0. 1741329E-06 0. 1715522E-06 0.168304 9E-06 0. 1644305E-06 0. 1599688E-06 0.154 9609E-06 0.14944 84E-06 0. 1434729E-06 0.13707 67E-06 0. 1303021E-06 0. 1231914E-06 0. 1157868E-06 0. 1081300E-06 0. 1002625E-06 0.1864835E-06 0. 9305222E-07 0. 1381068E-08 -0. 4461526E-08 0. 8831194E-07 0. 2060933E-06 0.250557 8E-06 0. 1858709E-06 0.7272 820E-07 0. 1523836E-07 0. 6629375E-07 0.1 7 82 64 6 E- 06 0. 2464069E-06 0.2064180E-06 0.94734 10E-07 0.139380O1E-07 0.3517 073E-07 0. 1307341E-06 0.2017249E-06 0. 1740779E-06 0. 6977564E-07 -0. 1595174E-07 -0. 8506504E-08 0. 7367623E-07 0. 1391508E-06 0. 1150288E-06 0. 1856938E-07 -0. 6189339E-07 -0.562 9693E-07 0. 1789738E-07 0.7537130E-07 0. 5016955E-07 -0. 3854086E-07 -0. 1079326E-06 -0. 9671453E-07 -0. 26 48 05 1 E- 07 0. 2246270E-07 -0. 57304 99E-08 -0. 8626091E-07 -0. 1411647E-06 -0. 1203939E-06 -0. 522227 3E-07 -0. 1206536E-07 -0. 4372259E-07 -0. 1152164E-06 -0. 1538414E-06 -0. 1222995E-06 — 0. 5623792E-07 -0.2534 352E-07 -0. 60220 03E-07 — 0. 1217431E-06 -0. 1436529E-06 -0. 1022115E-06 -0. 3976521E-07 -0. 1881904E-07 -0. 5628800E-07 -0. 1071111E-06 -0. 1130817E-06 -0. 6415928E-07 -0. 7725475E-08 0. 2612182E-08 -0. 365824 9E-07 -0. 7633645E-07 -0. 68192 61E-07 -0. 1523171E-07 0.324 8329E-07

Print file "out g2_diel Pr Page 6 IJj= IJj= IJj= IJj= I J= IJj= IJj= 93 94 95 96 97 98 99 YSD= 0.9222526E-07 0.3186113E-07 YSD= 0.8405846E-07 -0.7976951E-08 YSD= 0.7580152E-07 -0.3671732E-07 YSD= 0.6749293E-07 -0.1710458E-07 YSD= 0.5917015E-07 0.3596153E-07 YSD= 0.5086946E-07 0.7247149E-07 YSD= 0.4262614E-07 0.6110565E-07 Interactions between slots 2 and 2 NOEL1= 33 NOEL2= 31 NS12= 66 DIST= 0.7301800E+00 GSLOT= 0.1971653E+00 0.3682245E+00 CMC EXT=-0.2111288E+00 NOEL1= 33 NOEL2= 31 NS12= 67 DIST= 0.7412433E+00 GSLOT= 0.2134013E+00 0.4087589E+00 CMC EXT=-0.2343699E+00 G SLOT= 0.1976789E+00 0.3695068E+00 C MC=-0.2118640E+00 0.1133431E+00

4 4 4 44 # #44# #444 4# 4# #44#4# # # # #44 #44444#444 # #44 4 44# ##4# #44 # # #444 a p ollo d o m a i n CAEN/Apollo 44#######4##4#49 4##444444####~##4 ##44444####4#4#fi K K K K K K KKK K K K K K K A AA A A A A AAAAAAA A A A A TTTTTTT T T T T T T EEEEEEE E E EEEEE E 0 EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I I III 22222 gggg 2 2 g g 2 g 22222 g ggg 2 g g2 gggg 2222222 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 I 1 111111 ff fIff f ff0f0. f. t t t t t n n nn n nn r n n. n nr, n n #44 4 #4 4 44444444 #4444#444444444## #444444444444444 4#444#444####4#4# //tera/users/katehi/tape/g2_diel.ftn LAST MODIFIED ON: 89/04/24 10:34 AM FILE PRINTED: 89/04/24 10:51 AM 4444##444#4~#u4~ 4444444444 444## 444444444444444g 444444444#444 44

Print file "g2_diel.ftn" Page 1 C This program calls G2 DIEL.FTN IMPLICIT REAL*8 (A-H,O-Z) COMMON/DAT SUB/ER,H, T,DLX,AW,BW,A,TPI,TPI2,PI,El,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 C................................................................... OPEN(UNIT=05,FILE='DATA G2 DIEL',STATUS='OLD') OPEN(UNIT=06,FILE='OUT G2 DIEL',STATUS='OLD') OPEN(UNIT=07,FILE='PLOT G2 DIEL',STATUS='APPEND') C................................................................. C Read the values of the geometrical parameters C PI=3. 141592653589D0 C C C ---- Dielectric constant --- READ (5,1) DIEL ER 1 FORMAT (///6X,D16.9) WRITE (6,2) DIEL ER 2 FORMAT(10X,'Dielectric Constant of the Substrate'/10X,E14.7//) C C ---- Substrate Thickness --- C READ (5,1) DIEL H WRITE (6,3) DIEL H 3 FORMAT(10X,'Substrate Thickness'/10X,E14.7//) C C ---- Conductor Thickness --- C READ (5,1) T WRITE (6,4) T 4 FORMAT (10X,'Conductor Thickness'/lOX,E14.7//) C C -- Dimensions of the Waveguide ---- C READ (5,1) AW READ (5,10) BW 10 FORMAT(6X,D16.9) WRITE (6,5) AW,BW 5 FORMAT(10X,'Dimensions of the Waveguide'/10X,'AW=',E14.7/ *10X,'BW=',E14.7//) C C ---- Limit for offsets: Small Offset< OFFLIM --- C Large Offset> OFFLIM C OFFLIM=0.1 C C - Half lengths of the slots C READ(5,1) SLOT L1 READ(5,10) SLOT L2 WRITE (6,29) SLOT L1,SLOTL2 29 FORMAT(2X,'Half lengths of the slots'// *l0X,'SLOT L1=',E14.7/10X,'SLOTL2=',E14.7//) C C ----- Transverse Offsets of the Slots in the Waveguide ---- C READ(5,1) SLOT Y1 READ(5,10) SLOT Y2 7 FORMAT(10X,'Transverse Offsets of the Slots'/lOX, *'SLOT Y1=',E14.7/10X,'SLOT Y2=',E14.7) WRITE(6, 60)

Print file "g2_diel. ftn" Page 2 C C ---- Longitudinal Offsets of the Slots --- C READ(5,1) SLOT DX WRITE (6,11) SLOTDX 11 FORMAT(2X,'Longitudinal offset of the slots'// *10X,'SLOT DX=',E14.7) WRITE(6,60) 60 FORMAT(1OX,//) C C ---- Slot Widths --- C READ(5,1) SLOT W1 WRITE(6,14) SLOT W1 14 FORMAT(10X,'Slot Widths'/10X,'SLOT-W1=',E14.7) READ(5,10) SLOT W2 WRITE (6,16) SLOT W2 16 FORMAT(10X,'SLOT W2=',E14.7) 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'/10X,E14.7//) C C ---- Error in the evaluation of the series ---- C READ (5,1) ERROR WRITE (6,27) ERROR 27 FORMAT(10X,'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)=0O.DO 37 CONTINUE C C Initialize NOFF to 1 C NOFF=1 C ISOFF=1 C C --- —------------------- ------------------------- CALL G2 DIEL(DIEL ER,DIEL H,SLOT L1,SLOT L2,SLOT W1, *SLOTW2,SLOTDX,SLOTY1,SLOTY2,SLOTDRX,SLOTDRY,ISOFF,G_SLOT) C WRITE (6,100) DIELER,DIELH,SLOTL1,SLOTL2,SLOTW1, *SLOT W2,SLOT DX,SLOT DY,G SLOT 100 E'ORMAT(//'****************************************** / *2X,'ER=',E14.7,4X,'H=' E14.7//7X,'SLOT 1',14X,'SLOT 2'/ *2X,'Ll=',E14.7,2X,'L2=' E14.7/2X,'Wl='E14.72X, 'W2=', *E14.7//10X, 'Xoffset=' E14.7/OX, 'Yoffset=' E14 7///10X, *'Mutual Coupling=',E14.7//) STOP END C* *** ** **** * ******************* **** *********** * ***************** * *********** *** * * *** **k** * The name of this program is: G2 DIEL Calculates the mutual coupling between two longitudinal slots C All dimensions are normalized with respect to free space wavelength (* * * C k ** * * * * *C * * * **** * * * C * * * * * * * * ********* * **

Print file "g2_diel. ftn" C Subroutines and functions needed: C C YIJ-DIEL-MUTUAL C POLES MUTUAL C ARRANGE-MUTUAL C C C **********INPUT************* C PI C DIEL ER C DIEL H C SLOT L1 C SLOT L2 C SLOT W1 C SLOT W2 C SLOT DX C SLOT-DY C C IS_OFF=1 Evaluate Mutual coupling betw( C half a waveguide wavelength al C IS-OFF=2 Evaluate mutual coupling vs. C C **********OUTPUT************ C C GSLOT C C Page 3 een two slots spaced part slot distance C COMMENTS: All lengths are in wavelengths in free space C SUBROUTINE G2-DIEL(DIEL-ER,DIEL-H,SLOT-L1,SLOT-L2,SLOT-W1, *SLOT W2,SLOTDX,SLOT_Y1,SLOT_Y2,SLOTDRX,SLOT_DRY,IS_OFF,G_SLOT) IMPLICIT REAL*8 (A-H,O-Z) REAL*4 RCUR,AICUR,CINC,ABS-CF REAL*4 RG SLOT1,RG SLOT2,RCMC EXT1,RCMC EXT2 REAL*4 AIGSLOT1,AIG SLOT2,AICMC EXT1,AICMCEXT2 COMPLEX YS,YS1S2,CI,SUM MD,CUR SLOT COMPLEX YS ADM,CONSTN,CONSTM,Z12 MD COMPLEX Y12 MD,CF,G-SLOT,CMC-EXT EXTERNAL F EER C.................................................................... 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 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 COMMON/SPLINE/RCUR(60),AICUR(60) C COMMON/MAN/IBMATR(260,260) C COMMON/WAY OUT/RS10(7,7,200),XS10(7,7,200),SGMN(7,7,200), *RIJ(7,7,200) C COMMON/B01/BJ0, BJ1 C COMMON/RES/CUR SLOT(30,60),DLX-SLOT(30) PI=3. 141592653589D0 ICUR=i1 we assume a form for the resonant field

Print file lg2_diel. ftn" C distribution ICUR=1 C C NSLOTS=2 we evaluate the mutual coupling between two slots C NSLOTS=2 C C NSL includes also the end points C NSL(1)=31 NSL(2)=31 C DLXSLOT(1)=2.DO*SLOT L1/(NSL(1)-1) DLXSLOT(2)=2.D0*SLOT-L2/(NSL(2)-1) C ER=DIEL-ER H=DIELH CALL F-EER CI=(0.0,1.0) C YOFF(1)=SLOT-Y1 YOFF(2)=SLOT-Y2 C WS(1)=SLOT-W1 WS(2)=SLOT W2 WSDELTA(1)=0.0 WSDELTA(2)=0.0 C C C..................................................................... C C Find minimum subsection length C DLX=DLX-SLOT(1) IF (DLX SLOT(2).LT.DLX) THEN DLX=DLX-SLOT(2) END IF C NXOFF(1)=0 NXOFF(2)=SLOT-DX/DLX+I C C Interpolate the current on the slots C DO 1 N SLOT=1,NSLOTS DLX DIF=DABS(DLX SLOT(N SLOT)-DLX) IF (DLX DIF.GT.1.D-5) THEN CALL CUBSPL(ICUR,DLX,1,N SLOT,1) CALL CUBSPL(ICUR,DLX,1,N-SLOT,2) DLX SLOT(N SLOT)=DLX L MAX=NSL(NSLOT) DO 7 L=I,L MAX CUR SLOT(N SLOT,L)=RCUR(L)+CI*AICUR(L) WRITE (6,77) N SLOT,L,CUR SLOT(N-SLOT,L) 77 FORMAT(5X,'N SLOT=',I4,2X,'L=',I4,2X,'CUR=', * E14.7,2X,E14.7) 7 CONTINUE ELSE L -MAX=NSL(N-SLOT) DO 502 L=1,L MAX RCUR(L)=SIN(PI* (L-l) / (NSL(N-SLOT)-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 Page 4

Print file "g2_diel.ftn" CUR SLOT(NSLOT,L)=RCUR(L)+CI*AICUR(L) 505 CONTINUE END IF 1 CONTINUE C C C Call MUTUAL SLOT to find external mutual coupling between the C two slots C CALL MUTUALSLOT(NSLOT) C C I MIN=1 I MAX=2 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 (X,'IJ=',I4,1X,'YSD=',E14.7,2X,E14.7) 14 CONTINUE 12 CONTINUE 11 CONTINUE C DLG=1.DO/DSQRT(1.DO-1.DO/ (2.DO*AW)**2) C C IS OFF=2 Evaluate the mutual coupling between two slots vs. C slot separation distance C C IS OFF=1 Evaluate the mutual coupling between two slots half C waveguide wavelength appart C IF (IS OFF.EQ.2) THEN IZ MIN=NSL(1) IZ MAX=NXOFF(2) IZSTEP=5 ELSE IF (IS OFF.EQ.1) THEN IZ MIN=SLOT DX/DLX IZ MAX=IZ MIN+1 IZ STEP=1 END IF C DO 108 IZ=IZ MIN,IZ MAX,IZSTEP NXOFF(2)=IZ CALL ARRANGE MUTUAL C C Find the center of 1st slot C NCO=(NSL(1)+1)/2 C C Find the center of 2nd slot C NCI=(NSL(2)+1)/2 C C Find the corresponding row for IBMATR C I ROW=0 C C Find the corresponding collumn for IBMATR C I COL=NSL(1) Page 5

Print file "g2 diel.ftn"P Page 6 C C Find the Mutual coupling term C SUMMD=(O.O,O.O) C C ICUR = 1 We assume a form for the current C IN MIN=1 INMAX=NSL(l) DO 4 IN=INMININMAX CONSTN=CURSLOT(1,IN)/CURSLOT(1,NCO) C C WRITE (6,88) IN,CONSTN C 88 FORMAT(2X,'N=1',2X,'IN=',I4,5X,'CONSTN=', C * E14.7,2XE14.7//) C IM MIN=l IM MAX=NSL(2) DO 5 IM=IM MIN,IM MAX CONSTM=CUR SLOT(2,IM)/CURSLOT(2,NCI) CON=CONSTN*CONSTM IJ=I ROW+IN KJ=I COL+IM IK=IBMATR (IJ, KJ) C C WRITE (6,89) IMCONSTMIJKJ,IK C 89 FORMAT(10X,'IM= ',I4,2X,'CONSTM=',El4.7,2XEl4.7/ C * 10X,'IJ=',I4,2X,FKJ=,I4, 2X,'IK=',i4) C SUM MD=SUM MD+SNGL(CON)*YSADM(1,2,IK) 5 CONTINUE 4 CONTINUE 3 CONTINUE DIST X= (NXOFF (2) -NXOFF (1)) *DLX DIST LG=DIST X/DLG GO=(f.DO/(120U.DO*PI))*DSQRT(1.DO-1.DO/(2.DO*AW)**2) Y12 MD=-SUMMD/SNGL(GO) C C C C Evaluation of the coupling term Mc C C C B01=DSQRT(1.DO-(0.5DO/AW)**2) B012=BO1*BO1 ARGYO=PI*YOFF (1) /AW ARGP=PI*DLX* (BO1+1.DO) ARGM=PI*DLX* (BO1-1.DO) ARGO =AKO *DLX C WRITE (*,*) ARGYO,ARGO C ARG==BO1*2.DO*PI*DLX CALL BSJO(PI*WS(1)/(2.DO*AW)) DINC=(1.DO/(2*PI*AW)) **2*(lDO/(AW*BW))*(l.DO/DSIN(ARGO)) DINC=DINC*DCOS(ARGYO)*BJO*DSIN(ARGM)*DSIN(ARGP)/(BOl* (1.DO-B012)) CINC=SNGL(DINC) CF=(O.0,O.O) JQMAX=NSL (1) DO 71 JQ=1,JQMAX ARGX=ARG*FLOAT(JQ-l) EC=DCOS(ARGX) ES=DSIN(ARGX) CF=CF+SNGL(DSIN( (JQ-l) *PI/(NSL(l) -1)))

Print file llg~_djel.ftnrF * ~* (SNGL (EC) +CI*SNGL (ES)) 71 CONTINUE CF=CINC*CF ABSCF=CABS (OF) C S LENG= (NSL (1) -1) *DLX AS LENG=1.DO/(2.DO*S LENG) FN=AS LENG*DCOS (BO1*PI*SLENG) *DSIN(ARGYO) / (A7SLENG**2-B012) CMP=FN4**2/ (BO1* (2.DO*PI*BW) **2* (2.DO*PI*AW) *4.D0*AW**5) C G SLOT=-CI*SNGL(CMP)*Yl2 MD/ABS CF**2 CRCEXT=Yl2_MD!/(SNGL(32.D-O*AW**2*PI**2*AW*BW) *ABS CF**2) C WRITE (6, 66) DIST_-XGSLOT,CMCEXT 66 FORMAT(//lOX,'DIST=',El4.7,2X,'GSLOT=',E14.7,2X,E14.7, * 2X,'CMCEXT=',El4.7,2X,El4.7//) C IF (ISOFF.EQ.2) THEN WRITE (6, 52) DIST_X 52 FORMAT(///2X,'LONGITUDINAL DISTANCE IN', * ' WAVELENGTHS IN FREE SPACE=',E14.7/) WRI TE (6,r5 3) D I ST_LG 53 FORMAT(///2X, 'LONGITUDINAL DISTANCE IN', * ' WAVELENGTHS IN WAVEGUIDE=',E14.7/) WRITE (6, 60) SUM MD, 60 FORMAT (/10X,'SUMMID=',E14.7,5X,El4.7//) WRITE (6,62) Y12_MD 62 FORMAT(/10X,'Y12 M4D=',E14.7,2X,El4.7//) WRITE (6,82) GSLOT 82 FORMAT (1OX,'GSLOT=',El4.7,2X,El4.7) WRITE (6,83) CMCEXT 83 FORMAT (1OX,'C M7C=',E14.7,2X,E14.7) WRITE (7,707) DISTXY12_MDGSLOTCMCEXT 707 FORMAT (El4.7, 2X, El4.7, 2XEl4.7', 2X, El4.7',2X, El4.7) ELSE IF (ISOFF.EQ.1) THEN IF (IZ.EQ.IZMIN) THEN RG- SLOT1=REAL(G SLOT) AIG SLOT1=AIMAG(G SLOT) RCMC EXT1=REAL(CMC EXT) AICMC EXT1=AIMAG(CMC EXT) ELSE IF (IZ.EQ.IZMAX) THEN RG SLOT2=~REAL(G SLOT) AIG~ SLOT2=AIMAG_(G SLOT) RCM~C EXT2=REAL(CM-C EXT) AICMC_ EXT2=AIMAG(C-MCEXT) END IF END IF 108 CONTINUE IF (ISOFF.EQ.1) THEN SC1=(IZ MAX*DLX-SLOT DX) /DLX SC2=(SLOT DX-IZ MIN*DLX)/DLX GSLOT=(RG' SLOTTf+CI*AIG SLOT1)*SNGL(SC1)+ * (RG SLOT2+CI*AIG SLOT2) *SNGL (SC2) WRITE (6,82) G SLOT CMC EXT=(RCMC EfXT1+CI*AICMC EXT1) *SNGL(SC1)+ * (RCMC EXT2+CI*AICMC EXT2) *SNGL (SC2) WRITE (6, 83) CMCEXT EJND IF 1000 CONTINUE S TOP END C THIS FUNCTION EVALUTES EER S)UBROUTINE F EER Page 7

Print file "g2_diel. ftn" IMPLICIT REAL*8 (A-H,O-Z) C C ---- Normalization Constant ---- 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 C EER-ER+(.D-ER) * (W/H) / (l.D+W/H) C EER=1. 0 WRITE (6,100) EER 100 FORMAT(10X,'Normalization Constant'/10X,E14.7/) RETURN END C*********k************************************************************* C NORMALIZATION SUBROUTINE C C THIS SUBROUTINE DENORMALIZES WITH RESPECT TO CNORM_OLD C AND NORMALIZES AGAIN WITH RESPECT TO CNORM NEW C******************* ************************ SUBROUTINE NORM(CNORM OLD,CNORMNEW) 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/MUTUALADMAT/YSADM(7,7,200),YSWADM(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 C WS (1)=WS (1) *CNORM IF (NSLOTS.GT.1) THEN DO 15 I=2,NSLOTS WS (I)=WS(I) *CNORM 15 CONTINUE END IF C WSDELTA(1)=WSDELTA(1)*CNORM IF (NSLOTS.GT.1) THEN DO 18 I=2,NSLOTS Page 8

Print file Fg2_diel.ftnv" Page 9 WSDELTA (I) =WSDELTA (I) *CNORM 18 CONTINUE END IF RETURN END C................... Spline Interpolation...................... SUBROUTINE CUBSPL(ICUR,DLX,IEND,N-SLOT,IRX) IMPLICIT REAL*8 (A-H,O-Z) COMPLEX CURRENT,CURSLOT,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) C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/RES/CUR-SLOT(30,60),DLX-SLOT(30) 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) C C Computation of matrices X,Y C NCO0OLD=(NSL(N-SLOT)+1) /2 NSLOT NEW=2*NINT((NSL(N SLOT)-1)*DLX SLOT(NSLOT) / (2.0*DLX))+1 NCO NEW=(NSLOTNEW+1)/2 ITEST=(NSLOT NEW+1)-NC0 NEW*2 ICUR=(NSLOTNEW+1)/2 IMIN=1 I MAX=NSL(N SLOT) L-MAX=NSLOT-NEW C WRITE (*,*) L-MAX C IF (ICUR.EQ.1) GO TO 500

Print file "g2_diel. ftn" DO 1 I=I MIN,I MAX X(I)=DLX SLOT(N SLOT)*FLOAT(I-1) REAL CUR=REAL(CUR SLOT(NSLOT,I)) CURRENT=-CC*CUR SLOT(N SLOT,I) AIMAG CUR=REAL(CURRENT) IF (IRX.EQ.1) Y(I)=DBLE(REALCUR) IF (IRX.EQ.2) Y(I)=DBLE(AIMAGCUR) WRITE (6,67) I,X(I),Y(I) 67 FORMAT(10X,'I=',I4,2X, 'X=',E14.7,2X,'Y=',E14.7) 1 CONTINUE C -------------------------------------------- C I Compute the N-2 rows I C ----- -------------- C NM2=N-2 NM1=N-1 DX1=X (2) -X (1) DY1=(Y(2) -Y(1)) /DX1*6.DO DO 10 I=1,NM2 DX2=X(I+2)-X (I+1) 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 DXI=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 C 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 C C Back substitution C A(NM2,4)=A(NM2,4)/A(NM2,2) DO 120 I=2,NM2 Page 10

Print file 'g2_diel.ftn" Page 11 J=NM1-I A(J, 4)=(A(J,4)-A(J, 3)*A(J+1,4) )/A(J, 2) 120 CONTINUE C C Place values in S-vector C DO 130 I=1,NM2 S(I+1)=A(I,4) 130 CONTINUE C C Set S(1) and S(N) according to end conditions C GO TO (150,160,170), IEND C C Linear ends C 150 S(1)=0. S(N)=0. GO TO 200 C 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)+DX1*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*DLXSLOT(NSLOT)) BI(I)=S(I)/2.DO CI (I) = (Y(I+1) -Y(I) ) /DLX SLOT(N-SLOT)-(2.DO*S(I)+S (I+1)) * *DLX SLOT(N SLOT)/6.DO 210 DI(I)=Y(I) C C Re-evaluate nsl(nslot) and curres(nslot) C DO 2 I=1,I CUR IF (ITEST.EQ.0) NCP=NCO NEW+I-1 IF (ITEST.EQ.1) NCP=NCONEW+I NCM=NCO NEW-I+1 DISTP= (NCP-1) *DLX DISTM=(NCM-1)*DLX RIP=DISTP/DLXSLOT(NSLOT) IP=INT(RIP) IF ((RIP-IP).GT.0.999) IP=IP+1 IF(IP.EQ.NSLOT NEW) IP=IP-1 RIM=DISTM/DLX SLOT(NSLOT) IM=INT(RIM) IF((RIM-IM).GT.0.999) THEN IM=IM+1 END IF DIFP=DISTP-FLOAT(IP)*DLXSLOT(N SLOT) DIFM=DISTM-FLOAT(IM)*DLXSLOT(NSLOT) DIFP2=DIFP*DIFP DIFM2=DIFM*DIFM DIFP3=DIFP2*DIFP

Print file F'g2diel. ftn " Page 122 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 (Al(TM) *DIFM3+BI (TM) *DIFM2+ * ~CI (TM)*DIFM+DI (TM)) WRITE (6,666) NCPIPNCMIMRCUR(NCP),RCUR(NCM) 666 FORMAT(2X,'NCP=',I4,2X,'IP=',14,2X,'NCM=',I4,2X,FIM=', * 14/30X,'RCUR(NCP)=',El4.7,2X,'RCUR(NCM)=',El4.7) END IF IF (IRX. EQ. 2) THEN IP=IP+1 IM=IM+ 1 AICUR (NCP) =SNGL (ATI(IP) *DIFP3+BI (IP) *DIFP2+ * ~CI (IP) *DIFP+DI (IP)) AICUR (NCM) =SNGL (AT(TM) *DIFM3+BI (TM) *DIFM2+ * CI (TM) *DIFM+DI (TM) ) WRITE (6,777) NCP,IP,NCM,IM,AICUR(NCP),AICUR(NCM) 777 FORMAT(2X,'NCP=,',I4,2X,'TP=',I4,2X,'NCM=',T4,2X,'TM=', * I4/1OX,'AICUR(NCP)=',El4.7,2X,'AICUR(NCM)=',El4.7) END IF 2 CONTINUE C IF (IRX.EQ.2) NSL(NSLOT)=NSLOT NEW RETURN C 500 CONTINUE DO 502 L=1,L MAX IF (IRX. EQ. 1) THEN RCUR (L) =SIN (PI* (L-1) /(NSLOTNEW-i)) WRITE (6,601) LRCUR(L) 6 01 FORMAT(1OX,'L=,',I4,2X,'RCUR=',El4.7) ELSE IF (IRX.EQ.2) THEN AICUR(L)=0.0 WRITE (6,602) LAICUR(L) 602 FORMAT(2X,'FL=',I4,2X,'AICUR=',El4.7) END IF 502 CONTINUE C IF (IRX.EQ.2) NSL(NSLOT)=NSLOT NEW C RETURN END

# ####N N *1 N ###fN ####f##### a pao 1 10 d oma i n CAEN/Apoll10 * ## I # N # Nf Nf fi # # #4##### N NNNNN# f N# #I # ## I# N# # # I # #M #I IU N 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 H H t H H E H H EEEEE HHHHHHH E H H E H H ~EEEEEE H H I II I I II ppppp p p p p ppppp p ~p 0000 1 0 ol1 0 01I 0 0 1 0 0 1 0000 111111 eeeeee ssss e s eeeee ssss e s a s S eeeeee ssss 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 U U U U U U U U Uuuu aa 1 a a I a a 1 aaaaaa I a a I a a 111111 fiffififf if if f f f f if if if ttttt t t t t t n n nfl n nf n n ni nfl n n n n n //tera/users/katehi/ta pa/poles mutual.iftn LAST MODIFIED ON: 89/04/24 10:36 AM FILE PRINTED: 89/04/24 11:00 AM NNNNN#N N*#I*#*## NNNN#N#Ntf##ff#f NNNNNN#N###I#*## # # # #INUI INII I *N# # # NM # IIN NN# # # ###INN# # I ###I #I # NNANI

ififif #if if if if ##if ififififif if#ifif### if######## if tiff fit tttt#ttt# a p oll o d om a i n CAEN/Apollo if If if if M Mifi If if if if K K K K K K KKK K K K K K K A TTTTTTT A A T A A T A A T AAAAAAA T A A T A A T EEEEEEE E E EEEEE E E EEEEEEE H H H H H H HHHHHHH H H H H H H I II I I I I I III y y I y I I y I y I y I j j j j j j ji jii _ _ __ ddddd d d d d d d d d ddddd I i i i i i eeeeee 1 e I eeeee 1 e I e 1 eeeeee 111111 in i u u mm mm U U inininn m U U in m u U n in U U in m uuuu ttttt t t t t t o u U U o u o u o u 0000 aa 1 a a I a a 1 aaaaa-a I a a 1 a a 111111 fff fff //tera/users/katehl/tape/yIjjdieljnutual. ftn LAST MODIFIED ON: 89/04/24 10:37 AM FILE PRINTED: 89/04/24 11:07 AM t#tttt##tt###### tf##tt#t####f##$ t tiffS if Sit itf itS S if if ii iff If iffi if ### ifi if iffi if ifi if tf i if if I f IfI

4 # #' # # # 4 # # # # # t # # # a p o 1 1 o d o m a i n CAEN/Apollo if ## iif#iffii# ## ###4 *ifif# Iftf# 0##I # #I fif K K K K K K KKK K K K K K K A TTTTTTT A A T A A T A A T AAAAAAA T A A T A A 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 aa rrrrr rrrrr aa a a r r r r a a a a r r r r a a aaaaaa rrrrr rrrrr aaaaaa a a r r r r a a a a r r r r a a n n nn n nn n n n n n nn n n gggg eeeeee g g e g eeeee g ggg e g g e gggg eeeeee m m mm mm m mm m m m m m m m u u u u u u u u u u 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 f f f f f... f. f... f UUUU //tera/users/katehi/tape/arrange_mutual. ftn LAST MODIFIED ON: 89/04/24 10:38 AM FILE PRINTED: 89/04/24 10:47 AM I *###1 I ####if##if####hif## IliffI#########*# if #5 I #5 155fII I # fif # # # 15 51 # II1

This program evaluates the resonant length of an isolated dielectric covered waveguide longitudinal slot as a function of the cover's relative dielectric constant, cover thickness, slot width and slot offset. The files which consist RUN KO: DATA WAVE KO: OUT WAVE KO: GENERATE KO.FTN: MAIN WAVE KO.FTN: POLES.FTN: YIJ DIEL KO.FTN: this program are: This program links all the subroutines. Input File Output File Main Program Subroutine DATA Subroutine F EER Subroutine MAIN WAVE Subroutine NORM Subroutine SPOLES Subroutine YIJ DIEL Subroutine LIMIT Subroutine GREEN Function GXXM Function GZXM Function HZXE Subroutine FUNCT Subroutine GREI Subroutine ARIS Subroutine ADONIS

Subroutine BESS1 Subroutine TAIL Subroutine BESS2 Subroutine BSJO Subroutine F Subroutine DATA SLOT Subroutine YIJ WAVE Subroutine S14 Subroutine VBJO Subroutine INV WAVE Subroutine MINVCD Subroutine SUBMCD YIJ WAVE KO.FTN: INV WAVE KO.FTN

t##%#### ######### a p o 1 1 o d o m a i n CAEN/Apollo I##*f### ##~## K K K K K K KKK K K K K K K rrrrr r r r r rrrrr r r r r A TTTTTTT AA T A A T A A T AAAAAAA T A A T A A T EEEEEEE H H E H H E H H EEEEE HHHHHHH E H H E H H EEEEEEE H H k k k k kkkk k k k k k k III I I I I I III 000 0 0 0 0 0 0 0 0 0 0 000 U U f f U U nn n u u n n n u un n n u u n nn UUUU n n #BtXtBtiXXXIXX tfBfffffXXIIXXXXXX BBtXXltXXXXIX ffXXIXXXXXbXIXX //tera/users/katehi/tape/run kO LAST MODIFIED ON: 89/04/24 10:55 AM FILE PRINTED: 89/04/24 11:01 AM I',III # I 4t#" a. a ii444 I I #I##4 e sIIIt # #4*

Print file "run kO" Page 1 BIND GENERATE KO.BIN MAIN WAVE KO.BIN POLES.BIN YIJ DIEL KO.BIN YIJ WAVE KO.BIN INV WAVE KO.BIN -B SLOT KO

4#4 4 4 44 44# # #I# ### a p ollIo d om ai n CAEN/Apol110 4 ##44444I 444 #40f0 #44###4#44444# 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 EEEEE E E EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I I II I ddddd aa d d a a d d a a d d aaaaaa d d a a ddddd a a ttttt t 0 0 0 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 ____ 0 00 k k 0 0 k k 0 0 kkkk 0 0 k k 0 0 k k, 0 0 k k 00 0 //tera/users/katehi/tape/data-wave-kO LAST MODIFIED ON: 89/04/24 10:41 AM FILE PRINTED: 89/04/24 10:49 AM 4 44 4 444 44 44444#44######## 44#4###44444444 #4444444 4 4444 #4 4#*t4t#4#4#4#44 #44#4#####44##4

Print file "data_wave_kO" Page 1 C C ---- Dielectric constant --- C 1.00001 C C ---- Substrate Thickness --- C 0.0185208 C C ---- Conductor Thickness --- C 0.000001 C C ---- Dimensions of the Waveguide ---- C 0.6858 0.3048 C C ---- Offset of the slot in the waveguide ---- C 0.24765 C C ---- Slot width ---- C 0.037041656 C C ---- Slot Excess Width C 0.0 C C ---- Subsection Length ---- C 0.01061861 C C ---- Lower Limit of the Tail Contribution --- C 100.0 C C ---- Number of Points on the Slot ---- C 29 C C ---- Number of Offsets for the dielectric ---- C 1 C C ---- Offsets Between the Slots - C 0.0 C C ---- Error in the evaluation of the series C 1.D-6

411*141 1*#*##### 111 4*11 #####t### 4 #4##*1######## a pa 110 darnm a i n CAEN/Apoli10 1 11*444 1111 4 11 #4 K K K K K K KKK K K K K K K A TTTTTTT A A T A A T A A T AAAAAAA T A A T A A T EEEEEEE E E EEEEE E E EEEEEEE H H H H H H HHHHHHH H H H H H H fIII I I I I II 0 00 0000 U U 0 0 U U 0 0 U U 0 0 U U 0 0 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 eeeeee V v e V v eeeee V v e V V e VV eeeeee ____ k k k k kkkk k k k k k k 0 0l 0l C 0 0 0 0 0 0 000 //tera/users/katehi/tape/out wave-kO LAST MODIFIED ON: 89/04/24 10:42 AM FILE PRINTED: 8 9/ 04 /2 410:57 AM # #11*4 1*1111# # 11 III 010t **I# 4 114,,3,g,,,,41 8II#4 #4 eteeeeOs 4# # 4 4 ##4

Print file "out wave kO" Dielectric Constant of the S 0.1000010E+01 Substrate Thickness 0.1852080E-01 Conductor Thickness 0.1000000E-05 Dimensions of the Waveguide AW= 0.6858000E+00 BW= 0.3048000E+00 Offset of the slot Y0= 0.2476500E+00 Slot Width 0.3704166E-01 Slot Excess Width 0.0000000E+00 Subsection Length 0.1061861E-01 Lower Limit of Tail Contribu 0.1000000E+03 Number of Points on the Slot NS1= 29 Number of Offsets 1 Page 1 ubstrate tion Offset 0.0000000E+00 Error in the evaluation of the series ERROR= 0.1000000E-05 Normalization Constant 0.1000000E+01 No TE waves excited in the substrate There are 1 TM waves excited in the substrate 1 0.628318532E+01 CONST=-0.2598055E+00 Contribution to admittance from the dielectric

Print: file "out wave kO"P Page 2 29 K= 1 YS= 0.1002559E-02 K= 2 YS= 0.7594118E-03 K= 3 YS= 0.1823966E-03 K= 4 YS=-0.3795267E-03 K= 5 YS=-0.6229520E-03 K= 6 YS=-0. 4838263E-03 K= 7 YS=-0.1460914E-03 K= 8 YS= 0.1231841E-03 K= 9 YS= 0.1715970E-03 K= 10 YS= 0.4242733E-04 K= '11 YS=-O. 1029601E-03 K= I12 YS=-0.1354520E-03 K= 13 YS=-0.5194168E-04 K= 14 YS= 0.5109497E-04 K= 15 YS= 0.8030815E-04 K= 16 YS= 0.2531187E-04 K= 17 YS=-0.4774246E-04 K= 18 YS=-0.6836429E-04 K= 19 YS= —0.2560176E-04 K= 20 YS= 0.3169442E-04 K= 21 YS= 0.4874380E-04 K= 22 0.1239588E-05 0.1239039E-05 0.1237388E-05 0.1234641E-05 0.1230803E-05 0.1225879E-05 0.1219882E-05 0.1212821E-05 0.1204710E-05 0.1195565E-05 0.1185401E-05 0.1174240E-05 0.1162101E-05 0.1149008E-05 0.1134985E-05 0.1120058E-05 0.1104256E-05 0.1087607E-05 0.1070143E-05 0.1051895E-05 0.1032897E-05 GS=-0.2516107E-01 GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= 0.5752941E-02 0.3901441E-02 0.1392694E-02 0.6719672E-03 0.3718589E-03 0.2273453E-03 0.1498514E-03 0.1046965E-03 0.7660745E-04 0.5819261E-04 0.4559021E-04 0.3665173E-04 0.3011761E-04 0.2521611E-04 0.2145622E-04 0.1851521E-04 0.1617484E-04 0.1428383E-04 0.1273495E-04 0.1145070E-04 FSD=-0.3825282E-02 FSD=-0.2894459E-02 FSD=-0.6858614E-03 FSD= 0.1463932E-02 FSD= 0.2393130E-02 FSD= 0.1857090E-02 FSD= 0.5611756E-03 FSD=-0.4711988E-03 FSD=-0. 6564383E-03 FSD=-0. 1609708E-03 FSD= 0.3964225E-03 FSD= 0.5208779E-03 FSD= 0.2006697E-03 FSD=-0.1942577E-03 FSD=-0.3060789E-03 FSD=-0.9508056E-04 FSD= 0.1850742E-03 FSD= 0.2641650E-03 FSD= 0.1002649E-03 FSD=-0.1193086E-03 FSD=-0. 1845544E-03

Print file "out wave kO"P Page 3 YS= 0.1612558E-04 K= 23 YS=-0.2803458E-04 K= 24 YS=-0.4038068E-04 K= 25 YS=-0.1405806E-04 K= 26 YS= 0.1923609E-04 K= 27 YS= 0.2434937E-04 K= 28 YS=-0.2341931E-05 K= 29 YS=-0.3149200E-04 0.1013185E-05 0.9927938E-06 0.9717603E-06 0.9501232E-06 0.9279212E-06 0.9051940E-06 0.8819817E-06 0.8583254E-06 GS= 0.1037405E-04 GS= 0.9462366E-05 GS= 0.8683310E-05 GS= 0.8012028E-05 GS= 0.7429186E-05 GS= 0.6919574E-05 GS= 0.6471105E-05 GS= 0.6074082E-05 FSD=-0.5939474E-04 FSD= 0.1099803E-03 FSD= 0.1573622E-03 FSD= 0.5649807E-04 FSD=-0.7107564E-04 FSD=-0.9059981E-04 FSD= 0.1179821E-04 FSD= 0.1236017E-03 -0.1239588E-05 0.6545712E-02 -0.1239039E-05 -0.1487230E-02 -0.1237388E-05 -0.1009410E-02 -0.1234641E-05 -0.3610188E-03 -0.1230803E-05 -0.1757844E-03 -0.1225879E-05 -0.9795505E-04 -0.1219882E-05 -0.5936047E-04 -0.1212821E-05 -0.3816813E-04 -0.1204710E-05 -0.2614994E-04 -0.1195565E-05 -0.1929681E-04 -0.1185401E-05 -0.1508615E-04 -0.1174240E-05 -0.1196968E-04 -0.1162101E-05 -0.9328924E-05 -0.1149008E-05 -0.7198956E-05 -0.1134985E-05 -0.5764108E-05 -0.1120058E-05 -0.4965028E-05 -0.1104256E-05 -0.4469533E-05 -0.1087607E-05 -0.3935100E-05 -0.1070143E-05 -0.3263409E-05 -0.1051895E-05 -0.2611225E-05 -0.1032897E-05 -0.2179382E-05 -0.1013185E-05 -0.2000734E-05 -0.9927938E-06 -0.1919463E-05 -0.9717603E-06 -0.1753102E-05 -0.9501232E-06 -0.1461122E-05 -0.9279212E-06 -0.1159895E-05 -0.9051940E-06 -0.9866981E-06 -0.8819817E-06 -0.9579209E-06 -0.8583254E-06 -0.9576725E-06 YS=-0.1981945E-06 0.6591158E-02 YS=-0.1979879E-06 -0.1507198E-02 YS=-0.1973685E-06 -0.1012458E-02 YS=-0.1963376E-06 -0.3604004E-03 YS=-0.1948974E-06 -0.1740809E-03 YS=-0.1930509E-06 -0.9551602E-04 YS=-0.1908018E-06 -0.5822075E-04 YS=-0.1881550E-06 -0.3800676E-04 YS=-0.1851158E-06 -0.2627964E-04 YS=-0.1816908E-06 -0.1893080E-04 YS=-0.1778869E-06 -0.1416586E-04 YS=-0.1737122E-06 -0.1084505E-04 YS=-0.1691752E-06 -0.8533298E-05 YS=-0.1642856E-06 -0.6821965E-05 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Print file "out wave kO" ag Page 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 22 2 3 2 4 25 2 6 2 7 2 8 2 9 YS=-0.1590534E-06 YS=-0.1534 897E-06 YS=-0. 1476059E-06 YS=-0. 1414144E-06 YS=-0.1349281E-06 YS=-0. 1281604E-06 YS=-0. 1211256E-06 YS=-0. 1138382E-06 YS=-0.1063135E-06 YS=-0. 9856713E-07 YS=-0. 9061527E-07 YS=-0. 8247447E-07 YS=-0. 7416173E-07 YS=-0. 65694 37E-07 YS=-0. 570 9005E-07 -0. 553738 9E-05 -0.4554 695E-05 -0. 3788376E-05 -0. 3175634E-05 -0. 2682359E-05 -0. 227 9050E-05 -0. 1946268E-05 -0. 166708 9E-05 -0. 1433393E-05 -0. 1234 178E-05 -0. 1064 086E-05 -0. 91784 05E-06 -0. 7913422E-06 -0. 6815385E-06 -0. 5857473E-06 Total Admittance Matrix-No cay-slot contribution I = I = I = I1= I1= I = I = I1= I = I = I1= I1= I1= I = I1= I1= I1= I1= I = I1= I = I1= I = I1= I = I1= I = I1= I = 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 22 2 3 2 4 25 2 6 27 2 8 2 9 YS=-0. 1437783E-05 YS=-0. 1437 027E-05 YS=-0. 1434757E-05 YS=-0. 1430979E-05 YS=-0. 142570 CE-OS YS=-0. 1418 930E-05 YS=-0. 1410 684E-05 YS=-0.1400976E-05 YS=-0. 138982 6E-05 YS=-0. 1377255E-05 YS=-0. 136328 8E-05 YS=-0.1347952E-05 YS=-0. 133127 6E-05 YS=-0. 13132 94E-05 YS=-0. 1294038E-05 YS=-0. 127354 8E-05 YS=-0.12518 62E-05 YS=-0. 122 9021E-05 YS=-0. 1205071E-05 YS=-0.1180QOSSE-OS YS=-0.1154 023E-05 YS=-0. 1127 024E-05 YS=-0. 1099107E-05 YS=-0. 107 0327E-05 YS=-0. 104 0738E-05 YS=-0.1010396E-05 YS=-0. 9793557E-06 YS=-0.9476761E-06 YS=-0. 9154155E-06 0. 1313687E-01 -0. 2994427E-02 -0. 2021868E-02 -0. 7214 192E-03 -0. 3498653E-03 -0. 1934711E-03 -0. 1175812E-03 -0. 76174 90E-04 -0. 5242 958E-04 -0. 3822761E-04 -0.29252 OOE-04 -0. 2281473E-04 -0. 178 6222E-04 -0. 1402092E-04 -0. 1130150E-04 -0. 9519723E-05 -0. 8257910E-05 -0. 7110734E-05 -0. 5945768E-05 -0. 4890274E-05 -0. 4125650E-05 -0. 3667823E-05 -0. 3352856E-05 -0. 2987280E-05 -0. 25252 08E-05 -0. 2077735E-05 -0. 1778040CE-OS -0. 1639459E-05 -0. 1543420CE-OS I= Electric field on the slot Amplitude Phase 1 2 3 4 5 6 7 8 0. 1614435E+00 0. 8273641E-01 -0. 5025021E-01 -0.2428 600E+00 -0. 4815925E+00 -0. 758 6125E+00 -0. 1066368E+01 -0. 1397839E+01 -0. 7345520OE+01 -0. 1036104E+02 -0. 1336159E+02 -0. 1597132E+02 -0. 1832 820E+02 -0. 2044400E+02 -0.223322 8E+02 -0. 2399779E+02 0.73472 93E+01 0. 1036137E+02 0. 1336168E+02 0.1597 316E+02 0. 1833453E+02 0. 2045807E+02 0. 2235773E+02 0. 2403847E+02 -0. 8874 093E+02 -0. 895424 8E+02 -0. 902154 8E+02 -0.90871.17E+02 -0. 9150516E+02 -0. 921250 9E+02 -0. 92733 '80E+02 -0. 9333364E+02",

Print file "out wave kO" 9 -0.1746198E+01 -0.2544281E+02 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 -0.2104734E+01 -0.2466826E+01 -0.2825941E+01 -0.3175624E+01 -0.3509470E+01 -0.3821083E+01 -0.4104057E+01 -0.4352017E+01 -0.4558642E+01 -0.4717673E+01 -0.4822832E+01 -0.4867701E+01 -0.4845575E+01 -0.4749359E+01 -0.4571324E+01 -0.4302834E+01 -0.3932360E+01 -0.3448498E+01 -0.2800800E+01 -0.2093092E+01 -0.2666779E+02 -0.2767223E+02 -0.2845498E+02 -0.2901487E+02 -0.2935096E+02 -0.2946276E+02 -0.2935008E+02 -0.2901312E+02 -0.2845240E+02 -0.2766889E+02 -0.2666376E+02 -0.2543817E+02 -0.2399267E+02 -0.2232681E+02 -0.2043834E+02 -0.1832252E+02 -0. 1596583E+02 -0.1335653E+02 -0.1035675E+02 -0.7342163E+01 0.2550266E+02 0.2675071E+02 0.2778196E+02 0.2859496E+02 0.2918814E+02 0.2956003E+02 0.2970951E+02 0.2963563E+02 0.2933771E+02 0.2881528E+02 0.2806820E+02 0.2709641E+02 0.2589971E+02 0.2447709E+02 0.2282636E+02 0.2094332E+02 0.1882097E+02 0.1644297E+02 0.1379453E+02 0.1072878E+02 0.7634684E+01 Page 5 -0. 9392618E+02 -0 9451267E+02 -0. 9509414E+02 -0.9567160E+02 -0.9624 606E+02 -0.9681844E+02 -0. 9738956E+02 -0.9796012E~02 -0.9853086E+02 -0.9910256E+02 -0.9967614E+02 -0.1002526E+03 -0.1008328E+03 -0.1014179E~03 -0.1020090E+03 -0.1026075E+03 -0.1032158E+03 -0.1038365E+03 -0.1044'769E+03 -0.1051327E+03 -0.1059117E+03 Back-scattering Coefficient =-0.2175354E-02 -0.1632286E-01 Forward-scattering Coeffi.ient =-0.2176553E-02 -0.1712974E-01 ER= 0.100001OE+01 H= 0.1852080E-01 YO= 0.2476500E+00 W= 0.3704166E-01 Guessing initial values: DLX= 0.1061861E-01 RIM=-0.2175354E-02 AIM=-0.L632286E-01 LENGTH= 0.3185583E+00 ZSELF= 0.3823972E-02 0.3277946E-01 No TE waves excited in the substrate There are 1 TM waves excited in the substrate 1 0. 628318532E+01 CONST=-0.2351324E+00 Contribution to admittance from the dielectric 29 K= 1

Print file "out wave kO" Page 6 YS== 0.1097995E-02 K= 2 YS= 0.8062614E-03 K= 3 YS= 0.1313041E-03 K= 4 YS=-0. 4819159E-03 K= 5 YS=-0.6805859E-03 K= 6 YS=:-0. 4453604E-03 K= 7 YS=-0.5296727E-04 K= 8 YS= 0.1806018E-03 K= 9 YS= 0.1435202E-03 K= 10 YS=-0. 3497005E-04 K= 11 YS=-0. 1487566E-03 K= 12 YS=-0.1065498E-03 K= 13 YS= 0.1709776E-04 K= 14 YS= 0.8805848E-04 K= 15 YS= 0.5039743E-04 K= 16 YS=-0.3625177E-04 K= 17 YS=-0.7593658E-04 K= 18 YS=-0.3634243E-04 K= 19 YS= 0.3032945E-04 K= 20 YS= 0.5310360E-04 K= 21 YS= 0.1632496E-04 K= 22 YS=-0. 3293042E-04 K= 23 0.1369962E-05 0.1369290E-05 0.1367275E-05 0.1363920E-05 0.1359233E-05 0.1353225E-05 0.1345908E-05 0.1337297E-05 0.1327409E-05 0.1316267E-05 0.1303892E-05 0.1290310E-05 0.1275551E-05 0.1259644E-05 0.1242624E-05 0.1224523E-05 0.1205380E-05 0.1185234E-05 0.1164127E-05 0.1142101E-05 0.1119200E-05 0.1095472E-05 GS=-0.2779911E-01 GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= GS= 0.6432111E-02 0.4333653E-02 0.1524415E-02 0.7263372E-03 0.3994324E-03 0.2435742E-03 0.1604687E-03 0.1121980E-03 0.8222182E-04 0. 6258459E-04 0.4914715E-04 0.3961316E-04 0.3263904E-04 0.2740266E-04 0.2338141E-04 0.2023198E-04 0.1772229E-04 0.1569149E-04 0.1402555E-04 0.1264203E-04 0.1148027E-04 FSD=-0. 4628884E-02 FSD=-0. 3394885E-02 FSD=-0.5403978E-03 FSD= 0.2051492E-02 FSD= 0.2888161E-02 FSD= 0.1888789E-02 FSD= 0.2256135E-03 FSD=-0. 7635965E-03 FSD=-0. 6060590E-03 FSD= 0.1502286E-03 FSD= 0.6321469E-03 FSD= 0.4532373E-03 FSD=-0. 7049714E-04 FSD=-0.3708923E-03 FSD=-0. 2111408E-03 FSD= 0.1560399E-03 FSD= 0.3241964E-03 FSD= 0.1565214E-03 FSD=-0. 1257995E-03 FSD=-0.2221231E-03 FSD=-0. 6618762E-04 FSD= 0.1425556E-03

Print file "out wave kO" Page 7 YS=-0.4210184E-04 K= 2 4 YS=-0.819777OE-05 K= 25 YS= 0.2547904E-04 K= 26 YS= 0.2069454E-04 K= 27 YS=-0. 1486701E-04 K= 28 YS=-0.3893746E-04 K= 29 YS=-0. 2181683E-04 0.1070962E-05 0.1045722E-05 0.1019799E-05 0.9932468E-06 0.9661160E-06 0.9384598E-06 0.9103319E-06 GS= 0.1049487E-04 FSD= 0.1814694E-03 GS= 0.9651423E-05 GS= 0.8923433E-05 GS= 0.8290291E-05 GS= 0.7735774E-05 GS= 0.7246977E-05 GS= 0.6813542E-05 FSD= 0.3791817E-04 FSD=-0.1046469E-03 FSD=-0. 8427927E-04 FSD= 0.6644313E-04 FSD= 0.1684616E-03 FSD= 0.9598280E-04 -0.1369962E-05 -0.1369290E-05 -0.1367275E-05 -0.1363920E-05 -0.1359233E-05 -0.1353225E-05 -0.1345908E-05 -0.1337297E-05 -0.1327409E-05 -0.1316267E-05 -0.1303892E-05 -0.1290310E-05 -0.1275551E-05 -0.1259644E-05 -0.1242624E-05 -0.1224523E-05 -0.1205380E-05 -0.1185234E-05 -0.1164127E-05 -0.1142101E-05 -0.1119200E-05 -0.1095472E-05 -0.1070962E-05 -0.1045722E-05 -0.1019799E-05 -0.9932468E-06 -0.9661160E-06 -0.9384598E-06 -0.9103319E-06 0.6546066E-02 -0.1504384E-02 -0.1014743E-02 -0.3579829E-03 -0.1722710E-03 -0.9516435E-04 -0.5719043E-04 -0.3667588E-04 -0.2536525E-04 -0.1897947E-04 -0.1483403E-04 -0.1153514E-04 -0.8792733E-05 -0.6824797E-05 -0.5691862E-05 -0.5059468E-05 -0.4464702E-05 -0.3706260E-05 -0.2939676E-05 -0.2422599E-05 -0.2210443E-05 -0.2110370E-05 -0.1900193E-05 -0.1551344E-05 -0.1225026E-05 -0.1071558E-05 -0.1063012E-05 -0.1030694E-05 -0.8502520E-06

$ # # # # # I ****** a p o 1 1 o d o m a i n CAEN/Apollo tflgfffftttff##ttd fffffttffffffft#aaRa fffXttsts8lffff#J flssfffftsttAt8b#t 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 gggg eeeeee n n eeeeee rrrrr aa g g e nn n e r r a a g eeeee n n n eeeee r r a a g ggg e n n n e rrrrr aaaaaa g g e n nn e r r a gggg eeeeee n n eeeeee r r a a ttttt eeeeee t e t eeeee t e t e t eeeeee 000 k k 0 0 ffffff k k 0 0 f kkkk O0 ffff k k 0 0... f k k 0 0... f k k 000... f ttttt. n t nn n t n n n t n n n t n nn t n n //tera/users/katehi/tape/generate k0.ftn LAST MODIFIED ON: 89/04/24 10:42 AM FILE PRINTED: 89/04/24 10:52 AM ttfftXbiWfXXXXXiX fffsttXtgtXfXXtfX tbftfftt#fXXXtXi itXtffBXXXXXXX #f~ftff$*$f*1la

Print file "generatekO.ftn" Page 1 C..................................................................................... C The name of this file is: GENERATE-KO.FTN C C This program evaluates the resonant length of dielectric covered waveguide C slots. C.................................................................................... IMPLICIT REAL*8 (A-H,O-Z) EXTERNAL F EER REAL SLOT V,R SELF COMPLEX BACKSCAT,FORW-SCAT,ZSELF C COMMON/SCAT-COEF/BACK-SCAT,FORW-SCAT C COMMON/SLOT-VOLTAGE/SLOT V C --- —------------------------------------------------------------- C COMMON/DAT-SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, C *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF C C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C C COMMON/RES/S LENGTH(30),DLX-RES(30),Z-SELF-RES(30), C *CUR RES(30,60) C --- —-------------------------------- ------------------------------- COMMON/DAT/ER,H,T,DLX,AW,BW,YO,A,TPI,TPI2,PI,W,El,E2,EER,AK0,AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/IOFF/INS,INS1S2 C OPEN(UNIT=05,FILE='DATA WAVE K0', STATUS='OLD') OPEN(UNIT=06,FILE='OUT WAVE KO',STATUS='OLD') OPEN(UNIT=07,FILE='PLOTRES',STATUS='APPEND') C C Subroutine DATA reads the values of the geometrical C parameters C CALL DATA C C Number of desired iterations C NLIM=15 C C Tolerance value for the imaginary part of BACKSCAT C AIM-TOL=1.D-3 C ERO=ER YOO=YO WO=W HO=H C DY=0.03429 DER=1. 0 DW=0.015 DH=0.02 C IY VALUES=1 IER VALUES=12 IW VALUES=1 IH VALUES=1 DLX0=DLX C DO 1 IW=1,IW VALUES W=WO+(IW-1)*DW DO 2 IY=1,IY VALUES YO=YOO+(IY-1)*DY DO 3 IER=1,IER VALUES

Print file "generate_kO. ftn" ER=ERO+ (IER-1) *DER DO 4 IH=1,IH VALUES H=HO+ (IH-1) *DH CALL F EER SIG ADD=1.0 AMPL ADD=1.0 DLX1=DLXO DLX=DLX1 CALL MAIN WAVE C --- — ------------------------------------------------------ WRITE (*,300) ER,H,YO,W WRITE (6,300) ER,H,YO,W 300 FORMAT(//'***********************************' * I//O1X,'ER=',E14.7,X, H=', E14.7, * 1X,'Y0=',E14.7,1X'W=',E14.7//) AIM1=AIMAG (BACK SCAT) RIM1=REAL (BACK SCAT) C --- —-------- --- ------ ----- ---— I --- —-------------------- WRITE (6,340) DLX,RIM1,AIM1 WRITE (*,340) DLX,RIM1,AIM1 340 FORMAT('Guessing initial values:',3X, * 'DLX=',E14.7,2X,'RIM=',El4.7,2X, * 'AIM=',E14.7) C --- —------- -- - ------ ---------------------------------------- S LENGTH=(NS1+1)*DLX Z SELF=-2.0*BACK SCAT/(1.0+BACK SCAT) C --- —------------------------------------------------------------- WRITE(6,640) S LENGTH,Z SELF WRITE(*,640) S LENGTH,Z SELF 640 FORMAT(20X,'LENGTH=',E14.7,2X, * 'Z SELF=',E14.7,1X,E14.7) C --- —------------------------------------------- IF (ABS(AIM1).LT.AIM TOL) THEN AIM=AIM1 N=0 GO TO 100 END IF ADD=-AIM1 / 30 10 DLX2=DLX+ADD DLX=DLX2 IF (DLX.GT.0.03) GO TO 500 CALL MAIN WAVE AIM2=AIMAG (BACK SCAT) RIM2=REAL(BACK SCAT) IF (ABS(AIM2).LT.AIM TOL) THEN AIM=AIM2 N=0 GO TO 100 END IF C --- —----------- ------ -------- ------------------------- WRITE (6, 340) DLX2,RIM2,AIM2 WRITE(*,340) DLX2,RIM2,AIM2 C --- —-------- ---------------------------------------------------------- S LENGTH=(NS1+1) *DLX Z SELF=-2.0*BACK SCAT/(1.0+BACK SCAT) C --- —------------------------------------------------------ WRITE(6,640) S LENGTH,Z SELF WRITE(*,640) S-LENGTH,Z-SELF C --- —---------------------------------------------------------------- IF (AIM1*AIM2.GT. 0) THEN DIF= (AIM2-AIM1) /AIM1 IF (DIF.LT.0) THEN AIM1 =AIM2 DLX1=DLX2 END IF GO TO 10 Page 2

Print file "generate_kO. ftn" END IF C --- —---------- --- --------- ------------------------------------------ WRITE (*,12) DLX1,AIM1,DLX2,AIM2 12 FORMAT(10X,'Initial Values:','dlxl=',E14.7,2X, * 'aiml=',E14.7/10X,15X,'dlx2=',E14.7,2X,'aim2=' *,E14.7/) C --- —------------------------------------------------- IF (AIM1.LT.0) THEN AIMR=AIM1 DLXR=DLX1 DELTADLX=DLX2-DLX1 ELSE AIMR=AIM2 DLXR=DLX2 DELTA DLX=DLX1-DLX2 END IF DO 20 N=1,NLIM DELTA DLX=DELTA DLX*0.5DO DLX=DLXR+DELTA DLX CALL MAIN WAVE RIM=REAL(BACK SCAT) AIM=AIMAG(BACKSCAT) C --- —-- -------------------------------- WRITE (*,13) N,DLX,RIM,AIM 13 FORMAT(10X,'Iteration #',I4,'dlx=', * E14.7,2X,'rim=',E14.7,lX,'aim=',E14.7) C- ----- ---------------------------- ------------------------ S LENGTH=(NS1+) *DLX Z SELF=-2.0*BACKSCAT/(1.0+BACKSCAT) C --- —-------- ----------------------------------- WRITE(6,640) S LENGTH,Z SELF WRITE(*,640) SLENGTH,Z-SELF C -------------- ---------------------------------------------------- IF (ABS(AIM).LT.AIM TOL) GO TO 100 IF (AIM.LT.0) THEN AIMR=AIM DLXR=DLX ENDIF 20 CONTINUE C --- —- ------------------------------------------------------------------------ WRITE(*,15) NLIM,DLXR,AIMR WRITE(6,15) NLIM,DLXR,AIMR 15 FORMAT(//10X,'Tolerance not met after',14, * 'iterations'/10X,'dlxr=',E14.7,2X,'aimr=', * E14.7/) C --- —----------------------------------------------------------------- GO TO 600 C --- —---- ---------------------------------------------------------- 500 WRITE (6, 16) DLX1, AIM1, DLX2, AIM2 WRITE(*,16) DLX1,AIM1,DLX2,AIM2 16 FORMAT(//10X,'The initial values do not have' *,' opposite sign'/10X,'dlxl=',E14.7,2X,'aiml=' *,,E14.7/1OX,'dlx2=',E14.7,2X,'aim2=',E14.7/) C --- —----------------------------- -------------------------------- GO TO 600 100 AIMR=AIM RIMR=RIM DLXR=DLX C --- —------- -------- ---------------------------------------- WRITE(*,17) N, DLXR, RIMR, AIMR WRITE (6,17) N,DLXR, RIMR,AIMR 17 FORMAT(//1OX,'Tolerance met after',I4,2X, ~* 'iterations.' /1X, 'dlxr=',E14.7,2X, 'rimr=',E14.7,2X,'aimr=',E14.7) C ------- ---------------------------------- ---------------------------- S LENGTH= (NS1+1) *DLX Page 3

Print file "generatekO.ftn" Z SELF=-2.0*BACK SCAT/(1.0+BACKSCAT) R SELF=REAL (Z SELF) C --- —----- ----------------------------------------------- WRITE(6,640) S LENGTH,R SELF WRITE(*,640) S-LENGTH,RSELF WRITE(7,707) ER,H,S LENGTH,R SELF,SLOT V C --- —--------- --- --- -------------------------------------------------- 707 FORMAT(E14. 7,2X, E4.7,2X, E14.7,2X, E4.7, * 2X,E14.7) C --- ----------------------------------------------------------------- 19 FORMAT(2X, E14.7,2X, E14.7,2X, E14.7,2X, E14.7, * 2X,E14.7) C --- —------------------------------------------------------------ 4 CONTINUE 3 CONTINUE 2 CONTINUE 1 CONTINUE 600 CONTINUE 3000 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) C COMMON/DAT/ER,H, T,DLX, AW, BW, YO,A, TPI,TPI2,PI,W, E, E2,EER,AKO, AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/IOFF/INS, INS1S2 C C ******** ALL LENGTHS ARE NORMALIZED WITH RESPECT TO C FREE-SPACE WAVELENGTH ********* C PI=3. 141592653589D0 C C --— Dielectric constant --- C READ (5,1) ER 1 FORMAT (///6X,D16.9) WRITE (6,2) ER 2 FORMAT(10X,'Dielectric Constant of the Substrate'/10X,E14.7/) C C ---- Substrate Thickness --- C READ (5,1) H WRITE (6,3) H 3 FORMAT(1 OX,'Substrate Thickness'/10X,E14.7/) C C ---- Conductor Thickness --- C READ (5,1) T WRITE (6,4) T 4 FORMAT(10X,'Conductor Thickness'/10X,E14.7/) C C ---- Dimensions of the Waveguide C READ (5,1) AW READ (5,10) BW 10 FORMAT(6X,D14.7) WRITE (6,5) AW,BW 5 FORMAT(10X,'Dimensions of the Waveguide'/10X,'AW=',E14.7/ *10X, 'BW=',E14.7/) Page 4

Print file "generatekO.ftn" Page 5 C C ---- Limit for offsets: Small Offset< OFFLIM C Large Offset> OFFLIM C OFFLIM=0.1 C C ---- Offset of the slot in the waveguide ---- C READ (5,1) YO WRITE (6,6) YO 6 FORMAT(10X,'Offset of the slot'/10X,'Y0=',E14.7/) C C --- Slot width ---- C READ (5,1) W WRITE (6,7) W 7 FORMAT(10X,'Slot Width'/10X,E14.7/) C C S ---- lot excess width ---- C READ (5,1) WDELTA WRITE (6,8) WDELTA 8 FORMAT(10X,'Slot Excess Width'/10X,E14.7/) C C C ---- Subsection Length C READ (5,1) DLX WRITE (6,9) DLX 9 FORMAT(10X,'Subsection Length'/10X,E14.7/) C C C ---- Lower Limit of the Tail Contribution ---- C READ (5,1) A WRITE (6,11) A 11 FORMAT(10X,'Lower Limit of Tail Contribution'/1OX,E14.7/) C C ---- Number of Points on Each Slot ---- C READ (5,20) NS1 20 FORMAT (///6X, I4) WRITE (6,12) NS1 12 FORMAT (10X,'Number of Points on the Slot'/10X,'NS1=', I4) C C Number of Offsets for the dielectric C READ (5,20) NOFF WRITE (6,15) NOFF 15 FORMAT(10X,'Number of Offsets'/10X,I4/) C C ---- Offsets Between the Slots ---- C READ (5,1) OFFSET(1) WRITE (6,13) OFFSET(1) 13 FORMAT (10X,'Offset'/1OX,E14.7/) C C ---- Order of Offsets --- C INS=1 INS1S2=2 C C C ---- Error in the evaluation of the series ---- C READ (5,1) ERROR

Print: file "generatekO.ftn" WRITE (6,16) ERROR 16 FORMAT(10X,'Error in the evaluation of the series'/ *10X,'ERROR=',E14.7/) RETURN END C --- —----------------------------------------------------------------- C THIS FUNCTION EVALUTES EER C ---------------------------------------- ---------------------------- SUBROUTINE F EER IMPLICIT REAL*8 (A-H,O-Z) C C ---- Normalization Constant ---- C C COMMON/DAT/ER,H,T,DLX,AW,BW,Y0,A,TPI,TPI2,PI,W,El,E2,EER,AK0,AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C C EER=ER+ (1.DO-ER) *(W/H)/(l.DO+W/H) C EER=1. 0 WRITE (6,100) EER WRITE(*,100) EER 100 FORMAT(10X,'Normalization Constant'/10X,E14.7/) RETURN END Page 6

4 ### U##### a p o in d o m a i n CAEN/Apollo # ## # * A P P4 # # # ## # # 4# # I K K K K K K KKK K K K K K K A AA A A A A AAAAAAA A A A A aa a a a a aaaaaa a a a a TTTTTTT T T T T T T v v v v v v v v v v vv EEEEEEE H H E H H E H H EEEEE HHHHHHH E H H E H H EEEEEEE H H eeeeee e eeeee e e eeeeee III I I I I I III m m mm mrn I mm I m m m m m m aa a a a a aaaaaa a a a a I I ~ I I I n n nn n nfl n n nf n nn n n w w w w w w w ww w ww ww w w k k k k kkkk k k k k k k 000 0 0 0 0 0 0 0 0 0 0 000 ffffff f fffff f. f ttttt t t t t t n n nn n nfn n n nfI n n n n n //tera/users/katehi/tape/maln wave kO.ftn LAST MODIFIED ON: 89/04/24 10:43 AM FILE PRINTED: 89/04/24 10:55 AM flXlXgX%%XtXXXXXX ttXXgXgXXXXttXX tXXtgffXgsXXXXXXI BXtsgBtXXXXtX IeII III# *# # # I,IeIIeIIeI##* IIIIg, I#t # # # 4 III i t*# # #

Print file "main wave kO.ftn" Page 1 C MAIN WAVEKO.FTN C This program solves the problem of a dielectric covered waveguide C slot C............................................................................... SUBROUTINE MAINWAVE IMPLICIT REAL*8 (A-H,O-Z) INTEGER*4 CPU SECONDS INTEGER*2 TIMEDATE REC(6) COMPLEX YS(250),CI,CUR,BACKSCAT,FORWSCAT COMPLEX YSD,YSW 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/ADMAT/YSD(250),YSW(250),NS,NS1S2 C COMMON/OUT/GS(250) C COMMON/MAT/PLI,AI,TI,V(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),SERA(5), *DARG(10,4),S(10,2), WREAL,NSER,NMAX(7) C COMMON/DAT/ER, H,T, DLX,AW,BW, YO, A,TPI,TPI2,PI, W,El, E2,EER,AKO,AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF 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), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST C COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ, FX,FlZ C COMMON/IOFF/INS,INS1S2 C COMMON/B1/BJO, BJ1 C COMMON/MAN/BMATR(260,260),IA(20IB(260)(260) C COMMON/INV/CUR(260),NOR C COMMON/SCATCOEF/BACKSCAT,FORWSCAT C COMMON/TEST/FSD (250) C CI=(0.0,1.0) C Initialize YS to zero values C DO 5 IYS=1,250 YSD(IYS)=(0.0,0.0) YSW(IYS)=(0.0,0.0) FSD(IYS)=0.0 5 CONTINUE C C Subroutine YIJ DIEL evaluates the contribution to the elements C of the admittance matrix coming from the dielectric substrate C CNORM OLD=1.DO CNORM NEW=1.DO/DSQRT(EER) CALL NORM(CNORMOLD,CNORM NEW) CALL YIJDIEL C C Subroutine YIJ_WAVE evaluates the contribution coming from the C waveguide

Print: file "main wave kO. ftn" Page 2 C CNORM OLD=1.DO/DSQRT (EER) CNORM NEW=1.DO CALL NORM(CNORM OLD,CNORMNEW) CALL YIJ WAVE C --- —------------------------------------- ---------------- WRITE (6,12) 12 FORMAT(///1OX,'Total Admittance Matrix-No cav-slot contribution' DO 10 I=1,NS1 YS (I)=YSD (I) +YSW(I) WRITE (6,11) I,YS(I) 11 FORMAT (X, 'I=', I4,1X, YS=',E14.7,2X,E14.7) 10 CONTINUE C --- —- --------------------------------------------------- C CALL INVWAVE(YS) C C Write the electric field on the slot C WRITE (6,3) 3 FORMAT(///6X,'I=',6X,'Electric field on the slot',15X, *'Amplitude',10X,'Phase'///) DO 1 I=1,NOR CUR RE=REAL(CUR(I)) CUR IM=AIMAG (CUR (I)) AMPL=CABS(CUR(I)) PHASE=180.DO*ATAN2(CUR IM,CUR RE)/PI WRITE (6,2) I,CUR(I),AMPL,PHASE 2 FORMAT (5X,I4,5X, (E14.7,1X,E14.7),5X,E14.7,5X,E14.7) 1 CONTINUE C C Write the scattering coefficients C WRITE (6,4) BACK SCAT,FORW SCAT 4 FORMAT(///6X,'Back-scatterTng Coefficient =',E14.7,2X,E14.7 * //6X,'Forward-scattering Coefficient =',E14.7,2X, * E14.7///) RETURN END C --- —--------------------------------------------------------- C NORMALIZATION SUBROUTINE C C THIS SUBROUTINE DENORMALIZES WITH RESPECT TO CNORM OLD C AND NORMALIZES AGAIN WITH RESPECT TO CNORMNEW C --- —----------------- ----- ---------------------- SUBROUTINE NORM(CNORM OLD,CNORM NEW) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT/ER, H, T, DLX,AW, BW, YO, A, TPI, TPI2,PI, W, El, E2, EER,AKO, AK, *AKK,FA,OFFSET(7),ALONG(7), WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/IOFF/INS, INS1S2 C CNORM=CNORMOLD/CNORM NEW C PI=3.141592654 C AKO=2.DO*PI*CNORMNEW AKK=2.DO*PI AK=AKO*DSQRT(ER) C H=H*CNORM AW=AW* CNORM BW=BW*CNORM T=T*CNORM

Print file "main wavekO. ftn" Page 3 YO=YO*CNORM DLX=DLX*CNORM OFFLIM=OFFLIM* CNORM W=W*CNORM WDELTA=WDELTA*CNORM C DO 1 I=1,NOFF OFFSET (I) =OFFSET (I) *CNORM 1 CONTINUE RETURN END

if if ###ifif if ifif####if#if####### if if#if#if# ifif#J#if#$# if ### if ift####### a p oll o darnm a i n CAEN/Apollo ii if ii if if i if 4 94 #4449 #i if if ifi f if ii if If i 4 4. if if if if ii f if if if if 4 # if ifi if if if#0 4 ifi 4 if 4 4 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 ppppp 0000 1 eeeeee ssss fiffififf ttttt n n p p a a e s if t nn n p p a a eeeee ssss iffifff t n n n ppppp a 01 e a f t n n n p a a e a s... f t n nn p aao 1111 eeeeee ssss... if t n n //tera/users/katehl/tape/poles.iftn if LAST MODIFIED ON: 89/04/24 10:43 AM FILE PRINTED: 89/04/24 10:59 AM * Ie,. if If if4 4#4 444 CCCII *I ~#ifi #f #4 4 *lI* #I #I* II C 14 *44 *OIICO0 1* #lIfif 4#4 4A

Print file "yijdielmutual. 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)) YS1S2 (I,K)=YS1S2 (I,K)+S1-CI*S2 15 CONTINUE 14 CONTINUE 28 IF (NCON.EQ.O) GO TO 24 IF (INCON.LT.NPOINT) GO TO 24 GCONX1=0.0 GCONX2=0.0 GCONZ1=ER1*DLOG((1.DO-TM)/ (1.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=O.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 C..................................................................~. C This subroutine evaluates the integrand of the green's C function at different points C............................................................... Page 10

Print file "yij dielmutual. ftn" SUBROUTINE GREI (X, XFM, XFE, IAD, TM) IMPLICIT REAL*8 (A-HO-Z) C COMMON/DAT SUB/ERH,T,DLXAWBWA,TPITPI2,PIE1,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/WIDTH/W, WDELTA C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FIX, FiZ C X2=X*X AK2=AK*AK AK02=AKO*AKO RM=DSQRT (DABS (AK2-X2)) RMO=DSQRT (DABS (X2-AK02)) RMH=RM*H RMT=RM*T RMHT=RM* (-H+T) C CSH=DCOS (RMH) SNH=DSIN (RMH) CST=DCOS (RMT) SNT=DSIN (RMT) CSHT=DCOS (RMHT) SNHT=DSIN (RMHT) C RM2=RM*RM RM02=RMO*RM0 CSH2=CSH*CSH ERMO=ER* RMO ERM02=ERMO*ERMO C 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-1.DO/EX) / (EX+i.DO/EX) CSHH=(EX+1.DO/EX)/2.DO EX=DEXP (RMT) CSHT=0.5D0* (EX+I.DO/EX) SNHT=0.5D0* (EX-i.DO/EX) TANT=SNHT/CSHT EX=DEXP (RMHT) CSHHT=0.5D0* (EX+I.DO/EX) SNHHT=0.5D0* (EX-i.DO/EX) TANHT=SNHHT/CSHHT C 100 IF (IAD.NE.1) GO TO 1 DEN=RM2+ (ERM02-RM2) *CSH2 RNOM=-RM2*SNT+ (RM2-ERM02) *CSH*SNHT XNOM=ER*RM*RMO*CST C1=X/RM RX=C1 *RNOM/DEN IF ((ER-1.DO).LT.0.005) RX=0.DO XX=C1 *XNOM/DEN FRX=FlX*EXX C DEN=DEN* (RM02+AK02* (ER-i.DO) *CSH2) RNOM=-CST* (RM2+ER*RM02) *CSH*SNH XNOM=CST*RM*RMO* (-1.DO+ (1.DO+ER) *CSH2) CI=X*RM RZ=-Ci * RNOM/DEN XZ=CI*XNOM/DEN Page 11

Print file "yij dielmutual.ftn " FRZ=F1 Z *EXZ RETURN 1 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* (*RMCSH+RM+O*SNH) RNOM=CS T C 3=X * RM RZ=C1 *C3*RNOM/DEN C FRX=F1X*EXX FRZ=F1 Z*EXZ RETURN C 10 RNOM=1.DO-ERMQ* (-H+T) RX=C1 *X*RNOM/ERMO FRX=F1X*EXX C RZ=X*C1/ (ERMO* (1.DO+RMO*H)) FRZ=Fl Z*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-RM* SNH RX= (X/RM) *RNOM/DEN FRX=F1X*EXX C RNOM=RM*CST DEN=DEN* (RM*CSH+RMO*SNH) RZ=X*C1 *RNOM/DEN FRZ=F1 Z*EXZ RETURN 13 RX=X* (1.DO-ERMO *(-H+T) ) /ERMO FRX=F1X*EXX C 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 C RNOM=X* (RM*CSHT) / (CSHH*CSHH) DEN=DEN* (RM+RMO*TANH) RZ=RNOM/DEN FRZ=F1 Z*EXZ RETURN 15 RX=X* (1.DO-ERM0* (-H+T))/ERMO FRX=F1X*EXX RZ= (X/ERMO)/(1.DO+RMO*H) FRZ=F1 Z *EXZ 6 CONTINUE RETURN END C................................................ Page 12................... c ARIS

Print file 1yijj diel mutual. ftn" Page 13 C.................................................................. SUBROUTINE ARIS IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DATSUB/ER, H, T, DLX, AW, BW, A, TPI, TPI2, PI,E1,E2,EER, AKO, AK, *AKK, FArOFFSET (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), *k POLTE(20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), kBPOINT(10),BCOAL(10),MPOINTNPOINTNKOMANTMNTENKOKIFIRST C COMMON/ADON/DIST(250,7,10),RCOE(20,250,7,10),AX,SERS(5), -kSERA(5),DARG(7,10,4), S(10,2),WREAL, NSER, NMAX (7) C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FiX, FlZ C C + --- —--------------------------------------------— + C I Formation of the matrices: DIST, C DARGRCOE C I C + --- —--------------------------------— + W2=W/2.DO U=WREAL/W THMIN=DATAN(DSQRT(1.DO/(U*U)-1.DO)) THMAX=PI -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, 1,2)=AC DARG (J, I,3) =AS DARG(J,I1,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

Print file "yij dielmutual.ftn" **2*DSIG**2-(120.DO/SIG2)*DSIG2*D3IG**4)/ SIG2 DSIG7-3.DO*(525.DO*DSIG2**3*DSIG-(2100.DO/SIG)* DSIG2**2*DSIG**3+(840.DO/SIG2)*DSIG2*DSIG **5)/SIG3 DSIG8=-3.DO'*'(525.DO*DSIG2**4 (12600.DO/SIG)*DSIG2 * **3*DSIG**2+ (25200.DO/SIG2) *DSIG2**2*DSIG**4 -(6720.DO/SIG3) *DSIG2*DSIG**6) /SIG3 C C Evaluation of the coefficients Gij C G21=DSIG2 G22=DSIG* *2 C --- —------------ G4 1=DSIG4 G42=4.DO*Ds'TEG3*DsIG+3.DO*DsIG2**2 G43=6.DO*DSIG2*DSIG**2 G44=DSIG**4 C --- —- ------------ G61=DSIG6 G62=6.DO*DSI G5*DSIG+15.DO*DSIG4*DSIG2+1O.DO*DSIG3**2 G63=15.DO*DS IG4*DSIG**2+60.DO*DSIG3*DSIG2*DSIG+15.DO *DSIG2**3 G64=20.DO*DSIIG3*DSIG**3+45.DO*DSIG2**2*DSIG**2 G65=15.DO*D SIG2*DSIG**4 G6 6=DS IG* * 6 C --- —----------- G81=DSIG8 G82=8.DO*DSI'G7*DSIG+28.DO*DSIG6*DSIG2+56.DO*DSIG5 *DSIG3+35.DO*DSIG4**2 G83=28.DO*D S IG6*DSIG**2+168.DO*DSIG5*DSIG2*DSIG+ 280.DO*D)SIG4*DSIG3*DSIG+210.DO*DSIG4*DSIG2**2~ * 280.DO*ESIG3**2*DSIG2 G84=56.DO*DSI'-IG5*DSIG**3+420.DO*DSIG4*DSIG2*DSIG**2 +280.DO*DSIG3**2*DSIG**2+840.DO*DSIG3*DSIG2**2 *DSIG+1C5.DO*DSIG2**4 G85=70.DO*DS IG4*DSIG**4+560.DO*DSIG3*DSIG2*DSIG**3 +420.DO* DSIG2**3*DSIG**2 G86=56.DO*DSIG3*DSIG**5+210.DO*DSIG2**2*DSIG**4 G87=28.DO*DSIG2*DSIG**6 G8 8=DS IG* * 8 C --- —------------ RCOE(2,N,JI)=-0.5D0*(G22+SIG*G21) RCOE(1,N,J,I)=0.5D* (G22-SIG*G21) C --- —------------ SX=0.5DO*SIG*(G42-SIG*G41) S30=-0.5D0*SIG*(G42+SIG*G41) S31=0.25DO*(SX+3.DO*G43) S33=0.25D0*(SX-G43) RCOE(3,NJI)=0.5D0*(SIG*S33/3.DO+G44/4.DO) RCOE(4,N,JI)=0.5D0*(SIG*S31+SIG*S33/3.DO-G44) RCOE(5,NJI)=0.5D0*(SIG*S31+3.DO*G44/4.DO) RCOE(6,1JJI)=SIG*S30 C --- —------------ 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.5D0*SIG*ST-5.DO*G65/2.DO) S53=0.25D0* (i.5DO*SIG*ST+0.25D0*SIG*SX+0.5D0*G65/ 4.DO) S55=0.125D* (0.5D*SIG*SX-0. 5*G65) RCOE(7,N,J,I)=0.5D0*(SIG*S55/5.DO+G66/16..DO) RCOE(8,NJ,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

Print file vyij diel mutual.ftnt" G66/16.DO) RCOE(10,NJ,,I)=0.5D0*(SIG*S51-10.DO*G66/'16.DO) RCOE (11,N,J, I) =SIG*S5M1 RCOE (12,N, J, I) =SIG*S5M3 C ----------------- S7M5=SIG2*S 5M3 S7M3=SIG2 * S!5M1 S7M1=0.5D0*SIG*(SIG*S51-10.DO*G86/16.DO) S71=0.5DO*(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/16D0)+0.125D*SIG*(SIG*S53/3.DO+SIG* S55/5.D0O6.DO*G86/16.DO)-2l.DO*G87/32.DO) S75=0.5DO*(C).125D0*SIG*(SIG*S53/3.DO+SIG*S55/5.DO 6.DO*G86/16.DO)+(SIG/12.DO)*(SIG*S55/5.DO+ G86/16.D0)+7.DO*G87/32.DO) S77=0.5D0*UifSIG/12.DO)*(SIG*S55/5.DO+G86/16.DO)G87/32.1)0) RCOE(13,N,J,I)=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,fI)=0.5D*(SIG*S73/3.DO+SIG*S75/5.DO +28.DO*G88/64.DO) RCOE(16, NJ, I)0.5D0*(SIG*S71+SIG*S73/3.DO-56.DO *G88/64.DO) RCOE(17,NJI)=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 1 CONTINUE C C Formation of the series s(dlx) Storage in C vectors SERS(5),SERA(5) C U1=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 *JADL ADL5=ADL4 *ADL ADL6=ADL5 *ADL YSIN=DSIN (ADL) YCOS=DCOS (ADL) C SER1=(1.D10-YCOS) *2 D0/AKK C SER2=-YSIN/3.DO+ADL*YCOS/4.DO+ADL2*YSIN/10.DO-ADL3*YCOS/36.DO -ADL4*YSIN/168.D0-iADL5*YCOS/960.DO+ADL6*YSIN/6480.DO C 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 C SER4=-YSIN/2520.DO+ADLkYCOS/2880.DO+ADL2*YSIN/6480.DO-ADL3 *YCOS/21600.DOADL4*YSIN/95040.DO+ADL5*YCOS/518400.D C Page 15

Print file "yij diel-mutual. ftnuI" SER5=YSIN/181440.DO-XDL*YCOS/201600.DO-ADL2*YSIN/4143520.DO+ * ADL3*YCOS/1442775.9D0 C SERS (1) =SER1*SER1 SERS (2)=DLX*2.DO*SER1'*SER2 SERS (3) =DLX* (DLX* SER2* SER2+2.D0* SER1 *SER3) SERS (4) =DLX* (2.D0*SER'L*SER4+2.DO*DLX*SER2*SER3) SERS (5)=DLX* (DLX*SER3-kSER3+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 ADONI S C This subroutine evaluates the space integarls of the bessel C function C C..................................................................... SUBROUTINE ADONIS IMPLICIT REAL*8 (A-HO-Z) DIMENSION BJ(10,2),DERIV(9,3) C COMMON/ADON/DIST(250,7,i0l),RCOE(20,250,7,10),AXSERS(5), *SEPRA(5),DARG(7,10,4),Sl(l0,2),WREAL,NSER,NMAX(7) C COMMON/PUT/SSJO (250,7),SAJ0O(250,7),YSIN,YCOS C COMMON/DATSUB/ERHTDLXAWBWATPITPI2,PI,El,E2,EER,AK0,AK, *AKK, FA, OFF~SET (7),OFFLI-MERRORrNOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),wS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON! WIDTH/W, WDELTA C COMMON/DATT/COAL (20)P,FOINT (20)fCN(51),BM(51),POLTM(20)f *POLTE (20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), *BPOINT(10),BCOAL(10),MPOINTNPOINTNKOMA,NTMNTENK0K,IFIRST C COMMON/BSS/ARG(10),AARG C COMMON/MAT/PLI,AI,TI,V'(3),IY C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ,FiX, FlZ C ARX=W*AX/2.DO Wl=2.DO*YCOS PR1=PLI *DLX PR2=PRl1*PRl PR4=PR2 *PR2 PR6=PR4 *PR2 PR8=PR6 *PR2 DO 1 J=1,NOFF MAX=NMAX (J) DO 2 N=1rMAX SSJO (N, J) =0.iDO SAJO (N, J) =0.DO 2 CONTINUE 1 CONTINUE C DO 11 J=1,NOFF LPOINT=MPOINT Page 1 6

Print file 13 12 17 16 15 20 21 "yi j dielmutual. ftn IF (OFFSET(J).GT'.OFFLIM) GO TO 12 LPOINT=NPOINT DO 13 I=1,NPOINT ARG (I) =PLI*DARG (J, I,1) CONTINUE CALL BESS1(EJ) DO 14 I=1,LPOINT DO 17 NK=1,5 DERIV(NK, 1) =O. 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 (J, 1,2) COFF=DCOS (AROF) SSUM1=0 DO DO 16 JN=1,NSER ARAF=P LI * S (JN, 2) *DARG (J, I, 2) CAFF=DCOS (ARAF) SSUM=SSUM+S (JN, 1) *CAFF CONTINUE 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, 1,3) SIN2=SIN1 *SIN1 COS1=DCOS (PLI*DIST (K, Jr I) TERM=COFF* (BJ(I, 1) -SSUM/PI) *COS1 DERIV (1, 3) =TERM SIN1=SIN2 DERIV (2,3) =-TERM* SIN1 SIN1=SIN1*SIN2 DERIV (3, 3) =TERM* SIN1 SIN1=SIN1*SIN2 DERIV (4,3) =-TERM*S IN1 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,3) =RCOE (1, K, J, I) *BJ (3,2) + RCOE (2, K, J, I) *BJ (1, 2) DERIV(3, 3) =RCOE (3, K, JrI) *BJ(5,2)+ RCOE (4, K, J, I) *BJ (3,2) + (RCOE (5, K, J, I) +RCOE(6,KJI) /ARG2) *BJ(1,2) DERIV (4,3)=RCOE(7, K, J, I) *BJ(7,2)~ RCOE (8, K, JrI)*BJ(5,2)+RCOE(9, K,J, I)* BJ(3,2)+(RCOE(10, K, J, I)+RCOE(11, K, J, I) /ARG2+RCOE (12, KrJ, I) /ARG4) * BJ(1,2) DERIV(5, 3)=RCOE (13, K, J, I)*BJ(9,2)+ RCOE (14, K, J, I)*BJ(7,2)+RCOE(15, KrJ, I) *BJ(5,2)+RCOE ( 16,KJ, r I) *BJ(32) + (RCOE(17,KJI)+RCOE(18,KJI)/ARG2 +RCOE(19, K, J, I)/ARG4+RCOE (20, KrJ, I) /ARG6) *BJ(12) Page 17:kk.k * *k *k

Print file "yijdiel_mutual. ftn" 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,2) -PR6*SERS (4) *DERIV * (4,2) +PR8*SERS (5) *DERIV (5,2) C CH1=SERA(1) * (DERIV(1,1)+DERIV(1, 3)-Wl*DERIV * (1,2) ) CH2=SERA(2) * (DERIV (2,1)+DERIV (2,3)-Wl*DERIV * (2,2)) *PR2 CH3=SERA(3) * (DERIV(3, 1)+DERIV(3, 3)-W1*DERIV * (3,2)) *PR4 CH4=SERA (4) * (DERIV (4,1) +DERIV (4,3) -W1*DERIV * (4,2))*PR6 CH5=SERA (5) * (DERIV (5, 1) +DERIV (5, 3) -W *DERIV * (5,2))*PR8 SUMA=CH -CH2+CH3-CH4+CH5 KJ=K-2 SSJ0 (KJ, J) =SSJO (KJ, J)+ASIN*SUMS SAJO (KJ, J) =SAJ0 (KJ, J) +ASIN*SUMA CCCC C IF (KJ.EQ.1)WRITE (6,665) KJ,J,SSJO(KJ,J), C * SUMS, SAJO(KJ,J),SUMA C665 FORMAT'(10X, 'KJ=', I4,2X,' J=', I4/10X,' SSJ0=', C * E14.7,2X,' SUMS=', E4.7/lOX,' SAJ0=', E14.7, C * 2X,'SUMA=',E14.7/) CCCC 18 CONTINUE 14 CONTINUE 11 CONTINUE RETURN END C BESS1 C This subroutine gives values for the zeroth order C Bessel functions. It is used for small offsets C................................................................... SUBROUTINE BESS1(BJ) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION BJ(10,2) C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FlX, F1Z 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/BSS/ARG(10),AARG C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(51),POLTM(20), kPOLTE (20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), kBPOINT (10),BCOAL(10),MPOINT, NPOINT, NK0,MA, NTM, NTE, NKOK, IFIRST C PI=3.141592653589D0 DO 1 IJ=1,NPOINT X=ARG(IJ) IF (X.GT.0.001D0) GO TO 10 X3=X/3.DO X32=X3*X3 X34=X32*X32 X36=X34*X32 BJO=1.DO-2.2499997D*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

Print file "yij diel mutual.ftn" Page 19 X34=X32*X32 X36=X34*X32 X38=X36*x32 X310=X38*X32 X312=X310*X32 BJO=l.DO-2. 2499997D0*X32+l. 2656208DO*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.D0/X X32=X3*X3 X33=X32*X3 X34=X33*X3 X35=X34*X3 X36=X35*X3 FJ0=0. 79788456D0-0. 00000077D0*X3-0. 00552740D0*X32-0.0000 *k 9512D0*X33+0.00137237D0*X34-0.00072805DO*X35+0.00014 *k 476D0*X36 TJ0=X-0. 78539816D0-0. 04166397D0*X3-0. 00003954D0*X32+0.00 262573D0*X33-0.00054125D0*X34-0.00029333DO*X35+0.000 * 13558D0*X36 WCON=DSQRT (1.DO/X) BJ (IJ, 1) =WCON*FJ0*DCOS (TJO) 1 CONTINUE RETURN END C..................................................................... C TAIL C This subroutine evaluates the tail contribution C......................................................................... SUBROUTINE TAIL IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YS,YS1S2 C COMMON/CTAIL/Sl(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) C COMMON/MATDIEL/YS(200),YSlS2(7,200),NOFFS(7) C COMMON/OUT/GS (250),GS1S2 (7,250) C COMMON/DAT SUB/ER, H,T,DLXAWBW,A,TPITPI2,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/WIDTH/W, WDELTA C COMMON/INT/XNS(40),CNS(40),XND(20,2),CND(20),XNT(40,3), *CNT(40),NDPNTPNSP C COMMON/ADON/DIST(250,7, 10),RCOE(20,250,7,10),AXSERS(5), *SERA (5), DARG (7,10, 4),S (10,2),WREAL, NSER, NMAX (7) C COMMON/IOFF/INSS(7,7), NSSL(7,7) C C This vector contains the values of t in the integrals hO C Z1=T Z2=2.DO*H C C This vector contains the values of the coefficient C in C the integrals hO C

Print file "yij_dielmutual.ftn" =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 AKO2=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=DSIN(2.DO*AKK*DLX) C C + --- —----------------------------— + C Evaluation of 51,52,S3,54,55,S6 C I (Single Integrals) C + --- —----------------------------— + C C DO 201 J=1,7 DO 202 K=l,205 DO 203 JK=1,4 Si(JKK,J)=O.DO Di (JKK,J)=O.DO D2(JK,K,J)=O.DO Ti(JK,K,J)=O.DO T2(JK,K,J)=O.DO T3(JK,K,J)=O.DO T4 (JKK,J)=O.DO 203 CONTINUE 202 CONTINUE 201 CONTINUE C zPi=zi/Ci ZP2=Z2/Cl C ZP12=ZP1i*zp ZP22=ZP2*ZP2 DO 1 J=1,NOFF KMAX=NMAX (J)+2 IF (OFFSET(J).LT.i.D-6) THMAX=PI DSP= (THMAX-THMIN)/4.DO DDP=DSP*DLX2 DTP=DSP*DLX4 COEFi= (THMAX-THMIN) /2.DO IF (OFFSET(J).LT.1.D-6) COEF1=(PI/2.DO-THMIN),/2.DO COEF2= (THMAX+THMIN) /2.DO IF (OFFSET(J).LT.i.D-6) COEF2=(PI/2.DO+THMIN)/2.D0 DO 10 I=1,NSP THI=COEF*XNS (I)+COEF2 Cl=DCOS(THI) C2=W2 *Cl C2=OFFSET (J) -C2 CW=C2 *C2 AASIN=CNS (I)*DSP DO 1i K=i,KIMI4AX Page 20

Print file "yij dielmutual.ftn r XN=FLOAT(K-3)*DLX RAD2=XN*XN~CW TRAD1=DSQRT (RAD2+ZP12) TRAD2=DSQRT (RAD2+ZP22) S1 (1, K, J) =S1 (i, K, J) +DLOG (2. DO* (TRAD1+XN) ) *AASIN Si (2,K,J)=S1 (2,K,J)+DLOG(2.DO* (TRAD2+XN) ) *AASIN 11 CONTINUE 10 CONTINUE C C + --- —-----------------------------------------------------------— + C I EVALUATION OF D1,D2,D4,D5 1 C + --- —----------------------------------------------------------------— + DO 20 I=1,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 SVi=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=-X.I+FLOAT (K-2) *DLX RADP2=:KNP*XNP+CW RADM2=XKNM*XNM+CW TRAP1=DSQRT (RADP2+ZP12) TRAP2=DSQRT (RADP2+ZP22) C TRAM1=DSQRT (RADM2+ZP12) TRAM2=DSQRT (RADM2+ZP22) C XA1 =AKIK*XNP XA2=AK K*XNM XAP=DS IN (XA1) XAM=DSIN (XA2) C SANP1='XAP*DLOG(2.DO* (TRAP1+XNP)) SANP2=XAAP*DLOG(2.DO* (TRAP2+XNP)) C SANM1=-XAM*DLOG(2.DO* (TRAM1+XNM)) SANM2=XAM*DLOG(2.DO* (TRAM2+XNM)) C XAP=DS N (XA1/2.DO) XAM=D S IN (XA2 / 2. DO) SONP1=XAP /TRAP1 SONP2=XAP ITRAP2 C SONM1=XAM/ TRAMi SONM2=XAM/ TRAM2 C Y1=-XNM/2.DO-DLX Y2=-XN>/2.DO+DLX CY1=DCC)S(AKK*Y1) CY2=DCOS (AKK*Y2) SY1=DSI IN (AKK*Y1) SY2=DSIN (AKK*Y2) C D1(1,K, J)=D1(1,K, J)+(SANP1+SANM1)*SV2*AASIN D2(1,KJ)=D2(1,K,KJ)+(CY1*SONP1-CY2*SONM1)*AASIN D1(2,KJ)=D1(2,KJ)+(SANP2+SANM2)*SV2*AASIN D2 (2, K, J) =D2 (2, KrJ) + (CY1*SONP2-CY2*SONM2) *AASIN 21 CONT INUE Page 21

Print file "yij dielmutual.ftn v 20 CONTINUE C C evaluation of T1,T2,T1'3,T4 C DO 30 I=1,NTP THI=COEF1*XNT(I,1)+COEF2 XI=DLX2* (XNT (I, 2) +1. DO) XIP=DLX2 * (XNT (I,3) +1.DO) C1=DCOS(THI) C2=W2 *Cl C2=OEFSET (J) -C2 CW=C2*C2 SV1=DSIN (AKK* (DLX-XI)) SV2=-SV1 SV3=DSIN (AKK* (DLX-XIP)) AASIN=DTP*CNT (I) DO 31 K=iKMAX XNPP= (XI+XIP) +FLOAT (K-i) *DLX XNPM=(XI-XIP)+FLOAT(K-i)*DLX XNMP= (-XI+XIP) +FLOAT (K-i) *DLX XNMM= (-XI -XIP) +FLOAT (K-i) *DLX RADPP2=XNPP*XNPP+CW RADPM2 =XNPM*XNPM+CW RADMP2 =XNMP *XNMP+CW RADMM2 =XNMM*XNMM+CW TAPP1=:DSQRT (RADPP2+ZP12) TAPP2=:DSQRT (RADPP2+ZP22) TAPM1=DSQRT (RADPM2+ZP12) TAPM2=:DSQRT (RADPM2+ZP22) TAMP1=:DSQRT (RADMP2+ZP12) TAMP2=:DSQRT (RADMP2+ZP22) TAMM1=:DSQRT (RADMM2+ZP12) TAMM2=:DSQRT (RADMM2+ZP22) CST1=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) ) *LDSIN(AKK*XNMP /2.DO) CST4=DCOS(AKK*(-XNPP/2.DO+DLX))*DSIN(AKK*XNPM /2.DO) Tl(l,K,J)=Ti(l,K,J)+SV2*AASIN*CST1/TAPP1 T2 ( 1 r Kr J) =T2 (1r Kr J) + SV1*~AASIN *tCST2 /TAMM1 T3(1,K,J)=T3(1,K,J)+SV1*AASIN*CST3/TAMP1 T4(fiKJ)=T4(fK,J)+SV2*AASIN*CST4/TAPM1 Tl(2,KJ)=Tl(2,KJ)+SV2*AASIN*CSTi/TAPP2 T2(2,K, J)=T2(2,KJ)+SV1*AASIN*CST2/TAMM2 T3 (2, K, J) =T3 (2, K, J) +SV1*AASIN*CST3/TAMP2 T4(2,KJ)=T4(2,KJ)+SV2*AASIN*CST4/TAPM2 31 CONTINUE 30 CONTINUE 1 CONTINUE C C C Evaluation of GSGS1S2 C C CZX=2.DO* (1.DO-ER) / ((1.DO+ER) * (1.DO+E2) * (1.DO+0 5D0*El)) IF ((ER-l.DO).LT.O.005) CZX=O.DO CXX= 1.DO CSX= (AK2-AKK2) *CXX/FA CSZ=AKK2*CZX/FA CAX=AKK*CXX/FA CAZ=AKK*CZX/FA DO 4 J=1,NOFF NJMAX=NOFFS (J) Page 22

Print file "yij dielmutual. ftn" DO 62 N=1,NJMAX NP1=N+2 NO=N+i NM1=N STX=-D1(i,NPi,J)+2.DO*YCOS*Di(i,NOJ)-Di(1,NM1,J), +2.DO* (TI(i,N,J)+T2(i,N,J)-T3(1,N,J)-T4 (1,N,J)) STZ=-DI(2,NPi,J)+2.DO*YCOS*DI(2,NO,J)-Di(2,NM1,J) * +2.DO* (TI (2,N,J)+T2 (2,N,J) -T3 (2,N,J) -T4 (2,N,J)) MP2=N+4 MPI=N+3 MO=N+2 MMI=N+i MM2=N SINP2=DSIN (AKK*FLOAT (N+I) *DLX) SINPi=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(1,MP2,J)-4.DO*YCOS*SINPi*SI(i,MP1,J) +2.DO* (2.DO+CCS)*SINO*Si (i,MOJ)-4.DO*YCOS * *SINMI*S1 (1,MM1, J)+SINM2*S1 (1,MM2, J) ATZ=SINP2*S1(2,MP2,J)-4.DO*YCOS*SINPI*Si(2,MP1,J) * +2.DO* (2.DO+CCS)*SINO*Si (2,MOJ)-4.DO*YCOS * *SINMI*SIS(2,MMi,J)+SINM2*Si (2,MM2,J) AAX=-2.DO* (D2(iNP1,J)-2.DO*YCOS*D2(i,NO,J) * +D2 (1, NM1, J) ) AAZ=-2.DO*(D2(2,NP1,J)-2.DO*YCOS*D2(2,NO,J) * +D2 (2, NMi, J)) AX=ATX+AAX AZ=ATZ+AAZ ZW=W* (CSX* STX+CSZ*STZ+CAX*AX-CAZ*AZ) IF (J.EQ.1) GS(N)=ZW IF(J.GE.2) GSlS2(J,N)=ZW 62 CONTINUE 4 CONTINUE RETURN END C...................................................................... C TTihis subroutine evaluates the higher order bessel functions using C thie ascenting series expression or hankel's expansion. C......................................................................... SUBROUTINE BESS2 (BJ) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION BJ(iO,2),U(4),RBJ(50,2) COMMON/B01/BJO, BJ1 COMMON/BSS/ARG(i10),X C PI=3. 141592653589 C C Evaluation of J0,J1 C CALL BSJO(X) RBJ(1,2) =BJO RBJ (2,2) =BJ1 C NCON=I N=IDINT (2.4D0*X) IF (N.LT.10) N=10 IF (X.LT.3.DO) GO TO 10 C C EVALUATION OF HIGHER ORDER BESSEL FUNCTIONS UP TO C ORDER LESS THEN THE ARGUMENT C NIMAX=IDINT (X) -i IF (NIMAX.GT. 9) NIMAX=9 DO 1 I=2,NIMAX Page 23

Print file "yi jdielmutual. ftn" NJ1=I NJ2=I-1 NB=I+1 RBJ(NB,2)=FLOAT(2*NJ2)*RBJ(NJ1,2) /X-RBJ(NJ2,2) 1 CONTINUE IF (NIMAX.EQ.9) GO TO 20 NCON=NIMAX C C DEBYE'S ASYMPTOTIC EXPANSION-EVALUATION OF JN C 10 DO 11 J=1,2 JN=N-J+ 1 XA=X/FLOAT(JN) XA=1.DO/XA XE=XA+DSQRT(XA*XA-1.DO) A=DLOG(XE) CTH=(XE+1.DO/XE)/ (XE-.DO/XE) CALL F(CTH,U) TNH=1.DO/CTH R1=DEXP (FLOAT (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)=(R1/R2)*(1.D0+U(1)/BN1+U(2)/BN2+U(3)/BN3+ U(4)/BN4) 11 CONTINUE C C EVALUATION OF HIGHER ORDER BESSEL FUNCTIONS WHEN X<10 C NJMAX=N-2-NCON DO 2 I=1,NJMAX NJB=N-I NJB1=NJB+1 NJB2=NJB1+1 RBJ(NJB, 2)=2.DO*FLOAT(NJB)*RBJ(NJB1,2) /X-RBJ(NJB2,2) 2 CONTINUE 20 CONTINUE DO 3 1=1,9 BJ(I,2)=RBJ(I,2) 3 CONTINUE RETURN END C............................................................................... C..................................................................... SUBROUTINE BSJ0(X) IMPLICIT REAL*8(A-H,O-Z) COMMON/B01/BJ, BJ1 C C C Evaluation of JO using the series expansion given in C Abramowitz. C PI=3.141592653589D0 IF (X.GT.3.DO) GO TO 20 X3=X/3.D0 X32=X3*X3 X34=X32*X32 X36=X32*X34 X38=X32*X36 X310=X38*X32 X312=X310*X32 BJ0=1.D0-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 Page 24

Print file "yijdielmutual.ftn" *x36+0.00443319D0*X38-0.00031761D0*X310+000001109D0 * c*x312) GO TO 21 C 20 X3=3.DO/X X32=X3*X3 X33=X32*X3 X34=X33*X3 X35=X34*X3 X36=X35*X3 FJO=0.79788456D0-0. 00000077D0*X3-0. 00552740DO*X32-0. 00009512D0 **x33+0.00137237D0*x34-0.00072805D0*x35+0.00014476D0*x36 FJ1=0. 79788456D0+0. 000 00156D0*X3+0. 01659667D0*X32+0. 00017105D0 * x33-.0002495lD0 *x34+0.00113653D0*X35-0.00020033D0*X36 TJO=X-0. 78539816D0-0. 04166397D0*X3-0. 00003954D0*X32+0.00262573D0 * *x33-0.00054125D0*X34-0.00029333D0*X35+0.00013558D0*x36 TJ1=X-2. 35619449D0+0. 12499612D0*X3+0. 0000565OD0*X32-0. 00637879D0 **x33+0.00074348D0*X34+0.00079824D0*x35-0.00029166D0*x36 WCON=DSQRT(1.DO/X) BJO=WCON*FJO*DCOS (TJO) BJ1=WCON*FJ1*DCOS(TJ1) 21 CONTINUE RETURN END C........................................................................... C................................................................. SUBROUTINE F(X,U) 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 xl 0 =X9 *( x11=x10*x X12=X11*X C U(1)=(3.DO*X-5.DO*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.DO U (4) = (4465125.DO*X4-94121676.DO*x6+349922430.DO*X8-446185740.DO* * X10+185910725.DO*X12)/39813120.DO RETURN END C.............................................................................. C SUBROUTINE DATA SLOT C This subroutine gives all the data for integration used in C subroutine SLOT.FTN C....................................................................... SUBROUTINE DATA SLOT IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DATSUB/ERHTDLXAWBWA,TPITPI2,PIElE2,EERAKO,AK, AKK, FA, OFFSET (7), OFFLIM, ERROR, NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS 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), *BPOINT(10),BCOAL(10),MPOINTNPOINTNKOMANTMNTENKOKIFIRST C Page 25

Print file "yij_diel_mutual.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.DO*PI TPI2=TPI*TPI C + --- -------— + C I ERROR FUNCTIONS I C + --- —-----------— + C A1=A*A/ER-TPI2 A2=TPI2-TPI2/ER E1=0.5DO*A2/A1 E2=ER*E1/(l.DO+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) I C I 1: dominant mode is TE wave (many poles) I C 2: only one TM surface wave C + --- —------—. --- —----------—. --- —-------------- C + --- —-----------------------— + C + — ------— + C I Data for the Integration I C + --- ------------— + NKO=20 NKOK=1 MA=40 NSER=10 C NPOINT=10 C --- —------- C Vector COAL C --- —------ 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) C --------- C Vector POINT C --------- POINT(1)=0.973906528517D0 POINT(2)=0.865063366688D0 POINT(3)=0.679409568299D0 POINT(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) C MPOINT=5 C --------- Page 26

Print file "yij diel.mutual.ftn" o Vector BCOAL C BCOAL(1)=0.2369268851D0 BCOAL(2)=0.4786286705D0 BCOAL(3)=0.5688888888D0 BCOAL (4)=BCOAL(2) BCOAL(5)=BCOAL(1) C C Vector BPOINT C BPOINT (1) =0. 9061798459D0 BPOINT(2)=0.5384693101D0 BPOINT(3)=O.DO BPOINT (4) =-BPOINT (2) BPOINT (5) =-BPOINT (1) C C Single integration C C NSP=31 RS1=0.99708748181D0 RS2=0. 98468590966D0 RS3=0. 96250392509D0 RS4=0. 93075699789D0 RS5=0. 88976002994D0 RS6=0. 83992032014D0 RS7=0.78173314841D0 RS8=0. 71577 678458D0 RS9=0. 64270 6722 92D0 RS10=0.56324916140D0 RS11=0.47819378204D0 RS12=0. 38838590160D0 RS13=0.29471806998D0 RS14=0.19812119933D0 RS15=0. 09955531215D0 RS16=0. DO C XNS (1)=RS1 XNS (2) =RS2 XNS (3)=RS3 XNS (4)=RS4 XNS(5)=RS5 XNS(6)=RS6 XNS (7) =RS7 XNS(8)=RS8 XNS (9)=RS9 XNS(10)=RS1O XNS(11)=RS11 XNS(12)=RS12 XNS(13)=RS13 XNS (14)=RS14 XNS(15)=RS15 XNS(16)=RS16 XNS(17)=-RS15 XNS(18)=-RS14 XNS (19)=-RS13 XNS(20)=-RS12 XNS(21)=-RS11 XNS(22)=-RS1O XNS (23)=-RS9 XNS(24)=-RS8 XNS(25)=-RS7 XNS(26)=-RS6 XNS(27)=-RS5 XNS (28)=-RS4 XNS(29)=-RS3 Page 27

Print file "yij dielmutual. ftn" XNS (30) =-RS2 XNS (31)=-RS1 C 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 CNS(8)=0. 0696285832354D0 CNS(9)=0. 0763903865987D0 CNS(10)=0. 0823929917615D0 CNS(11)=0. 0875767406084D0 CNS(12)=0. 0918901138936D0 CNS(13)=0. 0952902429123D0 CNS(14)=0. 0977433353863D0 CNS(15)=0. 0992250112266D0 CNS(16)=0. 0997205447934D0 CNS(17) =CNS (15) CNS (18) =CNS (14) CNS(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) CNS(26)=CNS (6) CNS(27) =CNS (5) CNS(28)=CNS (4) CNS(29) =CNS (3) CNS(30) =CNS (2) CNS(31) =CNS (1) C C C C 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=-Sl Ai=4.DO*(59.DO+6.DO*DSQRT(30.DO))/864.DO A2=4.D0*(59.D0-6.D0*DSQRT(30.D0))/864.D0 A3=4.DO*49.DO/864.DO C XND(1,1) =R1 XND (1,2) =R1 CND (1) =A1 C XND(2, 1) =R2 XND(2,2) =R1 CND (2) =A1 XND(3,1) =R1 XND (3, 2) =R2 CND(3)=A1 C XND(4,1) =R2 XND(4,2) =R2 CND (4)=A1 XND (5,1)=Sl Page 28

P~rint file U1yijjdiel mutual.ftn"r XND (5,,2) =S1 0CWD(5) =A2 XND (6,1) =Sl XND (6,2) =S2 CND (6) =A2 C XND (7,1) =S2 XND (7,2) =Sl CND (7) =A2 C XND (8,1) =S2 XND (8,2) =S2 OND (8) =A2 C XND (9,1) =Rl XND (9,2) =Sl CND (9) =A3 C XND (10,1) =R1 XND (10,2) =S2 OND (10) =A3 C XND (11,1) =Sl XND (11,2) =R1 CND (11)=A3 C XND (12, 1)=S2 XND (12,,2) =R1 CND (12) =A3 C XND (13,1) =R2 XND (13,2) =S1 CND (13) =A3 C XND (14,1) =R2 XND (14,2) =S2 CND (14) =A3 C XND (15, 1) =S1 XND (15,2) =R2 CND (15) =A3 C XND (16,1) =S2 XND (16,2) =R2 OND (16) =A3 C C 3) Triple Integration NTP=34 RS1=0. 9317380OQOODO RS2=-RS1 UU1=0. 9167441779D0 UU2=-tJU1 SS1=0. 4086003800D0 SS2=-SS1 TTl=0. 7398529500ODO TT2=-TT1 B1=8.D0*0. 03558180896D0 B2=8.D0*0. 01247892770D0 B3=8.DO*0. 05286772991D0 B4=8.D0*0. 02672752182D0 C XNT (1,2) =0.DO Page 29

Print file "1yij diel-mutual. ft~n Pag 3 Page 30 XNT (1,3) =0.DO CNT (1) =Bl C XNT (2,1) =RS2 XNT (2,r2) =0. DO XNT (2,3) =0.DO ONT (2) =Bl C XNT (3,1) =0.DO XNT (3,r2) =RS 1 XNT (3,3) =0.DO CNT (3) =Bl C XNT (4,r1) =O. DO XNT (4,2) =RS2 XNT (4, 3)=0.DO CNT (4) =B1 C XNT (5,1) =0.DO XNT (5,2) =0.DO XNT (5,3) =RS1 ONT (5) =Bl C XNT (6, 1)=0.DO XNT (6,f2) =0.DO XNT (6,3) =RS2 CNT (6)=Bl C XNT (7,1) =U131 XNT (7,2)=UJU1 XNT (7,,3) =0.DO CNT (7) =B2 C XNT (8,1) =UU12 XNT (8,2) =UU1 XNT (8,3) =0.DO CNT (8) =B2 C XNT (9,f1) =U131 XNT (9,f2) =1312 XNT (9,3) =0.DO CNT (9) =B2 C XNT (10,1) =UU32 XNT (1 0,r2) =UU12 XNT (10,3) =0.DO CNT (10)=B2 C XNT (11,1) =U131 XNT (11,2) =0.DO XNT (11,3) =U131 CNT (11) =B2 C XNT (12, 1)=UU1 XNT (12,2) =0.DO XNT (12,3) =1312 CNT (12) =B2 C XNT (13,1) =1312 XNT (13,2) =0.DO XNT (13,3) =U131 CNT (13) =B2 C XNT (14,1) =1312 XNT (14,2) =0.D0 XNT (14,3) =1312

Print file vlyij del mutual.ftnvv CNT (14)=B2 C XNT (15, 1)=0.D0 XNT (15,2)tJUU XNT (15, 3) =U131 ONT (15) =B2 C XNT (16,1) =0.DO XNT (16,,2) =U131 XNT (16, 3)=UU12 CNT (16) =B2 C XNT (17,1) =0.DO XNT (1 7,f2) =1312 XNT (17,3) =U131 CNT (17) =B2 C XNT (18,1) =0.DO XNT (18,2) =13U2 XNT (18,3) =UU12 CNT (18) =B2 C XNT (19,1)=SS1 XNT (19,2) =SS1 XNT (19,3) =SS1 CNT (19) =B3 C XNT (20,1) =SS1 XNT (20,2) =SS1 XNT (20,3) =SS2 CNT (20) =B3 C XNT (21,1) =SS1 XNT (21o,2) =SS2 XNT (21,3) =SS1 CNT (21)=B3 C XNT (22,1) =SS1 XNT (22,2) =SS2 XNT (22,3) =SS2 CNT (22) =B3 C XNT (23,1) =SS2 XNT (23,2) =SS1 XNT (23,,3) =SS1 CNT (23) =B3 C XNT (24, 1)=SS2 XNT (24,2) =SS1 XNT (24,3) =SS2 CNT (24)=B3 C XNT (25,1) =SS2 XNT (25,2) =SS2 XNT (25,,3) =SS1 CNT (25) =B3 C XNT (26,1) =SS2 XNT (2 6,r2) =SS2 XNT (26,3) =SS2 CNT (26) =B3 C XNT (27,1) =TT1 XNT (27,2) =TT1 XNT (27, 3)=TT1 CNT (27) =B4 Page 31

Print file 1vyij diel MutUal-ftnFFPge3 Page 32 C XNT (28,1) =TT1 XNT (28,2) =TT1 XNT (28,3) =TT2 ONT (28)=~B4 C XNT (29,1) =TT1 XNT (2 9,r2) =TT2 XNT (29, 3) =TT1 ONT (29) =B4 C XNT (30,1) =TT1 XNT (30,2) =TT2 XNT (30, 3)=TT2 CNT (30) =B4 C XNT (31, 1)=TT2 XNT (31,2) =TT1 XNT (31,3) =TT1 CNT (31)=~B4 C XNT (32,1) =TT2 XNT (32,2) =TT1 XNT (32,3) =TT2 CNT (32) =B4 C XNT (33,1) =TT2 XNT (33,2) =TT2 XNT (33,3) =TT1 CNT (33) =B4 C XNT (34, 1)=TT2 XNT (34,2) =TT2 XNT (34,,3) =TT2 CNT (34) =B4 C RETURN END

a p o ll o d o m a i n CAEN/Apol lo # # 4 ~# #4444444 - 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 EEEEE E E EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I I y y Y Y y y y y i i i i i i j j j j J j ii ii _ _ _ _ w w aa w w a a w w a a w ww w aaaaaa ww ww a a w w 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 ttttt t t t t t u u aa 1 u u a a i u u a a 1 u u aaaaaa 1 u u a a 1 uuuu a a 111111 F[ I I F f //tera/users/katehi/tape/yij_wave_mutual.ftn LAST MODIFIED ON: 89/04/24 10:38 AM FILE PRINTED: 89/04/24 3:21 PM I I t 0 1 0 i 0 a #; 4 li4 ': I I I I 0 0 i 4 # 4 q i;: 4 a

Print file "yij wavemutual.ftn" Page 1 C.................. ~.......................................................... C The name of this file is YIJ WAVE MUTUAL.FTN C............................................................................................ C This subroutine evaluates the contribution to the admittance matrix C which comes from the waveguide C............................................................................ SUBROUTINE YIJ WAVE IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YS,YS1S2,YSW,YS ADM,YSW ADM,COEF,CI DIMENSION ARG(200),R10(200),X10(200),AC(3),AS(3),ARG1(7), *ARG2 (7),R00 (2) C COMMON/WAYOUT/RS10(7,7,200),XS10(7,7,200),SGMN(7,7,200), *RIJ(7,7,200) C COMMON/DATSUB/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),YSWADM(7,7,200) C COMMON/SERIES / SUM(7,7,1) C COMMON/BESSEL/BJ (7, 4000) C COMMON/IOFF/INSS(7,7),NSSL(7,7) C ARGC=PI/AW DO 1 I=1,NSLOTS ARG2 (I)=ARGC*WS(I) /2. DO ARG1 (I)=ARGC*YOFF (I) 1 CONTINUE CALL VBJO(ARG2) CALL S14(ARG1) C CI=(0.0,1.0) AKK2=AKK*AKK AK02=AKO*AKO C C Evaluation of vector ARG C JMAX=NSSL(1,1) DO 2 I=1,NSLOTS DO 3 J=I,NSLOTS IF (JMAX.LT.NSSL(I,J)) JMAX=NSSL(I,J) 3 CONTINUE 2 CONTINUE DO 4 J=1,JMAX ARG(J)=(J-1) *DLX 4 CONTINUE C C Evaluation of vectors R10,X10 C C3=1.DO B01=DSQRT(C3-1.DO/(2.DO*AW)**2) B012=B01*B01 SCOEF=0.5D0*(C3-B012)/((2.DO*PI*(1.DO-B012))**2*B01) ARGK=AKK*DLX ARGB=ARGK*B01 COSK=DCOS(ARGK) COSB=DCOS(ARGB) COS2K=DCOS(2.DO*ARGK) COS2B=DCOS(2.D0*ARGB) COS2=COSK*COSK SINK=DS IN (ARGK)

Print file "yijwavemutual. ftn " SINB=DSIN (ARGB) SIN2K=2.DO*SINK*COSK SIN2B=2.DO*SINB*COSB SIN2=SINK*SINK C R00(1)=(-DLX+SIN2K/(2.DO*AK))/(4.D*PI) R00(2)=(DLX*COSK-SINK/AK)/(8.DO*PI) C R10 (1)=(8.DO*COSK*SINB-2.DO*SIN2B-2.DO*B01*SIN2K) *SCOEF 01= (COSK-COSB) **2 X10 (1)=-4.DO*C1*SCOEF R10 (2)=2.DO*SINB* (-2.DO*C-l1.DO+BO1*SINK/SINB)*SCOEF X10(2)=-4.D0*COSB*C1*SCOEF DO 5 J=3,JMAX R10 (J)=- 4.D*DSIN(AKO*B01*ARG(J) )*C1*SCOEF XlO (J)=-4.DO*DCOS(AK0*BO1*ARG(J) ) *C*SCOEF 5 CONTINUE DO 6 I=1,NSLOTS DO 7 J=I,NSLOTS COSI=DCOS (ARGi(I)) COSJ=DCOS (ARGi (J) ) SFACT=COSI*COSJ*BJ0 (I,1) DO 8 IJ=1,JMAX RTEST=R10 (IJ) *SFACT RS10 (I, J, IJ) =RTEST XTEST=X10(IJ)*SFACT XS1O (I,J, IJ) =XTEST 8 CONTINUE 7 CONTINUE 6 CONTINUE C C DO 200 I=1,NSLOTS C DO 201 J=1,NSLOTS C WRITE (6,204) IJ C 204 FORMAT(5X,'Interaction between slots',14,' and ', C I41/) C DO 202 IJ=iJMAX C WRITE (6,203) IJRS10(I,J,IJ),XS10(IJ,IJ) C 203 FORMAT(10X,'IJ=', 4,2X,'RS1=',E14.7,2X, C 'XS10=',E14.7) C 202 CONTINUE C 201 CONTINUE C 200 CONTINUE C C Evaluation of vectors AC(A) and AS(a) C AS (1)=2.DO AS (2)=-1.DO AS(3)=O.DO C AC(1)=2.D0*(1.DO+2.DO*COS2) AC(2)=-4.D0*COSK AC(3)=1.DO C C Evaluation of vector SGMN C DO 9 I=1,NSLOTS DO 10 J=INSLOTS KMAX=NSSL (I, J) +2 DO 11 K=1,KMAX SGMN (I, J, K) =O.DO NTEST=0 INDEXN=-1 12 INDEXN=INDEXN+1 EN=0. 5DO IF(INDEXN.GT.0) EN=1.DO Page 2

Print file 11yij wavemutual.ftn" Pg Page 3 C1=(INDEXN/ (2.DO*AW) ) **2 SUMM=O DO INDEXM=O IF (INDEXN.GE.2) INDEXM=-1 ITEST=O 13 INDEXM=INDEXM++1 EM=O.5DO IF (INDEXM.GT.O) EM=1.DO C2=(INDEXM/ (2.DO*BW)) **2 GMN2=C1+C2 -03 GMN=DSQRT (GMN2) ITEST=ITEST+1 D1=AKO* (K-i) *GMN*DLX D2=O.DO IF (D1.LT.40.DO) D2=DEXP(-D1) TERM=EM* (C3+GMN2) *D2/ (GMN* (1.DO+GMN2) **2) SUMM=SUMM+TERM RATIO=O DO IF (SUMM.GT.1.D-4O) RATIO=DABS (TERM/SUMM) ERRORM=ERROR IF (K.LE.3) ERRORM=1.D-9 IF (RATIO.GT.ERRORM) ITEST=O IF (ITEST.LT.5) GO TO 13 NTEST=NTEST+1 CBJO=1 DO IF (INDEXN.GT. 0) CBJO=BJO (I, INDEXN) ARGNI=INDEXN*ARG1 (I) ARGNJ=INDEXN*ARG1 (J) COSI=DCOS(ARGNI) COSJ=DCOS(ARGNJ) TERM=EN*COSI *COSJ*CBJO *S(JSUMM SGMN (I, J, K) =SGMN (I, J, K) +TERM RATIO=DABS (TERM/SGMN(I,J, K)) IF (RATIO.GT.ERROR) NTEST=O IF (NTEST.LT.4) GO TO 12 SGMN(I,J,K)=SGMN(I,J,K)/(2.DO*PI)**2 C C WRITE (6,14) K,INDEXNSGMN(IJ,K) C 14 FORMAT(1OX, 'K=',14,2X,'INDEXN=',I4,2X,'SGMN=', C * E14.7) C 11 CONTINUE 10 CONTINUE 9 CONTINUE C C Evaluation of vector RIJ C DO 15 I=1,NSLOTS DO 16 J=I,NSLOTS RIJ(I,J,1)=AC(1)*SGMN(I,J,1)+2.DO*AC(2)*SGMN(I,J,2) +2.DO*SGMN(IJ, 3) RIJ(IJ, 2)=AC(2)*SGMN(I, J,)+(1.DO+AC(1))*SGMN(IJ,2) +AC (2) *SGMN (IfJi 3) +SGMN (If J1, 4) JMAX=NSSL (I, J) DO 17 JK=3,JMAX RIJ (I, J, JK) =SGMN (I, J, JK-2) +AC (2) *SGMN (I, J, JK-1) +AC(1) *SGMN(IJJK)+AC(2) * SGMN(I,J,JK+1) +SGMN(I,JJK+2) 17 CONTINUE 16 CONTINUE 15 CONTINUE C C DO 19 I=1,NSLOTS C DO 190 J=INSLOTS C WRITE (6,204) I,J C DO 191 JK=1,JMAX

Print file "yijwavemutual. ftn" Page 4 C WRITE (6,18) JK,RIJ(I,J,JK) C 18 FORMAT(2X,'JK=',I4,2X,'RIJ=',E14.7) C 191 CONTINUE C 190 CONTINUE C 19 CONTINUE C C Evaluation of this part of the elements of the admittance C which comes from the waveguide C WRITE (6,20) 20 FORMAT(///10X,'Waveguide Admittance Matrix'///) COEF=CI*SNGL(-2.D0/(120.D0*PI*AW*BW*SIN2)) DO 21 I=1,NSLOTS DO 22 J=I,NSLOTS C C WRITE (6,25) I,J C 25 FORMAT(10X,'Interactions between the slots',I2, C * ' and ',I2/) C JMAX=NS S L (I, J) DO 23 IJ=1,JMAX IF (IJ.LE.2) THEN SINA=DSIN (AS(IJ) *AK0*DLX) YR1=-SINA*SUM (I, J, 1) R IJ=ROO(IJ)+RS10(I,J,IJ)+YR1+RIJ(I,J,IJ) X IJ=XS10(I,J,IJ) ELSE R IJ=RS10(I,J,IJ)+RIJ(I,J, IJ) X IJ=XS10(I,J,IJ) END IF YSW=COEF*(SNGL(R IJ)+CI*SNGL(XIJ)) C C WRITE (6,24) IJ,YSW C 24 FORMAT(5X,'IJ=',I4,2X,'YSW=',E14.7,2X,E14.7) C YSW ADM(I,J,IJ)=YSW 23 CONTINUE 22 CONTINUE 21 CONTINUE RETURN END C.................................................................................. C This subroutine evaluates the single and double series S1,S2,S3,S4 C which are common to all Yij elements C................................................................................... SUBROUTINE S14(ARG) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION ARG(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/SERIES/SUM(7,7,1) C COMMON/BESSEL/BJ0(7,4000) C C Evaluation of the single integral C COST=AW*BW/PI ARGC=PI *BW/AW DO 1 I=1,NSLOTS DO 2 J=I,NSLOTS INDEX=1 ITEST=0

Print file I1yijwavemutual. ftnu COSI=DCOS (ARG(I)) COSJ=DCOS(ARG(J)) COTH=1.DO/DTANH (ARGC) CI=COSI*COSJ*BJO(I,1) SUM(I,J,1)=(BW**2/6.DO)+CI*(ARGC*COTH-1.DO)*(AW/PI)**2 3 INDEX=INDEX+1 ARGNI=INDEX*ARG(I) ARGNJ=INDEX*ARG (J) COTH=1.DO/DTANH (INDEX*ARGC) COSI=DCOS (ARGNI) COSJ=DCOS (ARGNJ) CI=COSI*COSJ*BJO (I, INDEX) TERM=CI *COST*COTH/ INDEX SUM(I, J, 1) =SUM(I, J, 1) +TERM RATIO=DABS (TERM/SUM(I,,J, 1)) IF (RATIO.LT.ERROR) GO TO 4 ITEST=0 GO TO 3 4 ITEST=ITEST+1 IF (ITEST.LT.6) GO TO 3 C C WRITE (6,10) IJ,SUM(IJ,l) C 10 FORMAT (lOX, 'I=', 12,iX, 'J=',12, 3X,,'SUM(I, J, 1)=',E14.7) C 2 CONTINUE 1 CONTINUE RETURN END C This function evaluates the zeroth order first kind Bessel c Function JO SUBROUTINE VBJO(ARG) IMPLICIT REAL*8 (A-HO-Z) DIMENSION ARG(7) C COMMON/DATSUB/ERHT,DLXAWBWATPITPI2,PIElE2,EERAKOAK, *AKKFAOFFSET(7),OFFLIMERRORNOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/BESSEL/BJO (7, 4000) C PI=3.141592653589D0 I=1 1 W=WS(I) Do 2 M=1,4000 X=FLOAT (M) *ARG (I) IF (X.GT.0.001D0) GO TO 10 X3=X/3.DO X32=X3 *x3 X34=X32*X32 X3 6=X3 4 *X32 BSJO=1.DO-2. 2499997D0*X32+1. 2656208D0*x34-0. 3163866D0 * *x36 BJO (I,M)=BSJO GO TO 2 10 IF (X.GT.3.DO) GO TO 12 X3=X/3.DO X32=X3*X3 X34=X32*X32 X36=x34 *X32 X38=X36*X32 X3 1 O=x3 8 *X32 X312=X31 0*x32 BSJO=1.DO-2. 2499997D0*X32+l - 2656208D0*X34-0. 3163866D0 Page 5

Print file "yijwave mutual.ftn" * *X36+0.0444479D0*X38-0.0039444D0*X310+0.00021000 * D0*X312 BJO(I,M)=BSJ0 GO TO 2 12 CONTINUE X3=3.D0/X X32=X3*X3 X33=X32*X3 X34=X33*X3 X35=X34*X3 X36=X35*X3 FJ0=0.79788456D0-0.00000077D0*X3-0.00552740D0*X32-0.0000 * 9512D0*X33+0.00137237DO*X34-0.00072805D0*X35+0.00014 * 476D0*X36 TJO=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) BSJO=WCON*FJO*DCOS(TJ0) BJ0(I,M)=BSJ0 2 CONTINUE IF (I.EQ.NSLOTS) GO TO 100 5 I=I+1 LIMAX=I-1 DO 3 LI=1,LIMAX IF(WS(I).EQ.WS(LI)) THEN DO 4 M=1,4000 BJ0(I,M)=BJO (LI,M) 4 CONTINUE IF (I.EQ.NSLOTS) GO TO 100 GO TO 5 END IF 3 CONTINUE GO TO 1 100 CONTINUE RETURN END Page 6

4#R##t# 4t4###### a p ollo d o m a i n CAEN/Apollo ##tbfffAt#d#1; #gbfgfffYBaffaffi #tfftt#tflb#tfB1! IfXlfgggff4t4i K K K K K K KKK K K K K K K A TTTTTTT AA T A A T A A T AAAAAAA T A A T A A 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 I I aa a a a a aaaaaa a a a a rrrrr rrrrr r r r r r r r r rrrrr rrrrr r r r r r r' r r aa n n gggg a a nn n g g a a nn n g aaaaaa n n n g ggg a a n nn g g a a n n gggg 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 ttttt t t t t t U U aa 1 U U a a I u u a a 1 u u aaaaaa 1 U u a a I UUUU a a 111111 ffffff f fff ff f f f //tera/users/katehl/tape/arrange-mutual.ftn LAST MODIFIED ON: 89/04/24 10:38 AM FILE PRINTED: 89/04/24 10:47 AM tX#fffBIXIXgX X#tft#tgXXXXXXt flffffgffffXXWXXXf ffffbttfXXXXXXi f # # ## ## # 4 4 " r -f # # # # # #, t~tf#gtffft,.4

Print file "arrange_mutual.ftn" Page 1 C The name of this file is.......... ARRANGE MUTUAL............... * * * * * * * * *** * ** * *** * ** * * * * * ** * * * * * * * ** * * * * * * * * *** * * * * * * * * * * * * * * * * * * SUBROUTINE ARRANGE MUTUAL IMPLICIT REAL*8 (A-H,O-Z) C COMMON/MAN/IBMATR(260,260) C 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 C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C.................................................................... C DATA C.................................................................... NOEL1=NSL(1) NOEL2=NSL(2) NS12=NXOFF (2)-NXOFF (1) NOR=NOE L+NOEL2 WRITE(6,222) NOEL1,NOEL2,NS12 222 FORMAT (10X,'NOEL1=',I4/10X,'NOEL2=',I4/10X,'NS12=', *I4,//////) C C.....First Diagonal Matrix......... C 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 C C....... Second Diagonal Matrix........ C C 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 C C...1... First off-diagonal matrix C C 1) Upper Part C 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

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 C C....... 2) lower Part.............. C IMIN=2 IMAX=NOEL1 DO 16 I=IMIN,IMAX IXN=I-1 LXN=IABS (NS12-I+IMIN-1)+1 IF (IAI.GT.0) 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

Print file "poles.ftn" Page 1 C The name of this file is........... POLES.FTN................ SUBROUTINE SPOLES IMPLICIT REAL*8 (A-HO-Z) C........................................................................ 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/ER,H,T,DLX,AW,BW,Y0,A,TPI,TPI2,PI,W,E1,E2,EER, *AKO GENER,AKGENER,AKK GENER,FA,OFFSET(7),ALONG(7),WDELTA, *OFFLIM,ERROR, NS1,NS2,NSS2,NOFF C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(151), TMP(20), TEP(20), *AM(41),DM(41),TPO(40),VXXM(20),VZXM(20),VZXE(20),BPOINT(10), *BCOAL(10),MPOINT,NPOINT,NKO,MA,NM,NE,NKOK,IFIRST C AER=DSQRT(EER) ER2=ER*ER PI2=PI*PI MAXE=5 ERR=0.0000001DO DP=H/AER C C PART I: TE MODES C AKO=2.D0*PI AK=DSQRT (ER) *AKO X0=DP*DSQRT(AK**2-AK0**2) C --- —--------------------------------------------------------- C WRITE (6,300) AKO,AK,XO,PI C 300 FORMAT(10X,'AK0=',E14.7,2X,'AK=',E14.7,2X,'X0=',E14.7, C *2X,'PI=',E14.7/) C --- —----------------------------------------------------- AN=X0/PI+0.5D0 NE=AN IF (NE.EQ.0) GO TO 310 DO 2 I=1,NE IF (X0-(2.DO*FLOAT(I)+1.D0)*PI/2.DO) 3,3,4 4 XS0=(2.DO*FLOAT(I)-1.DO)*PI/2.DO+ERR XS1= (2.DO*FLOAT(I) +1.DO) *PI/2.D-ERR GO TO 5 3 XS0=(2.D0*FLOAT(I)-1.D0)*PI/2.D0+ERR XS1=X0 5 CONTINUE IF (DABS(XSO-XS1)-ERR) 22,7,7 7 XSA=(XSO+XS1)/2.D0 Y=-DTAN(XSA)*DSQRT(X0**2-XSA**2)-XSA IF (Y) 8,9,10 9 XS(I)=XSA GO TO 222

Print fi 'e "poles -ftn" Pae Page 2 8 1 0 XS1=XSA GO TO 5 XSO=XSA GO TO 5 XS (I) =(XSO+XS1) /2.DO XS (I =DSQRT (AK* *2 -XS (I) * *2 /DP * *2) CON 'INUE 22 222 2 C --- —--------------------------------------------------------------- C WRI E (6,301) ERH C301 FOR kT(//10X,' Dielectric Constant=',D16.9/l0X,'SubstrateI C *,/ IT. ickness'I, D1 6.9 / //) C --- —----------------------------------------------- 31 0 IF ~' 3 04 F C R.1, IF IF 3 05 FORM. * ' T E DO 3t IE.EQ.0) WRITE (6,304).T(/////10X,I'No TE waves excited in thE ~E.EQ.0) GO TO 312 E.GT.0) WRITE (6,305) NE T (///10X,'IThere are',14, waves excited in the substrate'//) 2 I=lrNE TEP (I) =XS (I) /AER IF (I.GT.1) THEN I MAX=I-1 DO5 502 I I=1,I MAX TEP MfIN=TEP-(II) IF TTEP (). LT. TEP (II)) THEN TEP(I I)=TEP(I) TEP(I)=TEP MIN END IF CONTINUE END IF esubstrate'!!) 502 302 CONTIN'E DO 503 '1=1,NE IRITE (6,303) I,TEP(I) 303 'ORMAT (10XI142XD16.9) 503 CONTINL 312 CONTINI.' C C C C C C END OF ART I PART II TM MODES AN=XO/PI 1.DO NM=AN DO 13 I=, NM IF (X0-(2.D0*FLOAT(I)+1.D0)*PI/2.D0) 14,14,15 15 XS- =FLOAT(I)*PI-PI/3.D0-0.01D0 GO '70 16 14 XSI:XO 16 XSC -FLOAT (I-1) *PI+ERR 17 CON INUE IF DABS(XSO-XS1)-ERR) 113,19,19 19 XIRA (XSO+XS1)/2.DO C --- —------------------------ ----------------------------- C WRIii (6,301) XRA C 301 FOR1~.T (10X,'#XRA=',.E14.7/) C --- —------------------------------------------------------------------------ Y=DS RT(ER)**2*(1..D0/DTAN(XRA))*DSQRT(XO**2-XRA**2)-XRA IF ( ) 20,21,24 21 XR(I =XRA GO T( 333 20 XS1=) ~A GO TC 17 24 XSO=X A GO TO 17 113 XR(I): (XSO+XS1)/2.DO

Print file "poles.ftn" 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(II)) THEN TMP(I I)=TMP(I) TMP(I)=TMP MIN END IF 508 CONTINUE END IF 308 CONTINUE DO 506 I=1,NM WRITE (6,306) I,TMP(I) 306 FORMAT (10X,I4,2X,D16.9) 506 CONTINUE 322 CONTINUE Page 3 C C 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+ DO 413 -1 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 413 CONTINUE 415 CONTINUE IF (LOR(1).EQ.0) IFIRST=0 IF (LOR(l).EQ.1) IFIRST=1 GO TO 417 C 416 IFIRST=2 417 CONTINUE RETURN END

###~#~######### #+###~^~$#^t#< #####t######### #$######$####$### a p o ll o d o m a i n CAEN/Apollo *# #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 I III y y Y Y y y y y i i i i i i j j j j j j jiiii ddddd d d d d d d d d ddddd i eeeeee i e i eeeee i e i e i eeeeee 1 1 1 1 1 111111 000 k k 0 0 k k 0 0 kkkk 0 0 k k 0 0 k k 0 0 k k 000 ffffff if f f fff if if if ttttt t t t t t n n nn n n n n n n n n nn n n //tera/users/katehi/tape/yij_diel_kO.ftn LAST MODIFIED ON: 89/04/24 10:44 AM FILE PRINTED: 89/04/24 11:03 AM I IC ICCI *qC 4 4 4444 I a I * #IeI0 #"I4 4 4 -

Print file "yijdielkO. ftn" Page 1 C.................. YIJ-DIELKO.FTN C C In this program AKK=AKO C SUBROUTINE YIJ DIEL IMPLICIT REAL*8 (A-H,O-Z) REAL*4 CONST,GSK,FSK,GS1S2K COMPLEX YSD,YSW,CI C COMMON/CTAIL/S1(4,205,7),D1(4,205,7),D2(4,205,7), *T1(4,205,7),T(44,205,7),T3(4,205,7),T4(4,205,7) C COMMON/ADMAT/YSD(250),YSW(250),NS,NS1S2 C COMMON/OUT/GS(250) C COMMON/MAT/PLI,AI,TI,V(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),SERA(5), *DARG(10,4),S(10,2),WREAL,NSER,NMAX(7) C COMMON/DAT/ER, H,T,DLX,AW,BW, YO, A,TPI,TPI2,PI, W, E, E2,EER,AKO,AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(151),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 C COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ, FlX,F1Z C COMMON/IOFF/INS,INS1S2 C COMMON/TEST/FSD(250) C COMMON/B01/BJ, BJ1 C WREAL=W W=WREAL*(1.DO+2.DO*WDELTA/WREAL) C C C Subroutine POLES evaluates the poles of the Green's function C and orders them according to their magnitude C C IFIRST=0:dominant mode is a TM wave C 1:dominant mode is a TE wave C 2:only one TM wave C CALL SPOLES C C This subroutines gives data for the numerical integration C CALL DATASLOT C CI=(0.00,1.00) C NS=NS1 IF (NS1.LT.NS2) NS=NS2 MS=NS IF (NOFF.EQ.1) GO TO 50 NSlS2=NS2+NSS2-1 MSlS2=NSlS2 IF (NSlS2.GT.200) NS1S2=200 C

Print file "yijdiel_kO. ftn" Page 2 50 CONTINUE IF(NMAX(INS).LE.(NS+2)) NMAX(INS)=NS+2 IF (NOFF.EQ.1) GO TO 51 IF(NMAX(INS1S2).LE.(NS1S2+2)) NMAX(INS1S2)=NS1S2+2 C C 51 ADL=AKK*DLX YSIN=DSIN(ADL) YCOS=DCOS(ADL) C C For the normalization of the current along the y axis C CVON=W*PI/2.DO C C Computation of lamda-integration limits between 0 and A C C CALL LIMIT C C Evaluation of the Green's function at different points C in the interval [0,A]. The Bessel function has been excluded C CALL GREEN C C Evaluation of the tail contribution (from a to infinity) C CALL TAIL C CONST=- (1. D0/CVON) *DSQRT (EER) / (480.DO* (PI**3) *YSIN*YSIN) C WRITE (6,99) CONST 99 FORMAT(1OX,'CONST=',E14.7//) WRITE(6,9) 9 FORMAT(///1OX,'Contribution to admittance from the dielectric'///) WRITE(6,10) MS 10 FORMAT(11X,14) DO 11 K=1,MS YSD(K)=YSD(K)*CONST GSK=REAL (GS (K) -FSD(K) ) *CONST WRITE (6,30) K,YSD(K),GS(K),FSD(K) 30 FORMAT (X,'K=',I4/2X,'YS=',E14.7,2X,E14.7,2X, * 'GS=',E4.7,2X, 'FSD=',E14.7/) YSD (K) = (YSD(K)+GSK) *CI 11 CONTINUE DO 20 K=1,MS WRITE (6,12) YSD(K) 12 FORMAT(10X,E14.7,1X,E14.7) 20 CONTINUE C 1000 CONTINUE RETURN END C.................................................................... C.................................................................. C This subroutine evaluates the limits of integration in C the interval [0,A]. C Specifically: C 1) It divides the interval [0,k0] to 10 equal C subsections and then apply fixed-point Gaussian C Quadrature C 2) It divides the interval [kO,k] into so many C subsections as the number of poles and in C such a way that each subsection includes one C pole only away from the ends of the subsection C 3) It divides the interval [k,A] into 20 equal C subsections and then apply fixed-point Gaussian

Print: file "yijdielkO. ftn" C Quadrature SUBROUTINE LIMIT IMPLICIT REAL*8 (A-H,O-Z) EXTERNAL WSPEWTPEWSPM C COMMON/DAT/ER,H,T, DLX,AW,BW, YO,A,TPI,TPI2,PI, W,El, E2, EER,AKO,AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(151),POLTM(20), *POLTE(20),AM(41),DM(41),POLES(40),VXXM(20),VZXM(20),VZXE(20), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NK0,MA,NTMNTENKOK,IFIRST C C --- —------------------------------------------— + C Step 1: Evaluation of vector CN C it gives the end points of the C intervals considered in (0,kO) C ----------------------------------------------— + DELTA=AKO/FLOAT (NKO) CN(1)=O.=0DO DO 1 I=1,NKO CN (I+1) =DELTA*FLOAT (I) 1 CONTINUE C ---- --------------------------------------------— + C Step 2: Evaluation of vector BM C it gives the end points of the C intervals considered in (k,A) C- ------------------------------------------------— + DELTA=(A/DSQRT(EER)-AK)/FLOAT(MA) BM(1)=AK DO 2 I=1,MA BM (I+1) =DELTA*FLOAT (I) +AK 2 CONTINUE C --- —------------------------------------------— + C Step 3: Evaluation of the vectors AM,DM C "AM" gives the end points around 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<TMO C 0 TMO<TEO C --- —--------------------------------------------— + AM(1)=AKO DM(1)=AKO 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.DO DM(I+l)=AM(I+l) 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 C Page 3

Print file "yijdiel_kO. ftn" Page 4 3 DELTA= (AK-AKO)/FLOAT (NKOK) AM(1)=AKO DO 9 I=1,NKOK AM (I+1) =DELTA*FLOAT (NKOK) +AKO 9 CONTINUE 7 CONTINUE C --- —------------------------------------------— + 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 I --------------------------------------------— + DO 12 I=1,NTM ARG=POLTM(I) VXXM(I)=GXXM(ARG) VZXM(I) =GZXM(ARG) 12 CONTINUE RETURN END C This subroutine evaluates the values of the integrand of C 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 C the corresponding values of the Green's function. C Finally, it multiplies these products with known coeffic. C and it adds them up. This way, the moments'-method C space integrals of the first part of the Green's function are C evaluated and are stored in the complex vectors ZS,ZS1S2..................................................................... SUBROUTINE GREEN IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YSD,YSW,CI C COMMON/ADMAT/YSD(250),YSW(250),NS,NS1S2 C COMMON/MAT/PLI,AI, TI,V (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),SERA(5), kDARG (10,4),S (10,2),WREAL, NSER, NMAX(7) C COMMON/DAT/ER,H,T,DLX,AW,BW,YO,A,TPI,TPI2,PI,W,E1,E2,EER,AKO,AK, AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2, NOFF C COMMON/DATT/COAL (20),POINT (20),CN(51),BM(151),POLTM(20),?OLTE (20),AM(41), DM(41),POLES (40), VXXM(20),VZXM(20),VZXE (20), 3POINT (10), BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST C:OMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FIX, F1Z C OMMON/IOFF/INS, INS1S2 C C --- —- ------------------------------------------— + C -valuation of the coefficients for the I C FF's functions C --- —-... --- —---------------— + —

Print file "yijdielkO. ftn" Page 5 F1X=1. 0 F1Z=2.D0*(1.DO-ER)/((l.DO+ER)*(1.DO+E2)*(1.DO+0.5D0*E1)) IF ((ER-1.DO).LT.0.005) F1Z=0.DO C CALL ARIS C DO 1 I=1,NPOINT INCON=I IY=I AI=COAL(I) TI=POINT(I) C C evaluation of intervals 1 and 2 C IAD=1 DO 2 N=1,NKO AUP=CN(N+1) ALOW=CN(N) CALL FUNCT(IAD,AUP,ALOW,N,INCON) 2 CONTINUE C C evaluation of intervals 3 and 4 C 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(IAD,AUP,ALOW,N,INCON) IFD=IFD+l 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 C evaluation of the interval 7 C 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 C C C evaluation of the intervals 8,10 C IAD=8 IFD=0

Print file "yijdiel_kO. ftn" Page 6 DO 8 N=1,NTM IFD=IFD+l AUP=AM (IFD+l) ALOW=AM (IFD) CALL FUNCT (IAD,AUP,ALOW,N, INCON) IFD=IFD+1 8 CONTINUE RETURN END C Functions: GXXM,GZXM,HZXE C C These functions evaluate the residues from the different poles FUNCTION GXXM(X) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT/ER,H, T,DLX,AW,BW,YO0,A, TPI, TPI2, PI,W, E1,E2, EER,AK0,AK, *AKK,FA,OFFSET(7), ALONG(7), WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF 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* (-H+T) SXN=RM*DCOS (RMT) -ER*RMO*DSIN (RMT) SXD= (ER+RMOH) * (RM/RMO) *DCOS (RMH) + (1.DO+ER*RMOH) *DSIN (RMH) GXXM=SXN/ SXD RETURN END C C..................................................................... C FUNCTION GZXM(X) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT/ER, H, T, DLX,AW, BW, Y0,A, TPI, TPI2, PI, W, El, E2, EER, AKO, AK, *AKK, FA, OFFSET (7), ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF 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/RM0+ (1.DO+ER*RMOH) *SNH/RM) GZXM=SXN/SXD RETURN END C C C FUNCTION HZXE(X) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT/ER, H, T, DLX, AW, BW, YO, A, TPI, TPI2, PI, W, El, E2, EER, AKO,AK,

Print file "yijdielkO.ftn" Page 7 *AKK, FA,OFFSET (7),ALONG(7), WDELTA,OFFLIM,ERROR,NS, NS2,NSS2,NOFF C 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=RM*CST SXD= (ER*RMO*CSH-RM*SNH) * (1.DO+RMOH) * (SNH/RMO-CSH/RM) HZXE=SXN/SXD RETURN END C................................................................. C 1) This subroutine evaluates the integrand of the Green's C function at different points (subroutine Grei). C 2) It evaluates the space integrals comming from the C application of moments' method (subroutine adonis) C 3) Multiply these two valueswith appropriate weighting C coefficients and it adds them upZXX2*SAJO(K) C................................................................. SUBROUTINE FUNCT(IAD,AUP,ALOW,N, INCON) IMPLICIT REAL*8 (A-H,O-Z) REAL*4 S1,S2 COMPLEX YSD,YSW, CI C COMMON/ADMAT/YSD(250),YSW(250),NS,NS1S2 C COMMON/MAT/PLI,AI,TI,V(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), *SERA (5),DARG(10,4), S (10,2) WREAL,NSER,NMAX(7) C COMMON/DAT/ER, H,T, DLX,AW, BW, YO,A, TPI,TPI2,PI,W, E, E2, EER,AKO, AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(151),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 C COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ,F1X,F1Z C COMMON/IOFF/INS, INS1S2 C COMMON/TEST/FSD (250) C CI=(0.,.00) NCON=0 X=AUP-ALOW Y=AUP+ALOW AK02=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*ER1

Print file "yij dielkO.ftnhr IF (DABS (ERl).LT.O.005) GCONZ=O.DO FCONZ=FCONX AIMA=1.DO CALL GREI (ALl, 0.DO,0.D O, lAD, r0.DO) GO TO 10 1 IF (IAD.NE.3) GO TO 2 ALI=0.5DO*(TI*X+Y) XTM=POLTM (N) TMTM= (2.DO*XTM-Y) /X GCONX=AI/ (TI-TMTM) GCONZ=GCONX* ER1 FCONX=AI*X*O. 5D0 FCONZ=FCONX AIMA=0 DO IF (DABS(ER1).LT.0.005) THEN GCONX=0. 0 GCONZ=0. 0 FCONX=0. 0 FCONZ=O 0 END IF CALL GREI(ALIXTMO.DOIADO.D0) GO TO 10 2 IF (IAD.NE.4) GO TO 3 ALI=POLTM (N) TM=(2.DO*ALI-Y) /X 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.O.005) THEN GCONX=O. 0 GCONZ=O 0. FCONX=O.0 FCONZ=O. 0 END IF GO TO 10 3 IF (IFIRST.EQ.2) GO TO 5 IF (IAD.NE.5) GO TO 4 ALI=0.5D0*(TI*X+Y) XTE=POLTE(N) TMTE=(2.DO*XTE-Y) /X GCONX=AI*X*0.5D0 GCONZ=AI*ER1/(TI-TMTE) FCONX=GCONX FCONZ=FCONX AIMA=O DO IF (DABS(ER1).LT.O.005) THEN GCONX=O. 0 GCONZ=O. 0 FCONX=O 0. FCONZ=O.0 END IF CALL GREI(ALlO.DOXTE, IADTMTE) GO TO 10 4 IF (IAD.NE.6) GO TO 5 NCON=6 ALI=POLTE(N) TM=(2.DO*ALI-Y) /X GCONX=0 DO GCONZ=-AI*ER1/ (TI-TM) FCONX=0.DO FCONZ=0.DO AIMA=O DO Page 8

Print file "yij dielkO.ftnv RZ=VZXE (N) IF (DABS(ER1).LT.O.005) THEN GCONXO. 0 GCONZ=O.0 FCONX=O. 0 FCONZO. 0 END IF GO TO 10 5 IF (IAD.NE.7) GO TO 6 ALI=0.5DO*(TI*X+Y) GCONX=AI*X*0. 5D0 GCONZ=GCONX*ER1 IF (DABS (ER1).LT.0.005) GCONZ=0.O FCONX=GCONX FCONZ=FCONX AIMA=O.DO CALL GREI(ALI,0.D0,0.D0,IAD,0.D0) GO TO 10 6 NCON=8 ALI=POLTM (N) TM=(2.DO*ALI-Y) /X FCONX=0 DO FCONZ=O DO AIMA=O DO RX=VXXM (N) RZ=VZXM (N) GO TO 28 C 10 CONTINUE GXXR=GCONX* RX FXXR=FCONX* FRX GXXX=AIMA*GCONX*XX GZXR=GCONZ * RZ F ZXR=FCONZ * FRZ GZXX=AIMA*GCONZ *XZ 27 CONTINUE VARX= (AK2 -AKK2) *GXXR+AKK2 *GZXR FARX= (AK2-AKK2) *FXXR+AKK2*FZXR VARZ=AKK*(GXXR-GZXR) FARZ=AKK* (FXXR-FZXR) GXXR=VARX FXXR=FARX GZXR=VARZ FZXR=FARZ VARX= (AK2 -AKK2) * GXXX+AKK2*GZXX VARZ=AKK* (GXXX-GZXX) GXXX=VARX GZXX=VARZ PLI=ALI C CALL ADONIS DO 13 K=1,NS S1=REAL (GXXR*SSJO (K, INS) +GZXR*SAJO (K, INS)) FS1=REAL (FXXR*SSJO (K, INS) +FZXR*SAJO (K, INS)) 52=REAL (GXXX*SSJO (K, INS) +GZXX*SAJO (K, INS)) YSD (K) =YSD (K) +S1l-CI*S2 FSD (K) =FSD (K) +FS1 C C IF (K.EQ.1) THEN C WRITE (6,966) NCONIAD,ALI C 966 FORMAT(1OX,'NCON=',I4,2X,'IAD=',I4,2X, C 'ALI=',E14.7/) C WRITE (6,866) FXXRFZXRFS1 C 866 FORMAT(1OX,'FXXR=',E14.7,2X,'FZXR=',E14.7, C 2X,'FI1=',E14.7/) C WRITE (6,766) YSD(K),FSD(K) Page 9

Print file "yij dielkO.ftn" C 766 FORMAT(10X,'YSD=',E14.7,1X,E14.7,2X,'FSD=',E14.7//) C END IF C 13 CONTINUE 28 IF (NCON.EQ.O) GO TO 24 IF(INCON.LT.NPOINT) GO TO 24 GCONX1=0.0 GCONX2=0.0 GCONZ1=ER1*DLOG((l.DO-TM)/(1.DO+TM)) GCONZ2=ER1*PI IF (NCON.EQ.6) GO TO 29 GCONX1=DLOG( (.DO-TM) / (.DO+TM)) GCONX2=PI 29 CONTINUE GXXR=GCONX 1 * RX GXXX=GCONX2 *RX GZXR=GCONZ1*RZ GZXX=GCONZ2 *RZ FXXR=0.0 FZXR=0.0 IF (DABS(ER1).LT.0.005) THEN GXXR=0.0 GXXX=0.0 GZXR=0.0 GZXX=0.0 END IF 25 CONTINUE NCON=0 GO TO 27 24 CONTINUE RETURN END C................................................................... C This subroutine evaluates the integrand of the green's C function at different points C..................................................................... SUBROUTINE GREI(X,XFM,XFE,IAD,TM) IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT/ER,H, T, DLX,AW,BW, YO, A,TPI,TPI2,PI, W,El, E2,EER,AKO,AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ, FX,F1Z C X2=X*X AK2=AK*AK AK02=AKO*AKO RM=DSQRT(DABS(AK2-X2)) RM0=DSQRT (DABS (X2-AK02)) RMH=RM*H RMT=RM*T RMHT=RM* (-H+T) C CSH=DCOS(RMH) SNH=DSIN(RMH) CST=DCOS(RMT) SNT=DSIN(RMT) CSHT=DCOS(RMHT) SNHT=DSIN(RMHT) C RM2=RM*RM RM02=RMO*RM0 C ' 2=CSH*CSH E:0=ER*RM0 ERM02=ERM0*ERMO C Page 10

Print file "yij dielkO. ftn" 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-1.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-1.DO/EX) TANT=SNHT/CSHT EX=DEXP(RMHT) CSHHT=0.5D0*(EX+1.DO/EX) SNHHT=0.5D* (EX-1.DO/EX) TANHT=SNHHT/CSHHT C 100 IF (IAD.NE.1) GO TO 1 DEN=RM2+ (ERM02-RM2) *CSH2 RNOM=-RM2*SNT+(RM2-ERM02)*CSH*SNHT XNOM=ER*RM*RMO*CST C1=X/RM C RX=C1*RNOM/DEN IF((ER-1.DO).LT.0.005) RX=O.DO XX=C1*XNOM/DEN FRX=F1X*EXX C DEN=DEN*(RM02+AK02*(ER-1.DO) *CSH2) RNOM=-CST*(RM2+ER*RM02)*CSH*SNH XNOM=CST*RM*RMO* (-1.DO+(1.DO+ER)*CSH2) C1=X*RM RZ=-C1 *RNOM/DEN XZ=C1*XNOM/DEN FRZ=F1Z*EXZ RETURN 1 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+RM0*SNH) RNOM=CST C3=X*RM RZ=C1*C3*RNOM/DEN C FRX=FlX*EXX FRZ=F1Z*EXZ RETURN C 10 RNOM=1.DO-ERMO* (-H+T) RX=C1*X*RNOM/ERMO FRX=F1X*EXX C RZ=X*C1/(ERMO*(1.DO+RMO*H)) FRZ=F1Z*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-ERMO* SNHT DEN=ERMO*CSH-RM* SNH RX= (X/RM) *RNOM/DEN FRX=F1X*EXX C Page 11

Print file "yij diel kO. ftn" RNOM=RM*CST DEN=DEN* (RM*CSH+RMO* SNH) RZ=X*C1 *RNOM/DEN FRZ=F1Z*EXZ RETURN 13 RX=X* (1.D0-ERM0* (-H+T)) /ERMO FRX=F1X*EXX RZ=X*C1/(ERMO*(1.DO+RMO*H)) FRZ=F1Z*EXZ RETURN 4 IF (IAD.NE.7) GO TO 6 IF (DABS(X-AK).LT.1.D-6) GO TO 15 DEN=ERM0+RM*TANH RNOM=(RM+ERMO*TANH)*CSHT-DEN*SNHT RX= (X/RM) *RNOM/DEN FRX=FlX*EXX C RNOM=X*(RM*CSHT)/(CSHH*CSHH) DEN=DEN*(RM+RMO* TANH) RZ=RNOM/DEN FRZ=F1Z*EXZ RETURN 15 RX=X*(1.D0-ERM0*(-H+T))/ERM0 FRX=FlX*EXX RZ=(X/ERM0)/(1.DO+RMO*H) FRZ=F1Z*EXZ 6 CONTINUE RETURN END C ARIS C................................................................. SUBROUTINE ARIS IMPLICIT REAL*8 (A-H,O-Z) C COMMON/DAT/ER, H, T, DLX, AW, BW, YO0,A, TPI, TPI2,PI, W,E1,E2, EER,AKO, AK, *AKK,FA,OFFSET(7),ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(151),POLTM(20), *POLTE(20),AM(41),DM(41),POLES(40),VXXM(20),VZXM(20),VZXE(20), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NK0,MA,NTM,NTE,NKOK,IFIRST C 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) C COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ,FlX,F1Z C C + --- —--------------------------------------— + C Formation of the matrices: DIST, C DARG,RCOE C I I C + --- — ---------------------------------— + W2=W/2.DO U=WREAL/W THMIN=DATAN(DSQRT(1.D0/(U*U)-1.D0)) THMAX=PI-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) Page 12

Print file "yij dielkO.ftn" FI=X*(POIN+1.D0) THETA=AX*POIN+BX AS=DSIN(FI) AC=DCOS (FI) DARG(I, 1) =W2*AC DARG(I,2)=AC DARG(I,3)=AS DARG(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.D0*DSIG*DSIG2/SIG DSIG4=-3.D0*DSIG2*(DSIG2-4.D0*DSIG**2/SIG)/SIG DSIG5=-3.D0*(-15.D0*DSIG2**2*DSIG+(20.D0/SIG)* * DSIG2*DSIG**3)/SIG2 DSIG6=-3.D0*(-15.D0*DSIG2**3+(180.D0/SIG)*DSIG2 * **2*DSIG**2-(120.D0/SIG2)*DSIG2*DSIG**4)/ SIG2 DSIG7=-3.D0 *(525.DO*DSIG2**3*DSIG-(2100.D0/SIG)* * DSIG2**2*DSIG**3+(840.D0/SIG2)*DSIG2*DSIG ***5)/SIG3 DSIG8=-3.D0*(525.D0*DSIG2**4-(12600.D0/SIG)*DSIG2 **3*DSIG**2+(25200.D0/SIG2)*DSIG2**2*DSIG**4 * -(6720.DO/SIG3)*DSIG2*DSIG**6)/SIG3 C C Evaluation of the coefficients Gij C G21=DSIG2 G22=DSIG**2 C --- —----------- G41=DSIG4 G42=4.DO*DSIG3*DSIG+3.D0*DSIG2**2 G43=6.DO*DSIG2*DSIG**2 G44=DSIG**4 C --- —----------- G61=DSIG6 G62=6.DO*DSIG5*DSIG+15.DO*DSIG4*DSIG2+10.D0*DSIG3**2 G63=15.DO*DSIG4*DSIG**2+60.D0*DSIG3*DSIG2*DSIG+15.DO * *DSIG2**3 G64=20.D0*DSIG3*DSIG**3+45.D0*DSIG2**2*DSIG**2 G65=15.DO*DSIG2*DSIG**4 G66=DSIG**6 C --- —----------- G81=DSIG8 G82=8.D0*DSIG7*DSIG+28.D0*DSIG6*DSIG2+56.D0*DSIG5 * *DSIG3+35.D0*DSIG4**2 G83=28.D0*DSIG6*DSIG**2+168.DO*DSIG5*DSIG2*DSIG+ * 280.DO*DSIG4*DSIG3*DSIG+210.D0*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.D0*DSIG2**4 G85=70.DO*DSIG4*DSIG**4+560.D0*DSIG3*DSIG2*DSIG**3 * +420.D0*DSIG2**3*DSIG**2 G86=56.D0*DSIG3*DSIG**5+210.D0*DSIG2**2*DSIG**4 Page 13

Print file "yijdielkO. ftn" G87=28.DO*DSIG2*DSIG**6 G8 8=DS IG* * 8 C — --------------- RCOE(2,N, JI)=O.5DO* (G22+SIG*G21) RCOE (1, N, J, I) =O. 5D0* (G22 -SIG*G21) C --- —----------- SX=O.5DO*SIG*(G42-SIG*G41) S30=-0.5DO*SIG*(G42+SIG*G41) S31=O.25D0*(SX+3.DO*G43) S33=O.25DO*(SXG43) RCOE(3,NJI)=0.5DO*(SIG*S33/3.DO+G44/4.DO) RCOE(4,NJ, I)=O.5DO*(SIG*S31+SIG*S33/3.DO G44) RCOE(5,N,J,I)=0.5D0*(SIG*S31+3.DO*G44/4.DO) RCOE(6,NJI)=SIG*S30 C --- —----------- SX=SIG*S33/3.DO+G64/4.DO ST=SIG*S31+SIG*S33/3.DO-G64 S5M3=SIG2*S30 S5M1=O.5D0*SIG* (SIG*S31+3 DO*G64/4 DO) S51=0.25D0*(0.5DO*SIG*ST-5.DO*G65/2.DO) S53=0.25D0*(O.5D0*SIG*ST+0.25D0*SIG*SX+0.5D0*G65/ 4.DO) S55=0.125D0*(0.5DO*SIG*SX-. 5*G65) RCOE(7N,NJ, I)=O.5D0*(SIG*S55/5.DO+G66/16.DO) RCOE(8,N,JI)=0.5D0*(SIG*S53/3.DO+SIG*S55/5.DO6.DO*G66/16.DO) RCOE(9,NJI)=O.5D0*(SIG*S51+SIG*S53/3.DO+15.DO* G66/16.DO) RCOE(10,NJI)=O.5D0*(SIG*S51-10.DO*G66/16.DO) RCOE (11,N,J, I)=SIG*S5M1 RCOE (12, N, J, I) =SIG*S5M3 C --- —----------- S7M5=SIG2*S5M3 S7M3=SIG2*S5M1 S7M1=0.5D0*SIG*(SIG*S51-10.DO*G86/16.DO) S71=O.5D0* (0.25D0*sIG* (SIG*S51+SIG*S53/3.D+ 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)+00125DO*SIG*(SIG*S53/3.DO+SIG* S55/5.DO-6.DO*G86/16.DQ)-21.DO*G87/32.DO) S75=0.5DO*(0.125D0*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=O.5D0*((SIG/12.DO)*(SIG*S55/5.DO+G86/16.DO)G87/32.DO) RCOE(13,NJI)=O.5D0*(SIG*S77/7.DO+G88/64.DO) RCOE(14,N,NJ, I)=O.5D0*(SIG*S75/5.DO+S77*SIG/7.DO -8.DO*G88/64.DO) RCOE(15,N,J,I)=O.5DO*(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,N,J,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 1 CONTINUE C C Formation of the series s(dlx). Storage in C vectors SERS(5),SERA(5) C Ul=2.DO*THMIN/FLOAT (NSER) DO 6 JN=1,NSER Page 14

Print file 1yijjdielkO.ftnu" S2= (2. D*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 ADL 6=ADL5 *ADL YSIN=DSIN (ADL) YCOS=DCOS(ADL) C SER1= (1.DO-YCOS) *2.DO/AKK C SER2=-YSIN/3.DO+ADL*YCOS/4.DO+ADL2*YSIN/l0.DO ADL3*YCOS/36.DO -ADL4*YSIN/168.DO+ADL5*YCOS/960.DO+ADL6*YSIN/6480.DO C SER3=YSIN/60.D0 ADL*5.D0*YCOS/360.D0 ADL2*YSIN/168.D0+ADL3 * *YCOS/560.DO+ADL4*YSIN/2592.DO ADL5*YCOS/12960.DO ADL6 *ySIN195040.DO C SER4=-YSIN/2520.DO+ADL*YCOS/2880.DO+ADL2*YSIN/6480.DO-ADL3 * *yCOS/21600.DO ADL4*YSIN/95040.DO+ADL5*YCOS/518400.DO C SER5=YSIN/181440.DO ADL*YCOS/2016O0.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.D0*SER1*SER3) SERS(4)=DLX* (2DO*SER1*SER4+2.D0*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 C This subroutine evaluates the space integaris of the bessel C function C C................................................................ SUBROUTINE ADONIS IMPLICIT REAL*8 (A-HO-Z) DIMENSION BJ(10,2),DERIV(9,3) C COMMON/ADON/DIST(25,7,10 ),RCOE(2,25f,7,10 ),AXSERS(5), * SERA (5), DARG (10, 4), 5 (10, 2),WREAL, NSER, NMAX (7) C COMMON/PUT/SSJO (250,7), SAJO (250,7),YSINYCOS C COMMON/DAT/ER, H, TDLXAW, BWYOA, TPI, TPI2, PI,W, El, E2, EERAKO,AK, *AKKFAOFFSET(7),ALONG(7),WDELTAOFFLIMERRORNS1,NS2,NSS2,NOFF C COMMON/DATT/COAL (20),POINT (20),CN(51),BM(151),POLTM(20), *POLTE (20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), * BPOINT(10),BCOAL(10),MPOINT, NPOINTNKOMANTMNTENKOKIFIRST C Page 15

Print file "yijdielkO.ftn" COMMON/BSS/ARG(10),AARG C COMMON/MAT/PLI,AI,TI,V(3), IY C COMMON/COEF/RX,XX,RZ, XZ,FRX,FRZ, FX, FlZ C ARX=W*AX/2.DO W1=2.DO*YCOS PR1=PLI*DLX PR2=PR1*PR1 PR4=PR2*PR2 PR6=PR4*PR2 PR8=PR6*PR2 DO 1 J=1,NOFF MAX=NMAX(J) DO 2 N=1,MAX SSJO(N,J)=0.DO SAJO (N,J)=O.DO 2 CONTINUE 1 CONTINUE C DO 11 J=1,NOFF LPOINT=MPOINT IF (OFFSET(J).GT.OFFLIM) GO TO 12 LPOINT=NPOINT DO 13 I=1,NPOINT ARG(I) =PLI*DARG(I, 1) 13 CONTINUE CALL BESS1(BJ) 12 DO 14 I=1,LPOINT DO 17 NK=1,5 DERIV(NK, 1)=0.DO DERIV(NK,2) =0.DO 17 CONTINUE ASIN=ARX*BCOAL(I) IF (OFFSET(J).GT.OFFLIM) GO TO 15 ASIN=W*DARG(I,4)*COAL(I) AROF=PLI*OFFSET(J)*DARG(I,2) COFF=DCOS(AROF) SSUM=O.DO DO 16 JN=1,NSER ARAF=PLI*S (JN,2) *DARG(I,2) CAFF=DCOS (ARAF) SSUM=SSUM+S(JN,1)*CAFF 16 CONTINUE 15 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) 20 CONTINUE IF (OFFSET(J).GT.OFFLIM) GO TO 21 SIN1=DARG(I,3) SIN2=SIN1*SIN1 COS1=DCOS(PLI*DIST(K,J,I)) TERM=COFF*(BJ(I,1) -SSUM/PI)*COS1 DERIV(1,3)=TERM SIN1=SIN2 DERIV (2,3)=-TERM*SIN1 SIN1=SIN1*SIN2 DERIV(3,3)=TERM*SIN1 SIN1=SIN1*SIN2 DERIV(4,3)=-TERM* SIN1 SIN1=SIN1*SIN2 DERIV(5,3)=TERM*SIN1 Page 16

Print file "1yij diel kO.ftn"l GO To 2 2 21 AARG=PLI*DIST(K,JI) ARG2=AARG*AARG ARG4=ARG2 *ARG2 ARG6=ARG4 *ARG2 CALL BESS2(BJ) DERIV (1,f 3) =BJ (1,f2) DERIV (2,r 3) =RCOE (1,rKrJr I) *BJ (3,r 2) + *RCOE (2,rKrJr I) *BJ (1,r 2) DERIV (3, 3) =RCOE (3, K, J, I) *BJ (5, 2) + * RCOE (4,r K, Jr I) *BJ (3, 2) + (RCOE (5,r K, J, I) *+RCOE (6,fKrJ, I) /ARG2) * BJ (1,r2) DERIV (4, 3) =RCOE (7,rK, JrI) *BJ (7,f2) + *RCOE (8,rKrJrI) *BJ (5,r2) +RCOE (9,rKrJI)* *BJ (3,2) + (RCOE (1 0, K, Jr I) +RCOE (1 1, K, * JI) /ARG2+RCOE (12, KJrI) /ARG4)* * ~BJ(1, 2) DERIV (5, 3) =RCOE (13, KrJ, I) *BJ (9,2) + *RCOE (14, KrJr I) *BJ (7f2) +RCOE (15, KrJ, * ~I)*BJ(5,2)+RCOE(l6,KJI) *BJ(3,2)+ *(RCOE (17, KrJr I) +RCOE (18,Kr JrI) /ARG2 *+RCOE (19, KJrI) /ARG4+RCOE (20, KfJr I) */ARG6) * BJ (1,r2) 22 IF (K.LT.3) GO TO 18 SUMS=SERS, (1) *DERIV (1,r2) -PR2 *SERS (2) *DERIV (2, 2) *+PR4 *SERS (3) *DERIV (3, 2) -PR6 *SERS (4) *DERIV *(4, 2) +PR8 *SERS (5) *DERIV (5,r2) C CH1=SERA (1) * (DERIV (1,r 1) +DERIV (1,f 3) -Wl1*DERIV * (1,2)) CH2=SERA(2)*(DERIV(2,1)+DERIV(2,,3)-Wl*DERIV * ~(2,2)) *PR2 CH3=SERA (3) * (DERIV (3,r1) +DERIV (3,f3) -Wl1*DERIV * ~(3,2)) *PR4 CH4=SERA (4) * (DERIV (4,f 1) +DERIV (4,f 3) -W1 *DERIV * ~(4,2)) *PR6 CH5=SERA (5) * (DERIV (5,f1) +DERIV (5,r3) -Wl1*DERIV * ~(5,2)) *PR8 StJNA=CH1l-CH2+CH3-CH4+CH5 KJ=K-2 SSJO (KJ, J) =SSJO (KJ, J) +ASIN*SUMS SAJO (KJ, J) =SAJO (KJ, J) +ASIN*SUMA CcCCC C IF (KJ. EQ. 1) WRITE (6, 6 65) KJ, J S SJO (KJ, J),r C SUMS, SAJO (KJ, J)OSUMA C665 FORMAT(10XO'KJ=',1f4,2X,'J=',I4/10X,'SSJO=', C *E14.7,2XfSUMS=,,E14.7/lOX, 'SAJO=',E14.7, C *2X,'SUMA=',E14.7/) cCCC 18 CONTINUE 14 CONTINUE 11 CONTINUE RETURN END C........................................................................ C BESSi C This subroutine gives values for the zeroth order C Bessel functions. It is used for small offsets C........................................................................ SUBROUTINE BESSi1(BJ) IMPLICIT REAL*8 (A-HO-Z) DIMENSION BJ(10,2) C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, F1XFlZ C COMMON/ADON/DI ST(250,7fl0) fRCOE(20,250f 7,10) rAXf SERS (5) f Page.17

Print file "yij dielkO.ftn" *SERA (5), DARG (10, 4), S (1 0, 2), WREAL, NSER, NMAX (7) C COMMON/BSS/ARG(10)fAARG C COMMON/DATT/COAL(20),POINT(20),CN(51), BM(151), POLTM(20), *POLTE (20),AM(41),DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), *BPOINT(10),BCOAL(10),MPOINTNPOINTNK0,MANTMNTENKOK,IFIRST C PI=3.141592653589D0 DO 1 IJ=1,NPOINT X=ARG(IJ) IF (X.GT.0.001DO) GO TO 10 X3=X/3.DO X32=X3*X3 X34=X32*X32 X36=X34*X32 BJO=1.DO-2.2499997D*X32+1. 2656208D0*X34-0.3163866D * *x36 BJ(IJ,1)=BJO GO TO 1 10 IF (X.GT.3.DO) GO TO 12 X3=X/3.D0 X32=X3*X3 X3 4=X32 *x32 X36=X34 *x32 X38=X36*X32 X3 1 0=X3 8 *X32 X312=X31 0*x32 BJO=1..DO-2.2499997D0*X32+1.2656208D0*X34-0.31638 66D *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 X3 4 =X3 3 *X 3 X35=X34 *X3 X3 6=X3 5 *X 3 FJO=0.79788456D0-0.00000077D*X3-0. 0055274 0D*X32-0.0000 9512D0*X33+0.00137237D0*X34-0.00072805D0*X35+0.00014 476DO*X36 TJO=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 C................................................................... C TAIL C This subroutine evaluates the tail contribution C................................................................... SUBROUTINE TAIL IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YSDYSW DIMENSION MAX(8,2) 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/ADMAT/YSD (250),YSW(250),NSNS1S2 C COMMON/DAT/ER, H, T, DLX, AW, BW, YO, A, TPI, TPI2, PIW, El, E2, EERAKO,AK, Page 18

Print file "yij_ diel_kO. ftn" *AKK,FA,OFFSET(7), ALONG(7),WDELTA,OFFLIM,ERROR,NS1,NS2,NSS2,NOFF C 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(10,4),S (10,2),WREAL,NSER,NMAX(7) C COMMON/OUT/GS (250) C COMMON/IOFF/INS, INS1S2 C C This vector contains the values of t in the integrals hO C Z1=T Z2=2.DO*H C C This vector contains the values of the coefficient C in C the integrals hO C C1=FA WRITE (*,111) FA 111 FORMAT(///1OX,'FA=',E14.7///) C C This vector contains the number of elements of the C matrices ZS,ZS1S2,.... C MAX(1,1)=NS MAX(2,1)=NS1S2 C MAX(1,2)=INS MAX(2,2)=INS1S2 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.D0/THMIN**2-1.DO)) THMAX=P I -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=DSIN (2.DO*AKK*DLX) C C + --- —----------------------------— + C I Evaluation of S1,S2,S3,S4,S5,S6 6 C (Single Integrals) I C + -----------------------------— + C C DO 201 J=1,7 DO 202 K=1,205 DO 203 JK=1,4 Sl (JK,K,J)=0.DO Dl (JK,K,J)=0.DO D2 (JK,K,J)=0.D0 Page 19

Print file FyijjdielkO. ftn" TI(JK,KJ)=0.DO T2 (JK,K,J)=O.DO T3(JK,K,J)=0.DO T4 (JK,K,J)=0.DO 203 CONTINUE 202 CONTINUE 201. CONTINUE C ZP1=Z1/C1 ZP2=Z2/Cl C 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.1.D-6) COEF1=(PI/2.DO-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 Cl=DCOS(THI) C2=W2 *Cl C2=OFFSET (J) -C2 CW=C2*C2 AASIN=CNS (I)*DSP DO 11 K=1,KMAX XN= (FLOAT (K-3) *DLX) RAD2=XN*XN+CW TRAD1=DSQRT (RAD2+ZP12) TRAD2=DSQRT (RAD2+ZP22) Sl (1,K,J)=S1 (1,K,J)+DLOG(2.DO* (TRAD1+XN) ) *AASIN Si (2,K,J)=S1(2,K, J)+DLOG(2.DO* (TRAD2+XN) )*AASIN 11 CONTINUE 10 CONTINUE C C -------------------------------------------------------------- C EVALUATION OF D1,D2,D4,D5 1 C + — -----------------------------------------------------------— + DO 20 I=1,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) RADP2=XNP *XNP+CW RADM2 =XNM*XNM+CW TRAP1=DSQRT (RADP2+ZP12) TRAP2=DSQRT (RADP2+ZP22) C TRAM1=DSQRT (RADM2+ZP12) TRAM2=DSQRT (RADM2+ZP22) C Page 20

Print file UyijjdielkO.ftn" XA1=AKK*XNP XA2=AKK*XNM XAP=DSIN (XA1) XAM=DSIN (XA2) C SANPi=XAP*DLOG(2.DO* (TRAP1+XNP)) SANP2=XAP*DLOG(2.DO* (TRAP2+XNP)) C SANM1=XAM*DLOG(2.DO* (TRAM1+XNM)) SANM2=XAM*DLOG(2.DO* (TRAM2+XNM)) C XAP=DSIN (XAl/2.DO) XAM=DSIN (XA2/2 DO) SONP1=XAP /TRAPi SONP2=XAP /TRAP2 C SONM1=XAM/TRAM1 SONM2=XAM/ TRAM2 C Yl=-XNM/2.DO-DLX Y2=-XNP/2.DO+DLX CY1=DCOS(AKK*Yi) CY2=DCOS(AKK*Y2) SY1=DSIN(AKK*Yi) SY2=DSIN(AKK*Y2) C Dl(l,K,J)=D1(1,K,J)+(SANP1+SANM1)*SV2*AASIN D2 (i, K, J) =D2 (1, K, J) + (CY1 * SONP 1 -CY2 *SONMi) *AAS IN Dl (2,K,J)=D1 (2,K,J)+(SANP2+SANM2) *SV2*AASIN D2 (2, K, J) =D2 (2, K, J) + (CYi*SONP2-CY2*SONM2) *AASIN 21 CONTINUE 20 CONTINUE C C evaluation of T1,T2,T3,T4 C DO 30 I=1,NTP THI=COEF1*XNT(I,1)+COEF2 XI=DLX2* (XNT(If2)+i.DO) XIP=DLX2* (XNT (1,3) +1. DO) C1DCOS(THI) C2=W2 *01 C2=OFFSET(J)-C2 CW=C2*C2 SV1=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-i) *DLX XNMM= (-XI-XIP) +FLOAT (K-i) *DLX RADPP2=XNPP*XNPP+CW RADPM2=XNPM*XNPM+CW RADMP2=XNMP *XNMPCW RADMM2=XNMM*XNMM+CW TAPP1=DSQRT (RADPP2+ZP12) TAPP2=DSQRT(RADPP2+ZP22) TAPM1=DSQRT (RADPM2+ZP12) TAPM2=DSQRT (RADPM2+ZP22) TAMPi=DSQRT (RADMP2+ZP12) TAMP2=DSQRT (RADMP2+ZP22) TAMMi=DSQRT (RADMM2+ZP12) TAMM2=DSQRT (RADMM2+ZP22) CST1=DCOS(AKK*(XNPM/2.DO+DLX))*DSIN(AKK*XNPP *t /2.DO) Page 21

Print: file "1yijdi~el IkO.ftn" CST2=DCOS (AKK* (-XNMP/2.DO+DLX) )*DSIN(AKK*XNMM * /2.DO) CST3=DCOS (AKK* (XNMM/2.DO+DLX) )*DSI(AKK*XNMP * /2.DO) CST4=DCOS (AKK* (-XNPP/2.DO+DLX) )*DSIN(AKK*XNPM * /2.DO) Tl(l,K,J)=Tl(l,K,J)+SV2*AASIN*CST1/TAPP1 T2(1,K,J)=T2(1,K,J)+SV1*AASIN*CST2/TAMM1 T3 (1, K, J)=T3 (1, K, J)+SV1*AASIN*CST3/TAMP1 T4 (1,K,J)=T4 (1,K,J)+SV2*AASIN*CST4/TAPM1 Tl(2,K,J)=T1(2,K,J)+SV2*AASIN*CST1/TAPP2 T2(2,K,J)=T2(2,K,J)+SV1*AASIN*CST2/TAMM2 T3 (2,KJ)=T3 (2,KJ)+SV1*AASIN*CST3/TAMP2 T4 (2,K,J)=T4 (2,KJ)+SV2*AASIN*CST4/TAPM2 31 CONTINUE 30 CONTINUE 1CONTINUE C C C Evaluation of GS,GS1S2 C C CZX=2.DO* (1.DO-ER) /((1l.DO+ER) * (1.DO+E2) * (1.DO+0. 5D0*El)) IF((ER-1.DO).LT.O.005) CZX=Q.DO CXX=1.DO CSX= (AK2-AKK2) *CXX/FA CSZ=AKK2 *CZX/FA CAX=AKK* CXX/FA CAZ=AKK*CZX/FA DO 4 JM=1,NOFF NJMAX=MAX (JM, 1) J=MAX (JM, 2) DO 62 N=1,NJMAX NP1=N+2 NO=N+l NM1=N STX=-D1(1, NP1, J) +2.DO*YCOS*D1(1, NO, J) -Dl (1,NM1, J) *+2. D0* (T1 (1,rNJ) +T2 (1,rNJ) -T3 (1,rNJ)-T4(1,N, J) ) STZ=-Dl (2, NPl J) +2.DO*YCOS*Dl (2, NO, J) -Dl (2, NM1, J) *+2. DO * (Ti (2,rN, J) +T2 (2,rN, J) -T3 (2, NJ) -T4 (2,rN, J) ) MP2=N+4 MP1=N+3 MO=N+2 MM1=N+l MM2=N SINP2=DSIN (AKK*FLOAT (N+1) *DLX) SINP1=DSIN (AKK*FLOAT (N) *DLX) SINO=DSIN (AKK*FLOAT (N-i) *DLX) SINM1=DSIN(AKK*FLOAT (N-2) *DLX) SINM2=DSIN (AKK*FLOAT (N-3) *DLX) ATX=SINP2*S1l(lMP2, J)-4.DO*YCOS*SINP1*S1l(l,MP1, J) * ~+2.DO* (2.DO+CCS) *SINO*Sl (l,MO,J)-~4.DO*YCOS * ~*SINM1*S1l(1,MMlJ)+SINM2*S1l(lMM2,J) ATZ=SINP2*Sl(2,MP2,J)-4.DO*YCOS*SINP1*Sl(2,MP1,J) +2.DO*(2.DO+CCS)*SINO*Sl(2,M0,J)-4.DO*YCOS * ~*SINM1*Sl (2,MM1,J)+SINM2*S1l(2,MM2,J) AAX=-2.DO* (D2 (1,NPlJ)-~2.DO*YCOS*D2 (lNOJ) * ~+D2 (lNM1,J)) AAZ=-2.DO* (D2 (2, NPl J)-2.DO *YCOS*D2 (2, NOJ) * ~+D2 (2,NMlJ)) AX=ATX+AAX AZ=ATZ+AAZ ZW=W*~(CSX*STX+CSZ*STZ+CAX*AX-CAZ*AZ) GS (N) =ZW 62 CONTINUE 4 CONTINUE Page 22

Print file "yijdielkO.ftn" Page 23 RETURN END o........................................................... C This subroutine evaluates the higher order bessel functions using C the ascenting series expression or hankel's expansion. SUBROUTINE BESS2 (BJ) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION BJ(10,2),U(4),RBJ(50,2) COMMON/B01/BJ0,BJ1 COMMON/BSS/ARG(10),X C PI=3.141592653589 C C Evaluation of J0,J1 C CALL BSJ0(X) RBJ(1,2)=BJO RBJ(2,2)=BJ1 C NCON=1 N=IDINT(2.4D0*X) IF (N.LT.10) N=10 IF (X.LT.3.D0) GO TO 10 C C EVALUATION OF HIGHER ORDER BESSEL FUNCTIONS UP TO C ORDER LESS THEN THE ARGUMENT C NIMAX=IDINT (X) -1 IF (NIMAX.GT.9) NIMAX=9 DO 1 I=2,NIMAX NJ1=I NJ2=I-1 NB=I+1 RBJ(NB, 2)=FLOAT(2*NJ2) *RBJ(NJ1,2) /X-RBJ(NJ2,2) 1 CONTINUE IF (NIMAX.EQ.9) GO TO 20 NCON=NIMAX C C DEBYE'S ASYMPTOTIC EXPANSION-EVALUATION OF JN C 10 DO 11 J=1,2 JN=N-J+1 XA=X/FLOAT (JN) XA=1.D0/XA XE=XA+DSQRT (XA*XA-1. DO) A=DLOG(XE) CTH=(XE+1.DO/XE) / (XE-1.DO/XE) CALL F(CTH,U) TNH=1.DO/CTH R1=DEXP (FLOAT (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)=(R1/R2)* (1.DO+U(1) /BN1+U(2) /BN2+U(3) /BN3+ * U(4)/BN4) 11 CONTINUE C C EVALUATION OF HIGHER ORDER BESSEL FUNCTIONS WHEN X<10 C NJMAX=N-2 -NCON DO 2 I=1,NJMAX NJB=N-I NJB1=NJB+1

Print file "yijdielkO.ftn" NJB2=NJB1 +1 RBJ(NJB,2)=2.DO*FLOAT(NJB)*RBJ(NJB1,2) /X-RBJ(NJB2,2) 2 CONTINUE 20 CONTINUE DO 3 1=1,9 BJ(I,2)=RBJ(I,2) 3 CONTINUE RETURN END C..................................................................... C..................................................................... SUBROUTINE BSJO(X) IMPLICIT REAL*8(A-H,O-Z) COMMON/BO1/BJO, BJ1 C C C Evaluation of JO using the series expansion given in C Abramowitz. C PI=3.141592653589DO IF (X.GT.3.DO) GO TO 20 X3=X/3.DO x32=X3*X3 X3 4 =X32 *x32 X36:=X32*X34 X38=X32 *x36 X31 O=X38*X32 X3 1 2=X3 10 *x32 BJO=1. DO-2. 2499997D0*X32+1. 26562 08D0*X34-0. 31638 66D0*X36+ 0.0444479D0*X38-0.0039444D0*X310+0.00021000D0*X312 BJ1=X*(0.5D0-0.56249985D*X32+0. 210 93573D0*X34.0395428 9D * *X36+0.00443319D0*X38-0.000031761D0*x310+0.00001109D0 * *X312) GO TO 21 C 20 X3=3.DO/X X32=X3*X3 x33=x32*X3 X34=X33*X3 X3 5=X3 4 *x3 X36=X35*X3 FJO=0.79788456D0-0. 00000077D*X3- 0.00552740D0*X32-0.00009512D0 *x33+0.00137237D0*X34-0.00072805D0*X35+000014476D0*X36 FJ1=0.79788456D0+0.00000156D0*X3+0. 01659667D0*X32+0.00017105D *X33-0.0024951lD0*x34+0.00113653D0*X35-0.00020033D0*X36 TJO=X-0.78539816D0-0.04166397DO*X3-0. 00003954D0*X32+0.00262573D *x33-0.00054125D0*X34-0.00029333D0*X35+000013558D0*X36 TJ1=X-2.35619449D0+0. 12499612D0*X3+0.000 05650D0*X320.00637879D * x33+0 00074348D0*x34+0 00079824D0*X35..0.00029166D0*x36 WCON=DSQRT (1.DO/X) BJO=WCON*FJO*DCOS(TJO) BJ1=WCON*FJ1*DCOS(TJ1) 21 CONTINUE RETURN END C........................................................................... C................................................................. SUBROUTINE F(X,U) IMPLICIT REAL*8(A-H,O-Z) DIMENSION U(4) X2=X*X X3=X2*X X4=X.3*X X5=X4 *X( X6=X5*X X7=X6*X Page 24

Print file 11yij dielkO.ftn" Page 25 X8=X7 *X X9=X8*X xlo =X9*X xll=x10*x X12=Xll*X C U(l)=(3.DO*X-5.DO*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.DO U (4) = (4465125.DO*X4-94121676.DO*X6+349922430.DO*x8-446185740.DO* X10+185910725.DO*Xl2)/39813120.DO RETURN END C....................................................................... o SUBROUTINE DATASLOT C This subroutine gives all the data for integration used in o subroutine SLOT.FTN C...................................................................... SUBROUTINE DATASLOT IMPLICIT REAL*8 (A-HO-Z) C COMMON/DAT/ERHTDLX, AW, BWY0ATPITPI2PIWEl, E2EERAKO, AK, *AKKFAOFFSET(7),ALONG(7),WDELTAOFFLIMERRORNS1,NS2,NSS2,NoFF C COMMON/DATT/COAL(20),POINT(20),CN(51),BM(151),POLTM(20), *POLTE (20)fAM(41), DM(41),POLES (40),VXXM(20),VZXM(20),VZXE (20), *BPOINT (10),BCOAL(l0),MPOINTNPOINTNKOMANTMNTENKOKIFIRST C COMMON/INT/XNS (40),CNS (40),XND(20,2),CND(20),XNT(40,3), *CNT (4 0),fNDP, NTP, NSP C COMMON/ADON/DIST(250f7, 0) RCOE(20 250.7,10) AXSERS(5), *SERA(5), DARG(100,4), S(10,2), WREALNSERNMAX (7) C COMMON/IOFF/INS, INS1S2 C PI=3.141592653589D0 C C TPI=2.DO*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/Al E2=ER*El/ (l.DO+ER) FA=D SQRT (1. D O +TP I 2 /Al) C + — ---------------------------------------------------- C I Data for the poles C IFIRST= 0: dominant mode is TM wave (many poles) C 1: dominant mode is TE wave (many poles) C 2: only one TM surface wave C + ---- -------------------------------------------------- C + --- —--------------------------— + C I Data for the Integration I C + ---- ---------— + NKO=2 0 NKOK=l MA=4 0 NSER:= 10 C NPOINT=1 0

Print file "yijdiel_kO. ftn" C --- —------ C Vector COAL C --- —------ 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) C ---------- C Vector POINT C POINT(1)=0.973906528517D0 POINT(2)=0.865063366688D0 POINT (3) =0.679409568299D0 POINT(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) C MPOINT=5 C --------- C Vector BCOAL C -------- BCOAL(1)=0.2369268851D0 BCOAL(2)=0.4786286705D0 BCOAL(3)=0.5688888888D0 BCOAL(4) =BCOAL(2) BCOAL(5) =BCOAL(1) C ------------ C Vector BPOINT C --------- BPOINT(1)=0.9061798459D0 BPOINT(2)=0.5384693101D0 BPOINT (3) =0.D0 BPOINT(4)=-BPOINT(2) BPOINT (5)=-BPOINT(1) C ------------ C Single integration C - ----------- C NSP=31 RS1=0.99708748181D0 RS2=0.98468590966D0 RS3=0. 96250392509D0 RS4=0. 93075699789D0 RS5=0.88976002994D0 RS6=0.83992032014D0 RS7=0.78173314841D0 RS8=0.71577678458D0 RS9=0.64270672292D0 RS10=0.56324916140D 0 RS11=0.47819378204D 0 RS12=0.38838590160D0 RS13=0.29471806998D0 RS14=0.19812119933D0 RS15=0.09955531215D0 RS16=0.DO C Page 26

Print file "yij dielkO. ftn" XNS (1) =RS1 XNS (2) =RS2 XNS (3) =RS3 XNS (4)=RS4 XNS (5) =RS5 XNS (6) =RS6 XNS (7) =RS7 XNS (8) =RS8 XNS (9) =RS9 XNS (10)=RS10 XNS(11)=RS11 XNS(12)=RS12 XNS(13)=RS13 XNS(14)=RS14 XNS(15)=RS15 XNS(16)=RS16 XNS(17)=-RS15 XNS (18)=-RS14 XNS(19)=-RS13 XNS(20)=-RS12 XNS(21)=-RS11 XNS(22)=-RS10 XNS(23)=-RS9 XNS(24)=-RS8 XNS(25)=-RS7 XNS(26)=-RS6 XNS(27)=-RS5 XNS(28)=-RS4 XNS (29)=-RS3 XNS(30)=-RS2 XNS(31)=-RS1 C 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 CNS(8)=0.0696285832354D0 CNS(9)=0.0763903865987D0 CNS(10)=0.0823929917615D0 CNS(11)=0.0875767406084D0 CNS(12)=0.0918901138936D0 CNS(13)=0. 0952902429123D0 CNS(14)=0.0977433353863D0 CNS('15)=0.0992250112266D0 CNS(116)=0.0997205447934D0 CNS(:17)=CNS(15) CNS(18)=CNS(14) CNS(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) CNS(26)=CNS(6) CNS (27) =CNS(5) CNS(28)=CNS(4) CNS(29)=CNS(3) CNS(30)=CNS(2) CNS(31)=CNS(1) C C C Page 27

Print file "yijdielkO. ftn" C 2) Double Integration C --------------- C NDP=16 R1=DSQRT((15.D0-2.DO*DSQRT(30.D0))/35.D0) R2=-R1 Sl=DSQRT((15.D0+2.DO*DSQRT(30.DO))/35.D0) S2=-S1 A1=4.D0*(59.D0+6.DO*DSQRT(30.DO))/864.DO A2=49.0*(59.D0-6.DO*DSQRT(30.D0))/864.D0 A3=4.DO*49.D0/864.DO C XND(1,1)=R1 XND(1,2)=R1 CND (1) =A C XND(2,1)=R2 XND(2,2)=R1 CND(2)=A1 C XND(3,1)=R1 XND(3,2)=R2 CND(3)=A1 C XND(4,1)=R2 XND(4,2)=R2 CND(4)=A1 C XND(5,1)=S1 XND(5,2)=S1 CND(5)=A2 C XND(6,1)=S1 XND(6,2)=S2 CND(6)=A2 C XND(7,1)=S2 XND(7,2)=S1 CND(7)=A2 C XND(8,1)=S2 XND(8,2)=S2 CND(8)=A2 C XND(9,1)=R1 XND(9,2)=S1 CND(9)=A3 C XND(10,1)=R1 XND(10,2)=S2 CND(10)=A3 C XND(11,1) =S1 XND(11,2)=R1 CND(11)=A3 C XND(12,1)=S2 XND(12,2)=R1 CND(12)=A3 C XND(13,1)=R2 XND(13,2)=S1 CND(13)=A3 Page 28 XND(14,1) =R2 XND(14,2)=S2

Print file Fvyij diel kO.ftnvu CND (1 4) =A3 C XND (15,1) =Sl XND (15,2) =R2 CND (15) =A3 C XND (16, 1)=S2 XND (16,2) =R2 CND (16) =A3 C C 3) Triple Integration C - - - - - - - - - C NTP=34 RS1=0. 9317380000D0 RS2=-RS1 UU1=0. 916744 177 9D0 UU2=-UU1 SS1=0. 4086003800D0 SS2=-SS1 TT1=0.739852 9500D0 TT2=-TT1 Bl=8.DO*0. 03558180896D0 B2=8.DO*0. 01247892770D0 B3=8.DO*Q. 05286772991D0 B4=8.D0*0. 02672752182D0 C XNT (1,f1) =RS 1 XNT (1,2) =0.DO XNT (1,3) =O.DO CNT (1) =Bl C XNT (2,1) =RS2 XNT (2,2) =0.DO XNT (2,3) =0.DO CNT (2) =B1 C XNT (3,1) =0.DO XNT (3,2)=RS1 XNT (3, 3)=0.DO CNT (3) =B1 C XNT (4,1) =0.DO XNT (4,2) =RS2 XNT (4,r 3) =O. DO ONT (4) =B1 C XNT (5,1) =0.DO XNT (5,2)=0.DO XNT (5,3) =RS1 CNT (5) =B1 C XNT (6,1) =0.DO XNT (6,2) =0.DO XNT (6,3) =RS2 ONT (6) =Bl C XNT (7,1) =UU1 XNT (7,f2) =tJL1 XNT(-7,3) =0.DO CNT (7) =B2 C XNT (8, 1) =UU2 XNT (8,2) =UU1 XNT (8,3) =0.DO CNT (8) =B2 Page 29

Print file I"yij die~l kO.ftn"r C XNT (9,1) =U131 XNT (9,2) =UU12 XNT (9, 3)=O.DO CNT (9) =B2 C XNT (10, 1) =1312 XNT (1 0,2) =1312 XNT (10,3) =0.D0 ONT (10) =B2 C XNT (11, )=tUUl XNT (11,,2) =0.DO XNT (11,3) =U131 CNT (11) =B2 C XNT (12, 1)=JUl1 XNT (12,2) =0.DO XNT (12,3) =1312 CNT (12) =B2 C XNT (13,1) =1312 XNT (13, 2)=0.DO XNT (13,3) =U131 CNT (13) =32 C XNT (1 4, 1) =U312 XNT (1 4,r2) =O. DO XNT (14,3) =UU12 CNT (14) =B2 C XNT (15,1) =0.DO XNT (15,2)=UJ1l XNT (15,3) =U131 CNT (15) =B2 C XNT (16,1) =0.DO XNT (16, 2)=UU11 XNT (16,3) =13U2 CNT (16) =B2 C XNT (1 7, 1) =O. DO XNT (1 7,r2) =1312 XNT (17,r3) =U11 CNT (17) =B2 C XNT (1 8,f1) =O. DO XNT (1 8,f2) =UU12 XNT (18,3) =1312 CNT (18) =B2 C XNT (19,1) =SS1 XNT (19,2) =SS1 XNT (19, 3) =SS1 CNT (19) =33 C XNT (20,1) =SS1 XNT (20,2) =SS1 XNT (20,3) =SS2 ONT (20) =33 C XNT (21, 1)=SS1 XNT (21,2) =SS2 XNT(21.3)=SS1 CNT (21) =33 C Page 30

Pri nt f!Ile 1yi jdiUel k0. ftn" XNT (22,1) =SS1 XNT (22,2) =SS2 XNT (22,3) =SS2 CNT (22) =B3 C XNT (23, 1)=SS2 XNT (23,2) =SS1 XNT (23,3) =SS1 CNT (23) =B3 C XNT (24,1) =SS2 XNT (24,r2) =SS1 XNT (24,3) =SS2 CNT (24)=B3 C XNT (25,1) =SS2 XNT (25,2) =SS2 XNT (25,3) =SS1 CNT (25) =B3 C XNT (26, 1) =SS2 XNT (26, 2) =SS2 XNT (26, 3) =SS2 CNT (26) =B3 C XNT (27,1) =TT1 XNT (2 7, 2) =TT 1 XNT (27,3) =TT1 CNT (27) =B4 C XNT (28,1) =TT1 XNT (28,2) =TT1 XNT (28,3) =TT2 CNT (28)=B4 C XNT (29,1) =TT1 XNT (29,2) =TT2 XNT (29,3) =TT1 ONT (29) =B4 C XNT (30,1) =TT1 XNT (30,2) =TT2 XNT (30,3) =TT2 ONT (30) =B4 C XNT (31,1) =TT2 XNT (31,,2) =TT1 XNT (31,,3) =TT1 CNT (31) =B4 C XNT (32,1) =TT2 XNT (32,2) =TT1 XNT(32.3)=TT2 CNT (32) =B4 C XNT (33,1) =TT2 XNT (33,2) =TT2 XNT (33,3) =TT1 CNT (33) =B4 C XNT (34,1) =TT2 XNT (34,,2) =TT2 XNT (34,3) =TT2 CNT (34)=B4 C Page 31

Pri nt fil1e "lyi jdiel-IkO. ftnI" Page 32 END

#44444 # 4f#ff#### #### ######### a p o ll o d o m a i n CAEN/Apollo #4 ~4 I#4 4 i4 4 4 4# 94 #44# # 44 4 4 4 4 K K K P KKK K P K K K A K A A C A A A A K AAAAAAA K A A K A A TTTTTTT EEEEEEE H H T E H H T E H H T EEEEE HHHHHHH T E H H T E H H T EEEEEEE 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 j j j ji ji _ _ __ 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 k k k k kkkk k k k k k k 000 0 0 0 0 0 0 0 0 0 0 000 f fffff f fffff... f... f.. fif ttttt t t t t t n n nn n nn n n n n n n nn n n //tera/users/katehi/tape/yij_wave_k 0.ftn LAST MODIFIED ON: 89/04/24 10:44 AM FILE PRINTED: 89/04/24 3:20 PM 444444 9# #4444 #441 a A4 Aa 4a a aP44 ~4 -

Print file "yij wavek O.ftn"a Page I C..................................................................................... C The name of this file is YIJWAVEKO.FTN C C In this program the current has akk=ak0 C C Also SUM3=0.0 C..................................................................................... C This subroutine evaluates the contribution to the admittance matrix C which comes from the waveguide C............................................................................... SUBROUTINE YIJWAVE IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YSDYSWCOEFCI DIMENSION ARG(250),R1O(250),XlO(250),SGMN(250),AC(3),AS(3), *RIJ(250),ROO (2) C COMMON! SERIES / SUMi C COMMON/DAT/ERH, T,DLX, AW, BW,YO, A, TPI, TPI2, PI, W, El,E2, EER,AKO,AK, *AKK,FAOFFSET(7),ALONG(7),WDELTAOFFLIMERRORNS1,NS2,NSS2,NOFF C COMMON/ADMAT/YSD(250),YSW(250),NS,N51S2 C COMMON/BESSEL/BJO (6000) C ARG1=PI*YO/AW ARG2=PI*W/(2.DO*AW) CALL VBJO (ARG1,ARG2) CALL S14 C CI=(O.O,1.0) AKO2".=AKO*AKO C C Evaluation of vector ARG C JMAX=NS1 1=1 DO 1 J=1,JMAX ARG(J)=(J-I) *DLX 1 CONTINUE C C Evaluation of vectors ROO,R1O,X1O C C3=1.DO BOl=DSQRT (C3-l.DO/ (2.DO*AW) **2) B012=BO1*BO1 SCOEF=0. 5D0 *(C3-B012) *BJO (1) / ((2.DO*PI* (1.DO-B012) ) **2*BO1) ARGK=AKO *DLX ARGB=ARGK*BO 1 COSK=DCOS(ARGK) COSB=DCOS(ARGB) COS2K=DCOS (2.DO*ARGK) COS2B=DCOS (2. DO*ARGB) C052=COSK*COSK SINK=DSIN(ARGK) SINB=DSIN (ARGB) SIN2K=2.DO*SINK*COSK SIN2B=2.DO*SINB*COSB SIN3B=DSIN(3.DOARGB) SIN2=SINK*SINK C ROO (1) = (-DLX+SIN2K/ (2. DO*AKO) ) (4. DO*PI) ROO (2) = (DLX*COSK-SINK/AKO) / (8.DO*PI) C R10(1)=(8.DO*COSK*SINB-2.DO*SIN2B-2.DO*B01*SIN2K)*SCOEF Cl=(COSK-COSB)**2

Print file F'yjj wavekcO.ftnv X1O(1)=-4.DO*Cl*SCOEF R10(2)=2.DO*SINB*(-2.DO*C1-1.DO+BO1*SINK/SINB)*SCOEF X1O(2)=-4.DO*COSB*C1*SCOEF Do 2 J=3,JMAX RiO(J)=-4.DO*DSIN(AKO*BO1*ARG(J))*Ci*SCOEF XiO(J)=-4.DO*DCOS(AKO*BO1*ARG(J) ) *Cl*SOE 2 CONTINUE C --- —------------------------------------------------------------------- C DO 200 IG=lJMAX C WRITE (6,201) IGR10(IG),X1O(IG) C 201 FORMAT(10X,'IG=',I4,2X,'R1O=',E14.7,2X,'XlO=',E14.7) C 200 CONTINUE C --- —----------------------------------------------------------------------- C Evaluation of vectors AC(A) and AS(a) C AS (1)=2.DO AS(2)=-i.DO AS (3)=0.DO C AC(i)=2.DO*(i.DO+2.DO*COS2) AC(2)=-4.DO*COSK AC(3)=1.DO C C Evaluation of vector SGMN C KMAX=JMAX+2 DO 5 K=i,KMAX SGMN(K)=O. DO NTEST=0 INDEXN=- 1 3 INDEXN=INDEXN+i EN=0. 5D0 IF (INDEXN.GT.0) EN=i.DO C1= (INDEXN/ (2. D 0 *AW) ) **2 StUMM=O.DO INDEXM=O IF (INDEXN.GE.2) INDEXM=-i ITEST=O ID M=i 4 IND EXM=INDEXM+i EM=0.5D0 IF (INDEXM.GT.O) EM=1.DO C2=(INDEXM/ (2.DO*BW)) **2 GMN2=Cl+C2 -C3 GMN=DSQRT (GMN2) ITEST=ITEST+i Dl=AKO* (K-i) *GMN*DLX D2=O.DO IF (Di.LT.40.DO) D2=DEXP(-Di) TERM=EM* (C3+GMN2) *D2/ (GMN* (1.DO+GMN2) **2) SUMM=SUMM+ TERM RATIO=O DO IF (SUMM.GT.i.D-40) RATIO=DABS(TERM/SUMM) ERRORM=ERROR IF (K.LE.3) ERRORM=i.D-9 IF (RATIO.GT.ERRORM) ITEST=O IF (ITEST.LT.5) GO TO 4 NTEST=NTEST+1 CBJO=i DO IF (INDEXN.GT.O) CBJO=BJO(INDEXN) TERM=EN*CBJO *SUMM SGMN (K) =SGMN (K) +TERM RATIO=DABS (TERM/SGMN(K)) IF (RATIO.GT.ERROR) NTEST=O IF (NTEST.LT.4) GO TO 3 SGMN (K) =SGMN (K) / (2.DO*PI) **2 Page 2

Print file "yijwavekO.ftn" Page 3 C --- —---------------------------------------------------------------- C WRITE (6,11) KINDEXNSGMN(K) C 11 FORMAT(10X,'K=',I4,2X,'INDEXN='f,4,2X,'SGMN=',E14.7) o ---- ----------------------------------------------- 5 CONTINUE C C Evaluation of vector RIJ C RIJ(1)=AC(1)*SGMN(1)+2.D0*AC(2) *SGM(2)+2.D0*SGMN(3) RIJ(2)=AC(2)*SGMN(1)+(1.DO+AC(1))*SGMN(2)+AC(2)*SGMN(3)+SGMN(4) DO 6 J=3,JMAX RIJ(J)=SGMN(J-2)+AC (2)*SGMN(J-1)+AC(1) *SGMN(J) +AC (2) * SGMN (J+1) +SGMN (J+2) 6 CONTINUE C --- —----------------------------------------------------------------- C DO 19 JK=1,JMAX C WRITE (6,18) JKRIJ(JK) C 18 FORMAT (2X, 'JK=',I4, 2X, 'SIJ=', E14.7) C 19 CONTINUE C --- —---------------------------------------------------------------------- C Evaluation of this part of the elements of the admittance C which comes from the waveguide C C WRITE (6,50) 50 FORMAT(///10X,'Waveguide Admittance Matrix'!!!) COEF=CI*SNGL(-2.DO/(120.DO*PI*AW*BW*SIN2)) DO 7 J=1,2 SINA=DSIN (AS (J) *AK0*DLX) YR1= SINA* SUM1 R tWI J=RO 0 (J) +R1 0 (J) +YR1 +RI J (J) x UWIJ=X10(J) YSW(J)=COEF* (SNGL(RUWIJ)+CI*SNGL(X UWIJ)) C --- —------------------------------------------------------------ WRITE (6,20) JYSW(J) 20 FORMAT(2X,'J=', 14,2X,'YS=',E14.7,2X,E14.7) C ---- -------------------------------------------------------- 7 CONTINUE DO 8 J=3,JMAX R UWIJ=R1O (J) +RIJ (J) x UWIJ=X10(J) YSWW(J)=COEF* (SNGL(RUWIJ)+CI*SNGL(XUWIJ)) C --- —- ----- ----- ---- ------------------- WRITE (6,21) J,YSW(J) 21 FORMAT(2X,'YJ=',I4,2XYS=',E14.7,2X,E14.7) C --- —--- ---------------------------------------------------- 8 CONTINUE RETURN END C............................................................................ C This subroutine evaluates the single and double series S1,S2,S3,S4 C which are common to all Yij elements C.......................................................................................... SUBROUTINE S14 IMPLICIT REAL*8 (A-HO-Z) COMMON/BESSEL/BJO(6000) C COMMON! SERIES / SUMi C COMMON/DAT/ERHTDLX, AW, BWY0ATPITPI2P1, WElE2,EERAK0,AK, *AKKFAOFFSET(7),ALONG(7),WDELTAOFFLIMERRORNS1,NS2,NSS2,NOFF C C Evaluation of the single integral C INDEX=1 ITEST=0 ARG=PI *BW!AW

Print file Fvyjj wave_kO.ftn" COTH=1.DO/DTANH (ARG) SUM1=(BW**2/6.DO)+BJO (1) * (ARG*COTH-1.DO) * (AW/PI) **2 1 INDEX=INDEX+1 ARGN=INDEX*ARG COTH=1 DO /DTANH (ARGN) TERM=BJO (INDEX) * (AW*BW/PI) * (COTH/INDEX) SUM1=SUM1 +TERM RATIO=DABS (TERM! SUMl) IF (RATIO.LT.ERROR) GO TO 2 ITEST=O GO TO 1 2 ITEST=ITEST+1 IF (ITEST.LT.6) GO TO 1 C ------------------------------------------------------------ C WRITE (6,10) INDEX,SUM1 C 10 FORMAT(2X,'INDEX=', 14,5X,'tSUM1=',E14.7) C --- —------------------------------------------------ RETURN END C This function evaluates the zeroth order first kind Bessel O Function JO SUBROUTINE VBJO(ARG1,ARG2) IMPLICIT REAL*8 (A-HO-Z) COMMON/BESSEL/BJO (6000) PI=3.141592653589D0 DO 1 M=1,6000 X=FLOAT (M) *ARG2 X1=FLOAT (M) *ARG1 COS1=DCOS (X1) COS2=COS1 *COS 1 IF (X.GT.O.001DO) GO TO 10 X3=X/3.DO X32=X3*X3 X34=X32 *X32 X3 6=X34 *X32 BSJO=1. DO-2. 2499997D0*X32+1. 26562O8DO*X34-.O. 3163866D0 * *X36 BJO (M) =BSJO*COS2 GO TO 1 10 IF (X.GT.3.DO) GO TO 12 X3=X/3.DO X32=X3*X3 X34=X32*X32 X36=X34 *x32 X3 8=X3 6 *x32 X310=X38*X32 X312=X31 0*X32 BSJO=1.DO-2.2499997D*X32+1. 2656208DO*X340.31638 66D *x36+0.0444479D0*X380..0039444D0*X310+000021000 DO*X312 BJO (M) =BSJO*COS2 GO TO 1 12 CONTINUE X3=3.DO/X X32=x3*X3 X33=X32 *x3 X34=X33*X3 X35=X34*X3 X36=X35*X3 FJO=O.79788456D-0.000000 77DO*X3-0. 0055274ODO*X32-0.000 9512DO*X33+.100137237DO*x34-0.00072805DDO*X35+.00014 476D0*X36 TJO=X-O. 78539816D0-O. O4166397DO*X3-O. 00003954D0*X32+O.0O 262573DO*X33-0.00054125DO*X34-0.00029333DO*X35+0.O00 Page 4

Print file "yijwavekO. ftn" Page 5 * 13558D0*X36 WCON=DSQRT (1.DO/X) BSJO=WCON*FJ*DCOS (TJO) BJO (M)=BSJO*COS2 1 CONTINUE RETURN END

44444 ##4#444### 4444 #44 #4444#### 44444444 4 #4*#### 4444 #444 4####### a pao 1 10 daom a i n CAEN/Apal la if 4 #4 4 # 4 44 444 4 4 4 4 4444444 # #4 44404444 # 4# #4 4 4 4 4#44#4 1 #### ## #444444I4 444 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 E EEE E E E EEEEEEE H H H H H H HHHHHHH H H H H H H III I I I I I I II I I I I I I n n nnl n nf n n ni nfl ni nfl ni n V V V V V V V V V V vV 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 k k k k kkkk k k k k k k 0 0 0 0 00 0 Efffff O f O ff ff f 0.1 0 f 0 0 0.. t t ttt. t t t t t n fl nnl n rnnn n nnl n nnl n n //tera/users/katehi/tape/Inv-wave-kO.ftn LAST MODIFIED OH: 89/04/24 10:45 AM FILE PRINTED: 89/04/24 10:54 AM 4#444##441*##### 4444444 44 #444444 4 44 4 444 444444444 4444444 444444444 I Ic seeII i a tv# ~4 *seetee #sI t4 4 04 4 I I I 8 I # 414 4 t44"I,ee,*sS I 0011#### t4

Print file "inv wave kO.ftn" C The name of this file is.......... INV WAVEKO.FTN................. C It finds the inverse matrix for the case of a waveguide slot C covered by a dielectric substrate. SUBROUTINE INV WAVE(YS) IMPLICIT REAL*8 (A-H,O-Z) REAL SLOT V COMPLEX CUR,BMATR,SUMC,CI,CINC,CIN,BACKSCAT,FORWSCAT,BS, *F S COMPLEX YSD,YSW,YS(250) C COMMON/ADMAT/YSD(250),YSW(250),NS,NS1S2 C COMMON/DAT/ER, H, T,DLX,AW,BW,YO,A, TPI, TPI2,PI,W, E1,E2,EER,AKO,AK, *AKK, FA,OFFSET (7), ALONG(7), WDELTA,OFFLIM,ERROR, NS1, NS2,NSS2,NOFF C COMMON/MAN/BMATR(260,260),IA(260),IB(260) C COMMON/SLOT/SNMIJ(150,2) C COMMON/INV/CUR(260),NOR C COMMON/SCATCOEF/BACKSCAT,FORWSCAT C COMMON/B01/BJ0, BJ1 C COMMON/SLOT VOLTAGE/SLOTV C................................................................... C DATA C.................................................................... CI=(0.0,1.0) NOEL1=NS1 NS12=NS1S2 NOR=NS1 C C..... First Diagonal Matrix......... C IMIN=1 IMAX=NOEL1 DO 4 I=IMIN,IMAX KI=0 DO 5 KJ=I,IMAX KI=KI+1 BMATR(KI, KJ)=YS (I) BMATR (KJ, KI) =BMATR (KI, KJ) 5 CONTINUE 4 CONTINUE CALL MINVCD (NOR,NOR,DETA) C C Evaluation of the magnetic current or the electric field C distribution C B01=DSQRT(1.DO- (0.5D0/AW)**2) B012=B01*B01 ARGYO=PI*YO/AW ARGP=PI*DLX*(B01+1.D0) ARGM-=PI*DLX*(B01-1.D0) ARGO=AKO*DLX C CINC=-SNGL(DCOS (ARGYO) *DSIN(ARGP) *DSIN(ARGM) / (DSIN(ARGO) * * (1.DO-B012))) C ARG=B01*2.DO*PI*DLX ARGL=FLOAT(NOR+1)*DLX*B01*PI DO 70 IQ=1,NOR Page 1

Print file 1jinv wave_kO.ftn" SUMC= (0.0rO.0) 401 DO 170 JQ=1,NOR ARGX=-ARG*FLOAT(JQ)+ARGL EC=DCOS(ARGX) ES=DSIN (ARGX) CIN=(SNGL(EC)+CI*SNGL(ES)) SUMC=SUMC+BMATR(IQ, JQ) *CIN 170 CONTINUE CUR(IQ) =SUMC*CINC 70 CONTINUE C o Evaluation of the scattering coefficients C CALL BSJO(PI*W/ (2.DO*A'W)) DINC=(1.DO/(PI*AW))**2*(1.DO/(AW*BW))*(1.DO/DSIN(ARGO)) DINC=DINC*DCOS(ARGYO)*BJO*DSIN(ARGM)*DSIN(ARGP)/(BO1* (1.D0-B012))/(120.D0*PI) CINC=-SNGL(DINC) B S=(0.0,0.0) F S= (0.00.0) DO 71 JQ=1,NOR ARGX=-ARG*FLOAT (JQ) +ARGL EC=DCOS (ARGX) ES=DSIN (ARGX) B S=BS+CUR(JQ) *(SNGL(EC)+CI*SNGL(ES)) F S=F S+CUR(JQ)*(SNGL(EC)-CI*SNGL(ES)) 71 CONTINUE BACKSCAT=CINC*B S FORWSCAT=CINC*F S N CENTER=(NOR+1)/2 SLOTV=CABS(CUR(NCENT'ER)) RETURN END C THIS SUBROUTINE INVERTS A SQUARE COMPLEX MATRIX SUBROUTINE MINVCD (IAM1A,DETA) IMPLICIT REAL*8 (A-HO-Z) COMPLEX A, PIV, DETA, TEMP,PIVi COMMON/MAN/A(260,260), IR(260),IC (260) DO 1 I=1,MA IR(I)=O 1 IC(I)=O C DETA=(1.00,0.00) S=0. 00 R=MA 2 CALL SUBMCD(IAIAMAM-, I,J) PIV=A (I,J) C DETA=PIV*DETA Y=CABS (PIV) IF (Y.EQ.0) GO TO 17 IR(I)=J IC(J)=1 PIV=(1.00,0.00)/PIV A(I, J)=PIV DO 5 K=1,MA 5 IF (K.NE.J) A(IK)=A(I,,K)*PIV DO 9 K=1,MA IF (K.EQ.I) GO TO 9 PIV1=A(K, J) 6 DO 8 L=1,MA 8 IF (L.NE.J) A (KrL) =A (K, L) -P IV1 *A (I, L) 9 CONTINUE DO 11 K=1,MA 11 IF (K.NE.I) A(KJ)=-PIV*A(K,J) S=S+1.00 Page 2

Print file "inv wave kO.ftn" IF (S.LT.R) GO TO 2 12 DO 16 I=1,MA K=IC (I) M=IR (I) IF (K.EQ.I) GO TO 16 C DETA=-DETA DO 14 L=1,MA TEMP=A(K,L) A(K, L)=A(I,L) 14 A(I,L)=TEMP DO 15 L=1,MA TEMP=A (L,M) A(L,M)=A(L,I) 15 A(L,I)=TEMP IC (M) =K IR(K)=M 16 CONTINUE RETURN 17 WRITE (6,18)I,J 18 FORMAT (10X,'MATRIX IS SINGULAR'/10X,'I=',I4,5X,'J=',I4) RETURN END C * ** * ********************** * r*** *************** ***** * ** *** * * ******* ***** C......................................................................... SUBROUTINE SUBMCD(IA,JA,MA,NA, I,J) IMPLICIT REAL*8 (A-H,O-Z) COMPLEX A COMMON/MAN/A(260,260), IR(260), IC(260) I=0 J=0 TEST=0.00 DO 5 K=1,MA IF (IR(K).NE.O) GO TO 5 DO 4 L=1,NA IF (IC(L).NE.O) GO TO 4 X=CABS (A(K,L)) IF(X.LT.TEST) GO TO 4 I=K J=L TEST=X 4 CONTINUE 5 CONTINUE RETURN END Page 3

PROGRAM III This program evaluates the mutual coupling between two dielectric covered longitudinal slots as a function of their separation distance. The files which consist this program are: RUN MUTUAL: DATA WAVE MUTUAL: OUT WAVE MUTUAL: SLOT DESIGN.FTN: MUTUAL SLOT.FTN POLESMUTUAL.FTN: YIJ DIEL MUTUAL.FTN: This program links all the subroutines. Input File Output File Main Program Subroutine DATA Subroutine F EER Subroutine NORM Subroutine CUBSPL Subroutine MUTUAL SLOT Subroutine DATA MUTUAL SLOT Subroutine SPOLES Subroutine YIJ DIEL Subroutine LIMIT Subroutine GREEN Function GXXM Function GZXM Function HZXE Subroutine FUNCT Subroutine GREI Subroutine ARIS Subroutine ADONIS

Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine Subroutine BESS1 TAIL BESS2 BSJO F DATASLOT YIJ WAVE S14 VBJO ARRANGE MUTUAL YIJWAVE MUTUAL.FTN: ARRANGE MUTUAL. FTN:

##t#### ######## a p oll o d om a in CAEN/Apol lo # # t # # # 4 4 # 4 4 4 * 4 4 # # # # # # # # # # # # # 4 4 # f # # t 4 f # f 4 4 4 9 * I # # # 4 # # # 4 0 4 4 4 4 4 4 K K A K K A A K K A A KKK A A K K AAAAAAA K K A A K K 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 I III rrrrr u u n n r r u u nn n r r u u n n n rrrrr u u fl n n r r u u n nnl r r uuiuu 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 t —ttt t 0 U U aa u u a a U u a a U u aaaaaa U u a a uuuu a a I I 1 I 1 111111 //tera/users/katehi/t ape/run mrutual LAST MODIFIED ON: 89/04/24 10:40 AM FILE PRINTED: 8 91 04 /2 4 1:Dl AM * eeIas o Is #3~ 9 * I~10 1 14 4 f *Iaes$6 II s8 #9 t~4 4#

Print file "runmutual" Page 1 BIND SLOT DESIGN.BIN MUTUALSLOT.BIN POLES MUTUAL.BIN YIJ DIEL MUTUAL.BIN YIJ WAVE MUTUAL.BIN A

*4*4 44 4 444444444 #44444 #444444#44 444444 4444444#44 4444 #44 4##4444 a p oll o d om a i n CAEN/ApollIo 444444*4444 444 I 44444444*44#4#* 44444444444*444 4444*44444444 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 ddcidd aa d d a a d d a a d d aaaaaa d d a a ddcidd a a ttttt aa t a a t a a t aaaaaa t a a t a a w w aa v v eeeeee In m u u ttttt u u aa I w w a a v v e mm mm u u t u u a a 1 w w a a v v eeeee m mm m U u t u u a a I w ww w aaaaaa v v e m m U u t u u aaaaaa I ww ww a a v V e m m U u t u u a a I w w a a vv eeeeee -__ m m uuuu t uuuu a a 111111 *#44444#.444*4** $ 44 4 * #444 4444444 4 4444 44444 * 44*4 * 44444 4* 4444*4444 //tera/usars/katehi/tape/data-wave-mutual LAST MODIFIED ON: 89/04124 10:39 AM FILE PRINTED: 89/04/24 10:50 AM 444444444444444 #*4#4*444444*4# 44*4444444444444 444*I*444444444

Print file "data_wave_mutual" Page 1 C C Dielectric constant --- C 2.62 C C Substrate Thickness --- C 0.050 C C ---- Conductor Thickness -- C 0.00001 C C ---- Dimensions of the Waveguide ---- C 0.6858 0.3048 C C ---- Number of Slots C 2 C C ---- Transverse offsets of the slots ---- C 0.24765 0.43815 C C ---- Longitudinal offets of the slot ---- C 1 100 C C ---- Slot widths C 0.047625 0.047625 C C S ---- lot Excess Widths ---- C 0. 0 0. 0 C C ---- Subsection Length ---- C 0.01173 0.01173 C C ---- Lower Limit of the Tail Contribution C 100.0 C C ---- Number of Points on the Slots ---- C 29 29 C C ---- Error in the evaluation of the series ---- C 1.D-6

#44 4##########*# a poll 1o d om a i n CAEN/Apollo 4 4 # # # 44444 #t#4 44 444444444444 4444# #444 #44#4 4 44 41444444 ## #4 444444 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 AAAA.AAA T E H H I K K A A T 2 H H I K K A A T EEEEEEE H H III 0000 U U ttttt o o U U t o 0 U U t o o U U 2 o o U U t 0000 UUUU 2 w w aa v v eeeeee w w a a v v e w w a a v v eeeee w ww w aaaaaa v v e ww ww a a v V e w w a a vv eeeeee in in U U tttt u U aa I mm mm u U 2 U U a a 1 ininmni u u t u u a a 1 in i u U t u u aaaaaa 1 n in U U 2 u u a a 1 n in uuuu 2 uuuu a a 111111 If1 # # # # # ## # #ft# 4444*44*144444## //tera/users/katehi/tape/out-wave-mutual LAST MODIFIED ON: 89/04/24 10:40 AM FILE PRINTED: 8 9/0 4/ 24 10:58 AM I* *eO*# $44 4 ## 4 *eIIe## *1 # # # 4# 4 *eseeeeei I# I4 #44#I

Print: file "out_wave_mutual" Page 1 Dielectric Constant of the Substrate 0.2620000E+01 Substrate Thickness 0.5000000E-01 Conductor Thickness 0.1000000E-04 Dimensions of the Waveguide AW= 0.6858000E+00 BW= 0.3048000E+00 Number of Slots NSLOTS= 2 Transverse Offsets of the Slots YOFF(1)= 0.2476500E+00 YOFF( 2)= 0.4381500E+00 Longitudinal Offset of the Slots NXOFF(1)= 1 NXOFF( 2)= 100 Slot Widths WS(1)= 0.4762500E-01 WS( 2)= 0.4762500E-01 Slots Excess Widths WSDELTA= 0.O000000E+00 WSDELTA( 2)= 0.0000000E+00 Subsection Length 0.1173000E-01 DLX RES( 2)= 0.1173000E-01 Lower Limit of Tail Contribution 0.1000000E+03 Number of Points on Each Slot including the ends NSL(1)= 29 NSL( 2)= 29 Error in the evaluation of the series ERROR= 0.1000000E-05

Print file,Uout wave mutual Pae Page 2 Normalization Constant 0. 1000000E+01 L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= L= 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 30 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 24 25 2 6 27 2 8 2 9 3 0 31 ROUR (L) = RCUR (L) = RCUR (L) = ROUR (L) = RCUR (L) = RCUR (L) = ROUR (L) = ROUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = ROUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (Li) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = ROUP. (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUPR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (L) = RCUR (14 = RCUR (L) = RCUR (L) = RCUR (L4 = RCUR (L) = RCUR (L) = 0. OOOOOOOE+00 0. 1045285E+00 0. 2079117E+00 0. 3090170E+O0 0. 4067366'E+00 0.50000OOOE+00 0. 5877852-eE+00 0. 669130E'E+00 0. 7431448E+00 0. 8090170IE+00 0. 8660254:E+00 0. 9135454E+O0 0. 9510565,E+OO 0. 978147E;E+00 0. 9945219,E+O0 0.1000OOOOE+01 0. 9945219,E+00 0.978147 6E+00 0. 9510565 IE+00 0. 9135454E+00 0. 8660254E+00 0. 8090170E+00 0.743144 8E+00 0.6691306E+00 0. 5877852E+00 0.5000000OE+00 0. 4067366E+00 0.30901708+00 0. 2079117E+00 0. 1045285E+00 0. 7932658E-12 0. OOOOOOOE+00 0. 1045285E+00 0.2079117E+00 0.3090170E+00 0. 4067366E+00 0. 5000000E+00 0.5877 852E+00 0.66913068+00 0. 7431448E+00 0.809017 08+00 0.86602548+00 0.91354548+00 0.95105658+00 0. 9781476E+00 0. 99452198+00 0. 1000000E+01 0. 994 5219E+00 0. 9781476E+00 0. 9510565E+00 0. 9135454E+00 0. 8660254E+00 0. 8090170E+00 0.743144 8E+00 0.669130 6E+00 0.5877 8528+00 0.50000008E+00 0.40673668E+00 0.30901708'+00 0. 20791178E+00 0.10452858E+00 0. 79326588E-12 AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (Li) = 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) = AI CUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L)= AICUR (1L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = AICUR (L) = 0. OOOOOOOE+00 0. 00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0O.OOOOOOOE+00 0. 00000008+00 0.00000008+00 0.00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0.00000008+00 0. 00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 O.OOOOOOOE+00 0. 00000008+00 0.00000008+00 0. 00000008+00 0. OOOOOOOE+00 0.00000008+00 0. OOOOOOOE+00 0. 00000008+00 0. 00000008+00 0.OOOOOOOE+00 0. OOOOOOOE+00 0. 00000008+00 0. OOOOOOOE+00 0.00000008+00 0. 00000008+00 0. OOOOOOOE+00 0. 00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. 00000008+00 0. 00000008+00 0. 00000008+00 O.OOOOOOOE+00 0. OOOOOOOE+00 0. 00000008+00 0. OOOOOOOE+00 0. 00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. 00000008+00 0. 00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0.00000008+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. OOOOOOOE+00 0. 00000008+00 0.00000008+00 0.00000008+00 0. 00000008+00 0. 00000008+00 0. 00000008+00

Print file "out wave mutual"' Page 3 Number of elements to be evaluated for the mutual interactions I= 1 J= 2 NSSL= 130 0.1905000E+00 Offsets for the dielectric layer and number of corresponding elements I= 1 OFFSET= 0.1905000E+00 NOFFS= 130 I= 2 OFFSET= 0.0000000E+00 NOFFS= 0 SLOTS and corresponding offsets in the dielectric I= 1 J= 2 INSS= 1 OFFSET= 0.1905000E+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.640756827E+01 Contribution to admittance from the dielectric OFFSET # 1 Waveguide Admittance Matrix Interactions between slots 1 and 2

Print file "out wave nmutual"1 IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= Jj= IJj= IJ= I J= IJj= IJj= IJ= IJ= IJ= IJ= IJj= IJj= IJj= I J= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= I J= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= I J= I J= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= IJj= I J= IJj= 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 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 27 2 8 2 9 3 0 3 1 32 33 3 4 3 5 3 6 37 38 3 9 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 51 52 5 3 54 55 5 6 57 58 5 9 6 0 61 62 63 64 65 6 6 YSD=-0.1502 052E-05 YSD=-0.1501056E-05 YSD=-0. 1498070E-05 YSD=-0. 1493103E-05 YSD=-0. 1486167E-05 YSD=-0. 14772 82E-05 YSD=-0.1466470E-05 YSD=-0. 1453760E-05 YSD=-0. 1439187E-05 YSD=-0. 142278 8E-05 YSD=-0. 1404607E-05 YSD=-0. 1384692E-05 YSD=-0.13630 95E-05 YSD=-0. 1339874E-05 YSD=-0. 13150 88E-05 YSD=-0.128 8803E-05 YSD=-0. 1261085E-05 YSD=-0.12320 09E-05 YSD=-0. 120164 8E-05 YSD=-0. 117007 9E-05 YSD=-0.1137385E-05 YSD=-0.1103647E-05 YSD=-0. 1068 951E-05 YSD=-0. 1033385E-05 YSD=-0. 9970355E-06 YSD=-0. 9599943E-06 YSD=-0. 9223518E-06 YSD=-0. 8841999E-06 YSD=-0. 8456310E-06 YSD=-0. 8067377E-06 YSD=-0.7676119E-06 YSD=-0.7283458E-06 YSD=-0. 6890300E-06 YSD=-0. 6497557E-06 YSD=-0. 610 6114E-06 YSD=-0.5716889E-06 YSD=-0.5330 600E-06 YSD=-0.4948237E-06 YSD=-0. 45704 81E-06 YSD=-0. 4198299E-06 YSD=-0.3832313E-06 YSD=-0.347328 6E-06 YSD=-0. 3121926E-06 YSD=-0.2778891E-06 YSD=-0.2444822E-06 YSD=-0.2120311E-06 YSD=-0.1805917E-06 YSD=-0. 1502157E-06 YSD=-0. 1209510E-06 YSD=-0. 9284119E-07 YSD=-0. 6592566E-07 YSD=-0. 4023950E-07 YSD=-0. 1581337E-07 YSD= 0.7326277E-08 YSD= 0.2915747E-07 YSD= 0.4966289E-07 YSD= 0.6882937E-07 YSD= 0.8664801E-07 YSD= 0.1031147E-06 YSD= 0.1182291E-06 YSD= 0.1319955E-06 YSD= 0.1444220E-06 YSD= 0.1555209E-06 YSD= 0.1653083E-06 YSD= 0.1738043E-06 YSD= 0.1810323E-06 0.2275877E-05 0. 2242999E-05 0. 2147365E-05 0. 1997759E-05 0. 1808023E-05 0. 1595797E-05 0.1380082E-05 0. 1177184E-05 0.9954 610E-06 0. 8318239E-06 0. 6741448E-06 0. 5118209E-06 0. 3496734E-06 0. 2135603E-06 0.1374578E-06 0. 1352719E-06 0. 1786389E-06 0. 2057486E-06 0. 1648202E-06 0. 6159189E-07 -0. 3463379E-07 -0. 4370827E-07 0. 5150355E-07 0. 1783485E-06 0. 2299578E-06 0. 16 19 68 5 E- 06 0. 4019307E-07 -0. 144 6665E-07 0. 5967399E-07 0.2009203E-06 0. 2791403E-06 0. 2225402E-06 0. 9135283E-07 0. 1995795E-07 0. 8139568E-07 0. 2118529E-06 0.27554 94E-06 0. 2053935E-06 0. 7291942E-07 0.126920 OE-07 0. 8001712E-07 0. 1932922E-06 0. 2227584E-06 0. 1301198E-06 0. 8233656E-08 -0. 2138847E-07 0. 5935715E-07 0.1478 093E-06 0. 1354010E-06 0.267 8439E-07 -0. 6797063E-07 -0. 57254 51E-07 0.314 0372E-07 0. 85124 72E-07 0. 3358150E-07 -0. 7370772E-07 -0. 1260233E-06 -0. 7714 630E-07 0D.4667868E-08 0.168 8500E-07 -0. 6060679E-07 -0. 1451612E-06 -0. 147 9553E-06 -0. 7492224E-07 -0. 1716000E-07 -0. 4463254E-07 YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= YSW= 0. 2415901E-06 0. 2412827E-06 0.2403616E-06 0. 2388290E-06 0. 2366887E-06 0. 2339464E-06 0. 2306088E-06 0. 2266846E-06 0. 2221837E-06 0. 2171175E-06 0.2114 990E-06 0. 2053424E-06 0.198 6634E-06 0. 1914790E-06 0. 1838074E-06 0. 1756683E-06 0. 1670822E-06 0. 1580711E-06 0. 1486578E-06 0.1388 663E-06 0. 1287216E-06 0.11824 94E-06 0. 1074763E-06 0. 9642982E-07 0.8513803E-07 0.7362 963E-07 0. 6193392E-07 0. 5008064E-07 0.380 9995E-07 0. 2602233E-07 0. 1387852E-07 0. 1699396E-08 YSW=-0. 104 8405E-07 Ysw=-0.2264083E-07 YSW=-0. 34740OOOE-07 YSW=-0. 4675080E-07 YSW=-0. 5864266E-07 YSW=-0. 7038532E-07 YSW=-0. 8194 893E-07 YSW=-0. 93304 05E-07 YSW=-0. 1044218E-06 YSW=-0. 1152739E-06 YSW=-0. 1258327E-06 YSW=-0. 1360714E-06 YSW=-0.1459640OE-06 YSW=-0. 1554 852E-06 YSW=-0. 1646108E-06 YSW=-0.1733177E-06 YSW=-0. 1815836E-06 YSW=-0. 1893876E-06 YSW=-0. 1967097E-06 YSW=-0.2035315E-06 YSW=-0.2098354E-06 YSW=-0.2156055E-06 YSW=-0.2208270E-06 YSW=-0.2254 868E-06 YSW=-0.2295730E-06 YSW=-0.2330751E-06 YSW=-0.2359842E-06 YSW=-0.2382 930E-06 YSW=-0. 2399955E-06 YSW=-0.2410 875E-06 YSW=-0.2415661E-06 YSW=-0.2414.303E-06 YSW=-0.2406802E-06 YSW=-0.2393:L77E-06 Page 4 0. 7609726E-06 0.1 32 6 72 8 E-0 5 0. 1069803E-05 0.947704 8E-06 0. 7447657E-06 0. 6527574E-06 0.385537 9E-06 0. 2333452E-06 0. 6199575E-07 -0. 9202368E-07 -0. 2308191E-06 -0. 3394165E-06 -0. 4326996E-06 -0. 5042081E-06 -0. 5603256E-06 -0. 5984197E-06 -0. 6262339E-06 -0. 6422787E-06 -0. 6503756E-06 -0. 650 8224E-06 -0. 6469030E-06 -0. 6383362E-06 -0. 6268533E-06 -0. 6131191E-06 -0. 597 8355E-06 -0. 581454 9E-06 -0. 5644310E-06 -0. 5470432E-06 -0. 5295273E-06 -0. 5120179E-06 -0. 4947112E-06 -0. 4775658E-06 -0. 4607260E-06 -0. 4441717E-06 -0. 4279175E-06 -0. 4119574E-06 -0. 3962759E-06 -0. 3808515E-06 -0. 3656590E-06 -0. 350 6709E-06 -0. 3358593E-06 -0. 3211962E-06 -0. 3066554E-06 -0.2922119E-06 -0. 27784 34E-06 -0. 26352 99E-06 -0. 2492541E-06 -0. 2350018E-06 -0. 2207613E-06 -0. 2065240E-06 -0. 1922841E-06 -0. 1780386E-06 -0. 1637871E-06 -0. 1495317E-06 -0. 1352770E-06 -0. 1210298E-06 -0. 1067990E-06 -0. 9259556E-07 -0. 7843211E-07 -0. 6432303E-07 -0. 5028418E-07 -0. 363327 8E-07 -0. 224 872 4E-07 -0. 8767000E-08 0. 4807561E-08 0. 1821532E-07

Print file "out wave mutual" I J= IJ= I J= IJ= IJ= IJ= I J= I J= I J= I J= I J= I J= IJ= I J= I J= IJ= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= IJ= I J= I J= I J= I J= I J= I J= IJ= I J= I J= I J= I J= I J= IJ= I J= I J= I J= I J= I J= I J= I J= I J= I J= IJ= I J= I J= I J= I J= I J= I J= I J= I J= I J= I J= 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 1 06 1 07 I 0O 8.1 0 9.110:111 1112 1113:1 1 2 1L 1 3:1115 IL 17 L 18 iL 19 lL 2 0 1 21 1 22 1 23 124 1.25 1.26 1.27 1.28 1.29 1.30 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.1870195E-06 0.1917963E-06 0.1953963E-06 0.1978561E-06 0.1992151E-06 0.1995153E-06 0.1988012E-06 0.1971194E-06 0.1945186E-06 0. 1910490E-06 0.1867627E-06 0.1817129E-06 0.1759542E-06 0.1695418E-06 0.1625316E-06 0.1549803E-06 0.1469442E-06 0.1384802E-06 0.1296449E-06 0.1204940E-06 0.1110833E-06 0.1014673E-06 0.9169973E-07 0.8183300E-07 0.7191830E-07 0. 6200529E-07 0.5214184E-07 0.4237404E-07 0. 3274624E-07 0.2330027E-07 0.1407623E-07 0.5111628E-08 -0.1269922E-06 -0.1712370E-06 -0.1300020E-06 -0.5448680E-07 -0.3276671E-07 -0.8747440E-07 -0.1517164E-06 -0.1488389E-06 -0.8119605E-07 -0.2514673E-07 -0.4059746E-07 -0.1021450E-06 -0.1310470E-06 -0.8821132E-07 -0.1851879E-07 0.3718924E-08 -0.3794094E-07 -0.8461234E-07 -0.7293960E-07 -0.9248197E-08 0.3972809E-07 0.2649978E-07 -0.2218684E-07 -0.3877182E-07 0.4754270E-08 0.6500414E-07 0.7999154E-07 0.4239320E-07 0.6652215E-08 0.2325351E-07 0.7934773E-07 0.1154926E-06 YSW=-0.2373465E-06 YSW=-0.2347714E-06 YSW=-0.2315990E-06 YSW=-0. 2278375E-06 YSW=-0. 2234963E-06 YSW=-0. 2185865E-06 YSW=-0. 2131207E-06 YSW=-0. 2071126E-06 YSW=-0.2005777E-06 YSW=-0. 1935324E-06 YSW=-0. 1859948E-06 YSW=-0.1779841E-06 YSW=-0. 1695205E-06 YSW=-0. 1606257E-06 YSW=-0. 1513222E-06 YSW=-0.1416337E-06 YSW=-0.1315850E-06 YSW=-0.1212014E-06 YSW=-0. 1105095E-06 YSW=-0. 9953651E-07 YSW=-0.8831027E-07 YSW=-0. 7685936E-07 YSW=-0. 6521291E-07 YSW=-0. 5340056E-07 YSW=-0.4145236E-07 YSW=-0.2939869E-07 YSW=-0. 1727 024E-07 YSW=-0. 5097850E-08 YSW= 0.7087508E-08 YSW= 0.1925484E-07 YSW= 0.3137318E-07 YSW= 0.4341171E-07 YSW= 0.5533979E-07 YSW= 0.6712710E-07 YSW= 0.7874361E-07 YSW= 0.9015981E-07 YSW= 0.1013466E-06 YSW= 0.1122756E-06 YSW= 0.1229190E-06 YSW= 0.1332496E-06 YSW= 0.1432413E-06 YSW= 0.1528685E-06 YSW= 0.1621069E-06 YSW= 0.1709328E-06 YSW= 0.1793239E-06 YSW= 0.1872587E-06 YSW= 0.1947172E-06 YSW= 0.2016803E-06 YSW= 0.2081303E-06 YSW= 0.2140508E-06 YSW= 0.2194267E-06 YSW= 0.2242444E-06 YSW= 0.2284917E-06 YSW= 0.2321-576E-06 YSW= 0.2352329E-06 YSW= 0.2377098E-06 YSW= 0.2395819E-06 YSW= 0.2408445E-06 YSW= 0.2414945E-06 YSW= 0.24151300E-06 YSW= 0.2409510E-06 YSW= 0.2397591E-06 YSW= 0.2379572E-06 YSW= 0.2355499E-06 Page 5 0.3143452E-07 0.4444292E-07 0.5721791E-07 0.6973664E-07 0.8197615E-07 0.9391350E-07 0.1055258E-06 0.1167906E-06 0.1276854E-06 0.1381884E-06 0.1482783E-06 0.1579345E-06 0.1671368E-06 0.1758661E-06 0.1841041E-06 0.1918332E-06 0.1990371E-06 0.2057006E-06 0.2118093E-06 0.2173502E-06 0.2223117E-06 0.2266831E-06 0.2304555E-06 0.2336209E-06 0.2361730E-06 0.2381068E-06 0.2394187E-06 0.2401069E-06 0.2401706E-06 0.2396109E-06 0.2384300E-06 0.2366321E-06 0.2342225E-06 0.2312080E-06 0.2275971E-06 0.2233997E-06 0.2186269E-06 0.2132916E-06 0.2074077E-06 0.2009908E-06 0.1940576E-06 0.1866261E-06 0.1787156E-06 0.1703466E-06 0.1615407E-06 0.1523204E-06 0.1427097E-06 0.1327331E-06 0.1224163E-06 0.1117857E-06 0.1008685E-06 0.8969273E-07 0.7828692E-07 0.6668027E-07 0.5490242E-07 0.4298345E-07 0.3095382E-07 0.1884423E-07 0.6685578E-08 -0.5491114E-08 -0.1765478E-07 -0.2977441E-07 -0.4181910E-07 -0.5375814E-07 YSD=-0.3558423E-08 0.9687795E-07 YSD=-0.1190110E-07 0.5370288E-07 YSD=-0.1988636E-07 0.4384140E-07 YSD=-0.2748658E-07 0.8377850E-07 YSD=-0.3467690E-07 0.1301444E-06 YSD=-0.4143504E-07 0.1324581E-06 YSD=-0.4774164E-07 0.9297958E-07 YSD=-0.5357975E-07 0.6271296E-07 YSD=-0.5893550E-07 0.7981566E-07 YSD=-0.6379727E-07 0.1247026E-06 YSD=-0.6815674E-07 0.1446568E-06 YSD=-0.7200748E-07 0.1171176E-06 YSD=-0.7534648E-07 0.7572305E-07 YSD=-0.7817252E-07 0.6905992E-07 YSD=-0.8048754E-07 0.1026431E-06 YSD=-0.8229527E-07 0.1333889E-06 YSD=-0.8360234E-07 0.1219574E-06 YSD=-0.8441715E-07 0.7944448E-07 YSD=-0.8475055E-07 0.5304804E-07 YSD=-0.8461529E-07 0.6912677E-07 YSD=-0.8402606E-07 0.1023341E-06 YSD=-0.8299939E-07 0.1069955E-06 YSD=-0.8155347E-07 0.7199077E-07 YSD=-0.7970798E-07 0.3326932E-07 YSD=-0.7748424E-07 0.3000378E-07 YSD=-0.7490444E-07 0.5786035E-07 YSD=-0.7199245E-07 0.7516525E-07 YSD=-0.6877274E-07 0.5347459E-07 YSD=-0.6527063E-07 0.1127290E-07 YSD=-0.6151261E-07 -0.9049415E-08 YSD=-0.5752525E-07 0.7721951E-08 YSD=-0.5333570E-07 0.3207941E-07 Interactions between slots 2 and 2

Print file "out wave mutual" Page 6 NOEL1= 31 NOEL2= 31 NS12= 61 LONGITUDINAL DISTANCE IN WAVELENGTHS IN FREE SPACE= 0.7155300E+00 LONGITUDINAL DISTANCE IN WAVELENGTHS IN WAVEGUIDE= 0.4897325E+00 SUM MD= 0.3312877E-04 SUM MW=-0.7872593E-04 SUM M= 0.0000000E+00 Z12 MD=-0.2354168E+01 Z12 MW= 0.5594355E+01 Y12 MD=-0.1824758E-01 Y12 MW= 0.4336285E-01 -0.1799215E-04 -0.1516772E-04 0.0000000E+00 0.1278543E+01 0.1077835E+01 0.9910215E-02 0.8354495E-02 CMC EXT=-0.2105943E+00 0.1143732E+00 CMC INT= 0.5004480E+00 0.9641872E-01

4 *4*4* 4 4*4*44444 #4* **4####444444 4 44 4 #4* #44444444 444*444#44444444 a p 0ll1o darnm a i n CAEN/Apollo 4* ## 44*4*94*44 I#**4 # # ####44* 4 4* 4 #*c1 I 4*4 * f4 # f4 *4 4 K K K K K K KKK K K K K K K A TTTTTTT A A T A A T A A T AAAAAAA T A A T A A T EEEEEEE H H E H H E H H EEEEE HHHHHHH E H H E H H EEEEEEE H H II I I I I I I I II ssss 1 S I ssss 1 si1 S SI SSSS 111111 0000 o a o 0 o o aD 0000 ttttt t t t t t ddddd eeeeee ssss d d e s d di eeeee ssss d d e s d ci e s S ddddd eeeeee ssss I I I I I I gggg n n g g nnl n g n nl n g ggg n n n g g n nnl gggg n n ffffff f ft f f f f f tt tt t t t t t t n n nfl n nf n n ni nfl n n n fi n 444444444444 #444 4444 * 4 #4444444 * 4 4*44 #4*444444444 *4*4 * 4*1 44444 * 44 //tera/users/katehi/tape/slot de~sign.It n LAST MODIFIED ON: 89/04/24 10:39 AM FILE PRINTED: 8 9/ 04 /2 411:01 AM Ieg,,, C e 4**4 04 #* # CC 1 * I l44 #a4 4 # * I #* s *C*CCC*4*4 * I#Is 1 4 4*#4*4

Print file "slotdesign.ftn" Page 1 C.............................................................................. C SLOT-DESIGN.FTN C This program solves the problem of a dielectric covered waveguide C slot C.............................................................................. IMPLICIT REAL*8 (A-H,O-Z) REAL*4 RCUR,AICUR,CINC,ABSCF COMPLEX YS,YS1S2,CI,SUM MD,SUM MW,SUM M,CUR RES,Z SELF-RES COMPLEX YS ADM,YSW ADM,CONSTN,CONSTM,Z12_MD, Z12MW COMPLEX Y12 MD,Y12-MW,CF,CMC-EXT,CMC-INT EXTERNAL FEER C.......................................................................... C This common statement is the same in GENERATE and MUTUAL SLOT C.................................................................... COMMON/DATSUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AKO,AK, *AKK,FA,OFFSET(7),OFFLIM,ERROR,NOFF C................................................................. C This common statement is the same in MUTUAL SLOT C....................................................................... COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C C NSL............. includes also the end points.............. C....................................................................... C This common statement is the same in MUTUAL SLOT C.................................................................. COMMON/MUTUAL-AD-MAT/YS-ADM(7,7,200),YSW-ADM(7,7,200) C.................................................................... C This common statement is the same in GENERATE C................................................................... COMMON/RES/S LENGTH(30),DLX-RES(30),Z-SELF-RES(30), *CUR RES(30,60) C.................................................................... COMMON/IOFF/INSS(7,7),NSSL(7,7) C COMMON/SPLINE/RCUR(60),AICUR(60) C COMMON/MAN/IBMATR(260,260) C COMMON/WAY OUT/RS10(7,7,200),XS10(7,7,200),SGMN(7,7,200), *RIJ (7,7, 200) C COMMON/B01/BJ0,BJ1 C OPEN(UNIT=05,FILE='DATA WAVE MUTUAL',STATUS='OLD') OPEN(UNIT=06,FILE='OUT WAVE MUTUAL',STATUS='OLD') OPEN(UNIT=07,FILE='PLOT MUTUAL',STATUS='APPEND' ) C C Subroutine DATA reads the values of the geometrical C parameters C CALL DATA C CALL F EER CI=(0.U, 1.0) ICUR=1 C C ICUR=0 resonant field derived from GENERATE C ICUR=1 we assume a form for the resonant field C IF (ICUR.EQ.0) THEN 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)

Print: file "slotdesign. ftn" C 1 CONTINUE C C.......................................................... END IF NSL(1)=NSL(1)+2 NSL(2)=NSL(2)+2 C C........................................................... C C Find common subsection length C N SLOT=1 IF (NSLOT.LE.4) THEN I MIN=1 ELSE I MIN=N SLOT-3 END IF C IF (NSLOT.GT.(NSLOTS —4)) THEN I MAX=NSLOTS ELSE I MAX=NSLOT+3 END IF DLX=DLX RES(I MIN) DO 2 I=I MIN,I MAX IF (DLX RES(I).LT.DLX) THEN DLX=DLXRES(I) END IF 2 CONTINUE C WRITE (*,*) DLX C C Interpolate the current of nslot C DLX DIF=DABS(DLX RES(N SLOT)-DLX) IF (DLX DIF.GT.1.D-5) THEN CALL CUBSPL(ICUR,DLX,1,N SLOT,1) CALL CUBSPL(ICUR,DLX,1,NSLOT,2) DLX RES(N SLOT)=DLX L MAX=NSL(N SLOT) DO 7 L=1,L MAX CUR RES(N SLOT,L)=RCUR(L)+CI*AICUR(L) WRITE (6,77) NSLOT,L,CUR RES(N SLOT,L) 77 FORMAT(5X,'N SLOT=',I4,2X,'L=',I4,2X,'CUR=', * E14.7,2XE14.7) 7 CONTINUE ELSE IF (ICUR.EQ.1) THEN L MAX=NSL(NSLOT) DO 502 L=1,L MAX RCUR(L)=SIN(PI* (L-1) / (NSL(N SLOT) -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 CUR RES (NSLOT, L) =RCUR (L)+CI*AICUR(L) 505 CONTINUE 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 Page 2

Print file "slotdesign.ftn"' C DLX DIF=DABS (DLXRES(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 CONTINUJE ELSE IF (ICUR.EQ.1) THEN L MAX=NSL(M) DO 503 L=1,L MAX RCUR(L)=SIN(PI*(L-1)/(NSL(N SLOT)-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 C CALL MUTUALSLOT(NSLOT) C C 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(1OX,'Interactions between slots',I2,' and ',* I2//) DO 14 IJ=1,IJMAX WRITE (6,15) IJ,YS ADM(I,J,IJ),YSW ADM(I,J,IJ) 15 FORMAT(1X,'IJ=',4,1X, 'YSD=', E14.7,2X, E4.7, * 2X,'YSW=',E14.7,2XE14.7) 14 CONTINUE 12 CONTINUE 11 CONTINUE C DLG=1.D0/DSQRT(1.D0-1.DO/(2.D0*AW)**2) IZMAX=NXOFF(2) C C DO 108 IZ=31,IZMAX,2 C IZ FIX=0.5D0*DLG/DLX DO 108 IZ=IZFIX,IZFIX C NXOFF(2)=IZ CALL ARRANGEMUTUAL C C Find the center of n slot C NCO=(NSL(NSLOT)I+1)/2 C C Find the corresponding row for IBMATR C I ROW=0 DO 20 I=I MIN,N SLOT Page 3

Print file "slotdesign.ftn1' IF (I.GT.1) I ROW=I ROW+NSL(I-1) 20 CONTINUE C C Find the mutual coupling terms due to dielectric,waveguide C SUM MD=(O.O,O.0) SUM MW=(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) ICOL=ICOL+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=CURRES(N SLOT,IN)/CUR RES(N SLOT,NCO) C C WRITE (6,88) NSLOT,IN,CONSTN C 88 FORMAT(2X,'N=',I4,2X,'IN=',I4,5X,'CONSTN=', C * E14.7,2X,E14.7//) C IM MIN=1 IM MAX=NSL(M) DO 5 IM=IM MIN,IM MAX CONSTM=CUR RES (M,IM)/CUR RES(M,NCI) CON=CONSTN*CONSTM IJ=I ROW+IN KJ=I COL+IM IK=IBMATR (IJ, KJ) C C WRITE (6,89) IM,CONSTM,IJ,KJ,IK C 89 FORMAT(lOX,'IM=',I4,2X,'CONSTM=',E14.7,2X,E14.7/ C * 10X,'IJ=',I4,2X,'KJ=',I4,2X,'IK=',I4) C SUM MD=SUM MD+SNGL(CON)*YS ADM(N SLOT,M,IK) SUM MW=SUMMW+SNGL(CON)*YSW-ADM(NSLOT,M,IK) 5 CONTINUE 4 CONTINUE 3 CONTINUE DISTX=(NXOFF(2)-NXOFF(1))*DLX C WRITE (6,52) DIST X 52 FORMAT(///2X,'LONGITUDINAL DISTANCE IN', 'WAVELENGTHS IN FREE SPACE=',E14.7/) C DISTX=DIST X/DLG C WRITE (6,53) DIST X 53 FORMAT(///2X,'LONGITUDINAL DISTANCE IN', * WAVELENGTHS IN WAVEGUIDE=',E14.7/) Page 4 WRITE (6,60) SUM MD,SUM MW,SUM M

P~rint file "slot design.ftn"r 60 FORMAT (/1OX,'S:UM MD=',El4.7,5X,E14.7/ *1OXo,'SUM MW=`',E14.7,5XE14.7/1OX,'SUMM=',, * E14.7,5XfEl4.7,//) C C Z12 MD=-(12O.O!kSNGL(PI))**2*SUM MD/2.O z12-MW=- (120.0O'kSNGL (P1)) **2*SUM-MWq/2.0 C WRITE (6,61) Z1L2_MD,z12_MW 61 FORMAT(/10X,'Fz12 MD=',,El4.7,2X,El4.7/ *1OX,'Zl2_MW=,I-',E14f.7,,2X,,E14.7//) C GO=DSQRT(l.DO-JL.DO/ (2.DO*AW) **2) /(120.DO*PI') Y12 MD=-SUJM MD//SNGL(GO) Y12-MW=-SUMfMW/1SNGL (GO) C WRITE (6,62) Y1.2_MD,Y12 MW 62 FORMAT(/1OX,'"YL2_MD=',ET-4.7,2XEl4.7/ *1OX,1'Y12_MW=1',E,14.7,2X,E14.7//) C C C C C Evaluation of the coupling term Mc C C C BO1=DSQRT (1.DO-.(O. 5DO/AW) **2) B012=BO1*BO1 ARGYO=PI*YOFF (Nr SLOT) /AW ARGP=PI*DLX* (BO1f+1.DO) ARGM=PI*DLX* (BC'1-1.DO) ARGO =AKO *DLX C WRITE (*,*) ARG;YOARGO C ARG=B01*2.DO*PI*DLX CALL BSJO (PI*WS (N SLOT) /(2.DO*AW)) DINC= (1.DO/ (2*PI*AW) )**2* (1.DO/ (AW*BW) )* (1.DO/DSIN (ARGO)) DINC=DINC*DCOS (ARGYO) *BJO*DSIN(ARGM) *DSIN(ARGP) /(B01* * (l.DO-B012)) C WRITE (*,*) DINC C CINC=SNGL (DINC) CF= (0. 0,0. 0) JQMAX=NSL(NSLOT) DO 71 JQ=1,-JQMAX ARGX=ARG* FLOAT (JQ-1) EC=DCOS (ARGX) ES=DSIN (ARGX) IF (ICUR.EQ.1) CF=CF+SNGL(DSIN((JQ-~1)*PI/ * ~(NSL(N SLOT)-l1)))*(SNGL(EC)+CI*SNGL(ES)) IF (ICUR.EQ.O) CF=CF+CURRES(NSLOTJQ)* * (SNGL(EC)+CI*SNGL(ES)) 71 CONTINUE CF=CINC*CF ABSCF=CABS(CF) C WRITE (*,*) CFf,ABSCF C CMC EXT=Y12 MD/(SNGL(32.DO*AW**2*PI**2*AW*BW)*ABS CF**2) CMCINT=Yl2_MW!/(SNGL(32.DO*AW**2*PI**2*AW*BW)*ABS-CF**2) C WRI TE (6,f8 3) CMC -'EXTrCMC INT 83 FORMAT (lOX,'CMC —EXT=',El4.7,2XEl4.7,2Xf'CMCINT=', Page.5

Print: file "slotdesign.ftn" Page 6 * E14.7,2X,E14.7) C C WRITE (7,707) Yl12 MD,Y12_MW,CMCEXT,CMCINT 707 FORMAT(E14.7,22X, E14.7,2X, E14.7,2X, E14.7,2X, E14.7, * 2X,E14. 7,2X,E14.7,2X,E14.7) C 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/MUTUALADMAT/YSADM(7,7,200),YSWADM(7,7,200) C COMMON/IOFF/INSS (7,7),NSSL (7,7) C COMMON/MATDIEL/YS(200),YS1S2(7,200),NOFFS(7) C COMMON/RES/S LENGTH( 30),DLXRES(30), ZSELFRES(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//) C C ---- Substrate Thickness --- C READ (5,1) H WRITE (6,3) H 3 FORMAT(10X,'Substrate Thickness'/10X,E14.7//) C C ---- Conductor Thickness --- C READ (5,1) T WRITE (6,4) T 4 FORMAT(1OX,'Conductor Thickness'/10X,E14.7//) C C ---- Dimensions of the Waveguide ---- C READ (5,1) AW READ (5,10) BW 10 FORMAT(6X,D16.9) WRITE (6,5) AW,BW 5 FORMAT(10X,'Dimensions of the Waveguide'/10X,'AW=',E14.7/ *10X,'BW=',E14.7//) C C ---- Number of Slots ---- C

Print file "slot design. ftn" Page 7 C C C C C C READ (5,20) NSLOTS 20 FORMAT(///6X, I4) 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 ---- C C C C C C C C C C READ(5,1) YOFF(1) WRITE (6,7) YOFF(1) 7 FORMAT(1OX,'Transverse Offsets of the Slots'/1OX, *'YOFF(1)=',E14.7) IF (NSLOTS.GT.1) THEN DO 8 I=2,NSLOTS READ(5,10) YOFF(I) WRITE (6,9) I,YOFF(I) 9 FORMAT (10X, 'YOFF(', I2,')=',E14.7) 8 CONTINUE END IF WRITE(6, 60) 60 FORMAT(10X,//) --- Longitudinal Offsets of the Slots ( in dlx ) READ (5,20) NXOFF(1) WRITE (6,11) NXOFF(1) 11 FORMAT(10X,'Longitudin.al Offset of the Slots'/ *10X,'NXOFF(1)=',I4) 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, ')=',I4) 12 CONTINUE END IF WRITE(6,60) ---- Slot Widths --- READ(5,1) WS(1) WRITE(6,14) WS(1) 14 FORMAT(10X,'Slot Widths'/10X,'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 (1OX, 'WS (',12, ')=', E14.7) 15 CONTINUE END IF WRITE (6,60) ---- Slots Excess Widths ---- READ(5,1) WSDELTA(1) WRITE (6,17) WSDELTA(1) 17 FORMAT(10X,'Slots Excess Widths'/10X,'WSDELTA=', *E14.7) IF (NSLOTS.GT.1) THEN DO 18 I=2,NSLOTS READ(5,10) WSDELTA(I) WRITE(6,19) I,WSDELTA(I)

Print file "slot design.ftn" 19 FORMAT(1CIX,'WSDELTA(',I2,')=',El4.7) 18 CONTINUE END IF WRITE (6,60) C C ---- Subsection Length. -- C 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) DLX RES(I) WRITE(6,46) I,DLX RES(I) 46 FORMAT(10X,'DLXRES(',I2,')=',E14.7) 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(10X,'Lower Limit of Tail Contribution'/10X,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,14) WRITE(6,26) I,NSL(I) 26 FORMAT (1OX,'NSL(',12, ')=',I4) 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(10X,'Error in the evaluation of the series'/ *10X,'ERROR=',E147//) C C Initialize OFFSET( ) to 0 C DO 37 1=1,7 OFFSET(I)=0.DO 37 CONTINUE C C Initialize NOFF to 1 C NOFF=1 RETURN END C --- —--------------------------------------- ------------- C THIS FUNCTION EVALUTES EER C --- —------------------------------------------------------------ SUBROUTINE F EER IMPLICIT REAL*8 (A-H,O-Z) C Page 8

Print file "slotdesign.ftn" Page 9 C ---- Normalization Constant --- 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 C EER=ER+(1.D0-ER) * (W/H) / (1.D+W/H) C EER=1. 0 WRITE (6,100) EER WRITE(*,100) EER 100 FORMAT(10X,'Normalization Constant'/10X,E14.7/) RETURN END C ----------------------------------------------------------------- C NORMALIZATION SUBROUTINE C C THIS SUBROUTINE DENORMALIZES WITH RESPECT TO CNORMOLD 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, AK0,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=CNORMOLD/CNORM NEW C PI=3.141592654 C AK0=2.DO*PI*CNORMNEW AKK=2.D0*PI AK=AK0*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 C WS(1)=WS(1)*CNORM IF (NSLOTS.GT.1) THEN DO 15 I=2,NSLOTS WS(I)=WS(I)*CNORM 15 CONTINUE END IF C WSDELTA(1) =WSDELTA(1) *CNORM IF (NSLOTS.GT.1) THEN DO 18 I=2,NSLOTS WSDELTA (I)=WSDELTA (I)*CNORM

Print file "slotdesign.ftn" Page 10 18 CONTINUE END IF RETURN END C.......................... Spline Interpolation...................... ************************************************************************ SUBROUTINE CUBSPL(ICUR,DLX, IEND,N SLOT,IRX) IMPLICIT REAL*8 (A-H,O-Z) COMPLEX CURRENT,CUR REPS,Z SELFRES,CC REAL*4 RCUR,AICUR,REAL CUR,AIMAGCUR DIMENSION S(260),A(260,4),X(260),Y(260),AI(260),BI(260), *CI(260),DI(260) C COMMON/SLOTS/YOFF(30),,NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/RES/S LENGTH(30),DLX RES(30),Z SELFRES(30), *CURRES(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) C C Computation of matrices X,Y C NCO OLD=(NSL(N SLOT)+1)/2 NSLOT NEW=2*NINT((NSL(N SLOT)-1)*DLX RES(N SLOT) /(2.0*DLX))+1 NCO NEW=(NSLOT NEW+1)/2 ITEST=(NSLOT NEW+1)-NC0 NEW*2 I CUR=(NSLOT NEW+1)/2 I MIN=1 I MAX=NSL(N SLOT) L-MAX=NSLOTNEW C WRITE (*,*) L MAX C IF (ICUR.EQ.1) GO TO 500

Print file "slot design. ftn" Pag1 Page I 1 DO 1 I=IMIN,IMAX X (I)=DLXRES (NSLOT) *FLOAT (I-1) REAL CUR7=REAL(CfURRES(NSLOTI)) CURRENT=-CC*CUR RES(N SLOT,I) AIMAGCUR=REAL (CURRENT) IF (IRX.EQ.1) Y(I)=DBLE(REALCUR) IF (IRX.EQ.2) Y(I)=DBLE(AIMAGCUR) WRITE (6,67) I,,X(I),Y(I) 67 FORMAT (10X,'"I=" f 4, 2X,'fX=',fE14.7, 2X,'fY=',fE14.7) 1 CONTINUE C- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C I Compute the N-2 rows I C- - - - - - - - - - - - - C NM2=N-2 NM1=N-1 DX1=X(2) -X(l) DY1= (Y (2) -Y (1) ) /DX1 — 6. DO DO 10 I=1,NM2 DX2=X (1+2) -X (I+l) DY2=(Y(I+2)-Y(I+1) )/DX2*6.D0 A(I, 1) =DX1 A (If2) =2. DO* (DX1 +DX2) A(I,3)=DX2 A (1,4) =DY2-DY1 DX1=DX2 DYl =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 5 0 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(l) DX2=X(3) -X(2) A(1,,2)=(DX1+DX2)*(DX'1+2.DO*DX2)/DX2 A (1,f3) =(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 C 100 DO 110 I=2,NM2 A (I1,2) =A (I1,2) -A (1,f1) /A (1-1,f2) *A (1-1,f3) A (I, 4) =A (I, 4) -A (I, 1) /A (I -1, 2) *A (I-.1, 4) 110 CONTINUE C C Back substitution, C A (NM2,f4) =A (NM2,f4) /A (NM2,r2) DO 120 I=2,NM2

Print file "slotdesign.ftn " J=NM1-I A(J,4)=(A(J,4)-A(J, 3)*A(J+1,4) ) /A(J,2) 120 CONTINUE C C Place values in S-vector C DO 130 I=1,NM2 S(I+1)=A(I,4) 130 CONTINUE C C Set S(1) and S(N) according to end conditions C GO TO (150,160,170), IEND C C Linear ends C 150 S(1)=0. S(N)=0. GO TO 200 C 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(1)=((DX1+DX2)*S(2)+DX1*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.DO*DLX-RES(N-SLOT)) BI(I)=S(I) /2.DO CI(I)=(Y(I+1)-Y(I))/DLX RES(N SLOT)-(2.D0*S(I)+S(I+1)) * *DLX RES(N SLOT)/6.D0 210 DI(I)=Y(I) C C Re-evaluate nsl(n-slot) and cur-res(n-slot) C DO 2 I=1,I CUR IF (ITEST.EQ.0) NCP=NC0 NEW+I-1 IF (ITEST.EQ.1) NCP=NCO0NEW+I NCM=NC 0NEW-I+1 DISTP= (NCP-1) *DLX DISTM= (NCM-1) *DLX RIP=DISTP/DLX-RES(N-SLOT) IP=INT(RIP) IF ((RIP-IP).GT.0.999) IP=IP+1 IF(IP.EQ.NSLOT NEW) IP=IP-1 RIM=DISTM/DLXRES(N SLOT) 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) *DLX-RES (N-SLOT) DIFP2=DIFP*DIFP DIFM2=DIFM*DIFM DIFP3=DIFP2*DIFP Page 12

P~rint: fil1e "Isl ot desi gn. ftn" Pag1 Page 13 DIFM3=DIFM2*DIFM IF (I RX. EQ. 1) THEN IP=IP+1 IM=IM+ 1 RCUR(NCP)=SNG'L(AlI(IP) *DIFP3+BI (IP) *DIFP2+ * ~CI (:EP) *DIFP+DI (IP)) RCUR(NCM) =SNG'L(AlI(TM) *DIFM3+BI (IM) *DIFM2+ * ~CI (IM) *DIFM+DI (IM)) WRITE (6,666) NCP,IP,NCM,IMRCUR(NCP),RCUR(NCM) 666 FORMAT(2X,'NCIP=',I4,2X,'IP=',I4,2X,'NCM=',I4,2X,'IM=', * 14/30X,'RCUR(N'CP)=',El4.7,2X,'RCUR(NCM)=',El4.7) END IF IF (IRX.EQ.2) THEN IP=IP+1 IM=IM+1 AICtJR(NCP)=SNG7L (AlI(IP) *DIFP3+BI (IP) *DIFP2+ * ~CI (IP) *DIFP+DI (IP)) AICUR(NCM) =SNG'L (AlI(IM) *DIFM3+BI (IM) *DIFM2+ * ~CI (IM) *DIFM+DI (IM)) WRITE (6,777) NCPIPNCMIMAICUR(NCP),AICUR(NCM) 777 FORMAT(2X,'NCPI=',14,2X,'IP=',I4,2X,'NCM=',I4,2X,'IM=', * 14/lOX,'AICUR(NCP)=',E14.7,2X,'AICUR(NCM)=',E14.7) END IF 2 CONTINUE C IF (IRX.EQ.2) NSL(NSI'.OT)=NSLOTNEW RETURN C 500 CONTINUE DO 502 L=1,LMAX IF (IRX<.EQ. 1) THEN RCUR (L) =SIN (PI* (L-1) /(NSLOT NEW-i)) WRI TE (6,f6 01) LfRCUR (L) 6 01 FORMAT (1OX,' "L=', I4,f2X,' "RCUR=', fE 14. 7) ELSE IF (IRX. EQ. 2) THEN AICUR(L)=0.0 WRI TE (6,6 )0 2) LfAI CUR (L) 602 FORMAT(2X,'L=',I4,2X,'AICUR=',El4.7) END IF 502 CONTINUE C IF (IRX.EQ.2) NSL(NSLjOT)=NSLOT NEW C RETURN END

44 #4 4 4#~ 4 444411111 ###F#4444 41*#111# a p ollIo darnm ala CAEN/Apollo 44*14144444 #44 4 44*444*4*4*4444 4 414*1*4444444 4414*1*4444 444 4 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 E1 H H I K K A A T E H H I K K A A T EEEEEEE H H III rn r u u ttttt, u U aa 1 mm mm u u t u u a a 1 m mm m U U t U u a a 1 m in u U t u u aaaaaa 1 in i u u t U u a a 1 in r uuuu t uuuu a a 111111 sass 1 0000 ttttt a 1 0 0 L sass 1 0 0 t s 1 0 0 t s s 1 0 0 t sass 111111 0000 t iffiffff ttttt a a if C aa a fiffiff C aa a if t a aan.. f C a aa i.. f C a a 444111*4*1111111 * #1 * 4*1111111111 ******** 4 #111111 //tera/users/katehi/tape/mnutual-slot.ftn LAST MODIFIED ON: 89/04/24 10:35 AM FILE PRINTED: 89/04/24 10:55 AM a* e& ee a aa Aa4 4 44i~

Print file "mutual slot.ftn" Page 1 C............................................................................... C MUTUAL SLOT.FTN C This program evaluates the mutual coupling terms for the second C design equation SUBROUTINE MU L SLOT (N SLOT) IMPLICIT REAL"s (A-H,O-Z) COMPLEX YS,YS1S2,CI COMPLEX YS ADM,YSWADM EXTERNAL F EER 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,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/MUTUALADMAT/YSADM(7,7,200),YSWADM(7,7,200) C COMMON/MATDIEL/YS(200),YS1S2(7,200),NOFFS(7) C COMMON/OUT/GS(250),GS1S2 (7,250) C COMMON/MAT/PLI,AI, TI,V (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),SERA(5), *DARG(10,4),S(10,2),WREAL,NSER,NMAX(7) 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), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST C COMMON/COEF/RX,XX,RZ,XZ,FRX,FRZ, FX,F1Z C COMMON/IOFF/INSS(7,7),NSSL(7,7) C COMMON/B01/BJ, BJ1 C COMMON/MAN/IBMATR(260,260) C C Subroutine DATA MUTUALSLOT prepares the parameters for the C evaluation of the mutual coupling terms C CALL DATA MUTUAL SLOT(N SLOT) C CNORM OLD=1.DO CNORM NEW=1.DO/DSQRT(EER) CALL NORM(CNORM OLD,CNORM NEW) C C Subroutine YIJ DIEL evaluates the contribution to the elements C of the admittance matrix coming from the dielectric substrate C CALL YIJ DIEL C C Subroutine YIJ_WAVE evaluates the contribution coming from the C waveguide C CNORM OLD=1.DO/DSQRT (EER) CNORM NEW=1.DO CALL NORM(CNORMOLD,CNORM NEW) C CALL YIJ-WAVE

Print file "mutual_slot.ftn" Page 2 C --- —------------- ---------------- ---------------------- C C Subroutine YIJSLOT evalutes the contribution coming from the C slot which is treated as a cavity C C CALL YIJ SLOT C --- —--- -. --- —- ---------------------------------------- C RETURN END C.............................................................. C The name of this subroutine is DATA-MUTUAL-SLOT C..................................................... SUBROUTINE DATA MUTUAL SLOT(N SLOT) IMPLICIT REAL*8 (A-H,O-Z) DIMENSION WORK(7,7) C COMMON/DATSUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI,E1,E2,EER,AK0,AK, *AKK,FA, OFFSET (7),OFFLIM, ERROR, NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C COMMON/IOFF/INSS(7,7), NSSL(7,7) C COMMON/MATDIEL/YS(200),YS1S2(7,200),NOFFS(7) C IF (NSLOT.LE.4) THEN I MIN=1 ELSE I MIN=N SLOT-3 END IF C IF (NSLOT.GT.(NSLOTS-4)) THEN I MAX=NSLOTS ELSE I MAX=N SLOT+3 END IF C C ---- Evaluation of the Elements for the Mutual Interactions C WRITE (6,70) 70 FORMAT(///10X,'Number of elements to be evaluated for', r' 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 C C ---- Evaluation of the offsets for the dielectric ---- C 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 MTN=I+1 J MAX=I MAX DO 32 J=JMIN,J MAX TEST=WORK (], J)

Print file "mutual slot.ftn"'' Page 3 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 DO 35 N=1,IJ IF (TEST.EQ.OFFSET(N)) THEN INSS(IMIN,JMIN)=N IF(NOFFS(N).LT.NSSL(IMIN,JMIN)) THEN NOFFS(N)=NSSL(IMIN,JMIN) END IF GO TO 36 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 C 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+1 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(1OX,'I=',I4,2X,'J=',I4,2X,'INSS=',14, 2X,'OFFSET=',E14.7/) 54 CONTINUE 53 CONTINUE C C ---- Evaluation of the Max Number of Offsets for the Diel. C NOFF=IJ C WRITE (6,56) NOFF 56 FORMAT(///1OX,'Max number of offsets in the dielectric'/ 10X,'NOFF=',I4//) C RETURN END

44*4*4 #4* #J * * # # $ *4*11 * * * * # f * # I I I * ***** *** I # $ I I I $ **** 1**I*11$ I I I I a p o ll o d o m a i n CAEN/Apollo *4*# #4 # 94 4 4 *44 44**4 ###i##44 4 4 4 4 4444444444 # #4 4 4 *4 ##4 4 444 4 4 4 44 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 ppppp oooo 1 eeeeee sSss p p o o1 e s p p o o 1 eeeee sass ppppp o o 1 e s p o o 1 e s s p oooo 111111 eeeeee sSss m m u u ttttt u u aa 1 ffffff ttttt n n mm mm u u t u u a a 1 f t nn -. m un m u u t u u a a 1 fffff t n n " m m u u t u u aaaaaa 1... f t n n n m m u u t u u a a 1... f t n ^n m m uuuu t uuuu a a 111111... f t n n **#III##IIIIIIII **IIIII*III#I#II *#III#I#IIIIIIII 4#II##IIIIIIIIII //tera/users/katehi/tape/poles mutual.ftn LAST MODIFIED ON: 89/04/24 1C:36 AM FILE PRINTED: 89/04/24 11:00 AM * 1 11 tII 4 i4 4444 - IIIeI I,. *4 4 #4 I I I I I II A444# #N4 I* 1134 4 #4 44I4

Print file "polesmutual. ftn" Page 1 C The name of this file is........... POLES MUTUAL.FTN................ SUBROUTINE SPOLES IMPLICIT REAL*8(A-H, O-Z) C........................................................................ 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 X:....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,AKOGENER, *AKGENER,AKKGENER,FA,OFFSET(7),OFFLIM,ERROR,NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30),WS(30),WSDELTA(30),NSL(30),NSLOTS C 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), *BCOAL(10),MPOINT,NPOINT,NK0,MA,NM,NE,NKOK,IFIRST C AER=DSQRT(EER) ER2=ER*ER PI2=PI*PI MAXE=5 ERR=0.0000001DO DP=H/AER C --- —----------------------------- ----- C PART I: TE MODES C --- —---------------------- ---------- AKO=2.D0*PI AK=DSQRT(ER)*AKO X0=DP*DSQRT(AK**2-AK0**2) C --- —-------------------------------------------------------- C WRITE (6,300) AKO,AK,XO,PI C 300 FORMAT(10X,'AKO=',E14.7,2XAK E472X'AK='E72X'X0=',E14.7, C *2X,'PI=',E14.7/) C --- —--------------------- ------------------------------- AN=X0/PI+0.5D0 NE=AN IF (NE.EQ.0) GO TO 310 DO 2 I=1,NE IF (X0-(2.DO*FLOAT(I)+1.DO)*PI/2.DO) 3,3,4 4 XS0=(2.DO*FLOAT(I)-1.DO)*PI/2.DO+ERR XSl=(2.D0*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(XSO-XS1)-ERR) 22,7,7 7 XSA=(XSO+XS1)/2.DO Y=-DTAN(XSA)*DSQRr (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 C --- —------------------------------------ WRITE (6,301) ER,H 301 FORMAT(//10X,' Dielectric Constant=',D16.9/10X,'Substrate ', 'Thickness',D16.9///) C --- —---------------------------- ------ -------------------- 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.O) WRITE (6,305) NE 305 FORMAT(///10X,'There are',14, *' 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(I I) IF (TEP(I).LT.TEP(I I)) THEN TEP(I I)=TEP(I) TEP (I)=TEP MIN END IF 502 CONTINUE END IF 302 CONTINUE DO 503 II=1,NE WRITE (6,303) II,TEP(II) 303 FORMAT (10X, I4,2X,D16.9) 503 CONTINUE 312 CONTINUE C C END OF PART I C C --- —---------------------------------- C PART II: TM MODES C --- —--------------------------------------- AN=XO/PI+1.DO NM=AN DO 13 I=1,NM IF (XO-(2.DO*FLOAT(I)+1.DO)*PI/2.DO) 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 C --- —------------------------------------------ C WRITE (6,301) XRP C 301 FORMAT(10X,'XRA=',E14.7/) C --- —- ----------------------------------------- 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 "poles mutual. ftn" 113 XR(I)=(XSO+XS1)/2.DO 333 XR(I)=DSQRT(AK**2-XR(I)**2/DP**2) 13 CONTINUE WRITE (6,307) NM 307 FORMAT(///1OX,'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(II)=TMP(I) TMP(I)=TMP MIN END IF 508 CONTINUE END IF 308 CONTINUE DO 509 I=1,NM WRITE (6,306) I,TMP(I) 306 FORMAT (10X,I4,2X,D16.9) 509 CONTINUE 322 CONTINUE C 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 C 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 413 CONTINUE 415 CONTINUE IF (LOR(1).EQ.0) IFIRST=0 IF (LOR(1).EQ.1) IFIRST=1 GO TO 417 C 416 IFIRST=2 417 CONTINUE RETURN END Page 3

####### 4######## a pl 0 1o d orna i n CAEN/Apollo # f 4f 4#4 4 444 f4 44 if~ # 4 f 4 4 I4 4 4 44 444 4 ### # ff4 #4 44 4f4 a ff444 ff4 4 4 944f ~44 4 K K A K K A A K K A A KKK A A K K AAAAAAA K K A A K K 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 I II I III y y y y y y y y 1 1 1 1 i i j j j j j j ji ji _ _ __ ddddd d d d d d d d d ddddd I 1 I I 1 I eeeeee e eeeee e e eeeeee 1 1 1 1 1 111111 n in u a mmi mum a u irmi mm U n in a a n in a u in in uuuu ttttt t t t t t U a aa 1 a a a a 1 a u a a I U u aaaaaa I U u a a 1 uuuu a a 1i1 1 111 f f f ", il 1, I f I f r F - L...... f r... //tera/users/katehi/tape/yij-diel-rnutual.ftn LAST MODIFIED ON: 89/04/24 10:37 AM FILE PRINTED: 89/04/24 11:07 AM 4 44ff ## ff f4444 # 44 444ff #4 if 4ff# 4 4 #4444 #f 44ff# ## 4 4f 4 44 44

Print file "yijdielmutual.ftn" Page 1 C....................... YIJ DIELMUTUAL.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,C-Z) REAL*4 CONST,GSK,GS1S2K COMPLEX YS,YSlS2,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,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/MATDIEL/YS(200),YS1S2(7,200),NOFFS(7) C COMMON/OUT/GS(250),GS1S2(7,250) C COMMON/MAT/PLI,AI, TI,V (3), IY C COMMON/PUT/SSJO(250,7),SAJ0(250,7),YSIN,YCOS 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/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), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, F1X, F Z C COMMON/IOFF/INSS(7,7),NSSL(7,7) C COMMON/B0 1/BJO,BJ1 C W=WS(1) WDELTA=WSDELTA(1) WREAL=W W=W*(1.D0+2.DO*WDELTA/W) C C Subroutine POLES evaluates the poles of the Green's function C and orders them according to their magnitude C CALL SPOLES C C This subroutines gives data for the numerical integration C CALL DATA SLOT

Print file 1vyijjdiel-mutual.fttn" C 01= (0.00,1.00) C DO 1 I=1,NOFF MOFFS (I) =NOFFS (I') IF (NOFFS(I).GT.:200) NOFFS(I)=200 NMAX (I) =NOFFS (I) +2 1 CONTINUE C C ADL=AKK*DLX YSIN=DSIN (ADL) YCOS=DCOS (ADL) C C For the normalization of the current along the y axis C CVON=W*PI/2.DO C C Computation of lamda-integration limits between 0 and A C C CALL LIMIT C C Evaluation of the Green's function at different points C in the interval [0,A]. The Bessel function has been excluded C CALL GREEN C C Evaluation of the tail. contribution (from a to infinity) C CALL TAIL C CONST=-(1l.DO/CVON) *DSQ~RT (EER) /(480.DO* (PI**3) *YSIN*YSIN) WRITE (6, 10) 10 FORMAT(///1OX,'Contribution to admittance from the dielectric'!!!) KMAX=MOFFS (1) DO 2 K=1,KMAX YS (K) =YS (K) *CONST GSK=REAL (GS (K ) *CONST C WRITE (6,11) K,,YSc(K),GSK 11 FORMAT(1X,14,2X, 'YS=',E14.7,2XEl4.7,2X, * 'rGSK=',E1.4.7) YS (K) =(YS (K) +GSK) *01 C WRITE (6,12) KYSc(K) 12 FORMAT(5XI4,5X,fYS=',E14.7,2X,El4.7) 2 CONTINUE DO 3 I=1,NOFF WRITE(6,13) I 13 FORMAT (///5X,'fOFFSET #'1,1 4///) KMIN=I+l KMAX=MOFFS (I) DO 4 K=KMINKMAX YSlS2 (I,K)=YS1S2 (IK)*CONST GS1S2K=REAL(GS1S2 (I,K) )*CONST C WRITE(6,14) KYSlS2(I,K),GS1S2K 14 FORMAT(1XI4,2Xf,YSlS2=',(E14.7,2X,El4.7), * 2X,'GSlS2K=',El4.7) YS1S2(IK)=(YS1S2(I,fK)+GSlS2K)*CI C WRITE (6,15) K,YSlS2(I,K) 15 FORMAT(5XI4,5X,'YS1S2=',(El4.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 Page 2

Print file "yijjdielmutual. ftn " Page 3 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 C 1000 CONTINUE RETURN END C.................................................................... C................................................ I''..................... C This subroutine evaluates the limits of integration in C the interval [0,A]. C Specifically: C 1) It divides the interval [0,k0] to 10 equal C subsections and then apply fixed-point Gaussian C Quadrature C 2) It divides the interval [k0,k] into so many C subsections as the number of poles and in C such a way that each subsection includes one C pole only away from the ends of the subsection C 3) It divides the interval [k,A] into 20 equal C subsections and then apply fixed-point Gaussian C Quadrature C..................................................................... SUBROUTINE LIMIT IMPLICIT REAL*8 (A-H, O-Z) EXTERNAL WSPE, WTPE, WSPM C COMMON/DAT SUB/ER,H,T,DLX,AW,BW,A,TPI,TPI2,PI, E, 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/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,NK0,MA,NTM,NTE,NKOK,IFIRST C C --- —-------------------------------------------— + C Step 1: Evaluation of vector CN I C it gives the end points of the I C intervals considered in (0,kO) I C -----------------------------------------------— + DELTA=AKO/FLOAT(NKO) CN(1)=0.DO DO 1 I=1,NKO CN(I+1) =DELTA*FLOAT(I) 1 CONTINUE C ------------------------------------------------— + C Step 2: Evaluation of vector BM I C it gives the end points of the I C intervals considered in (k,A) I C --- -------------------------------------------------- DELTA=(A/DSQRT(EER)-AK)/FLOAT(MA) BM(1)=AK DO 2 I=1,MA BM (I+1) =DELTA*FLOAT (I) +AK 2 CONTINUE C -------------------------------------------------— + C Step 3: Evaluation of the vectors AM,DM I C "iAM" gives the end points around I

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

Print file "yijdielmutual. ftn" SUBROUTINE GREEN IMPLICIT REAL*8 (A-H,O-Z) COMPLEX YS,YS1S2,CI C COMMON/MATDIEL/YS(200),YS1S2(7,200),NOFFS(7) C COMMON/MAT/PLI,AI, TI,V (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),SERA(5), *DARG(7,10,4),S (10,2),WREAL,NSER,NMAX(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/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), *BPOINT(10),BCOAL(10),MPOINT,NPOINT,NKO,MA,NTM,NTE,NKOK,IFIRST C COMMON/COEF/RX, XX, RZ, XZ, FRX, FRZ, FIX, F1Z C COMMON/IOFF/INSS(7,7),NSSL(7,7) C C -----------------------------------------------— + C Evaluation of the coefficients for the C FF's functions C -----------------------------------------------— + F1X=1.DO F1Z=2.DO*(1.DO-ER)/((1.DO+ER)*(1.DO+E2)*(1.DO+0.5D0*E1)) IF ((ER-1.D0).LT.0.005) F1Z=0.DO C CALL ARIS C DO 1 I=1,NPOINT INCON=I IY=I AI=COAL(I) TI=POINT(I) C C evaluation of intervals 1 and 2 C IAD=1 DO 2 N=1,NKO AUP=CN(N+1) ALOW=CN(N) CALL FUNCT(IAD,AUP,ALOW,N, INCON) 2 CONTINUE C C evaluation of intervals 3 and 4 C 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(IAD,AUP,ALOW,N,INCON) Page 5

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 C evaluation of the interval 7 C 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 C C evaluation of the intervals 8,10 C IAD=8 IFD=0 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 C................................................................... C Functions: GXXM,GZXM,HZXE C C These functions evaluate the residues from the different poles FUNCTION GXXM(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* (-H+T) SXN=RM*DCOS (RMT) -ER*RM0*DSIN (RMT) SXD=(ER+RMOH) * (RM/RMO) *DCOS (RMH) + (1.DO+ER*RMOH) *DSIN (RMH) GXXM=SXN/SXD Page 6

Print file "yijdielmutual.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 C C C................................................................... C FUNCTION HZXE(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 RMT=RM*T RMOH=RMO*H CSH=DCOS (RMH) CST=DCOS(RMT) SNH=DSIN(RMH) SXN=RM*CST SXD= (ER*RMO*CSH-RM*SNH) *(1.DO+RMOH) * (SNH/RMO-CSH/RM) HZXE=SXN/SXD RETURN END C....................................................................... C 1) This subroutine evaluates the integrand of the Green's C function at different points (subroutine Grei). C 2) It evaluates the space integrals comming from the C application of moments' method (subroutine adonis) C 3) Multiply these two valueswith appropriate weighting C coefficients and it adds them up SUBROUTINE FUNCIAD,AUP,ALOW,N,INCON)................................................................. SUBROUTINE FUNCT(IADAUPALOWN,INCON)

Print file?fyjj diel mutual. ftn" Page 8 IMPLICIT REAL*8 (A-HO-Z) REAL*4 S1,S2 COMPLEX YSYS1S2,CI C COMMON/MATDIEL/YS(200),YSlS2(7,200),NOFFS(7) C COMMON/MAT/PLIIAI,.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),AXSERS(5), *SERA(5),DARG(7,10,4),S(10,2),WREAL,NSER,NMAX(7) C COMMON/DATSUB/ERHTDLXAWBWATPITPI2,PIElE2,EERAKO,AK, *AKK, FA, OFFS~ET (7), OFFLIM, ERROR, NOFF C COMMON/SLOTS/YOFF(30),NXOFF(30)rWS(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), *BPOINT (10),BCOAL(10),MPOINTNPOINTNK0,MANTMNTENK0KIFIRST C COMMON/COEF/RX XX, RZXZ, FRX, FRZ,FiX, FlZ C COMMON/IOFF/ INSS (7,f7),NSSL (7,r7) C CI= (0.0,1.0) NCON=0 X=AUP -ALOW Y=AUP+ALOW AKO2=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* ER1 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 (IAD.NE.3) GO To 2 ALI=0. 5D0* (TI*X+Y) XTM=POLTM (N) TMTM= (2.D0*XTM-Y) /X GCONX=AI/ (TI-TMTM) GCONZ=GCONX*ER1 FCONX=AI*X*0. 5D0 FCONZ=FCONX AIMA=0.DO IF (DABS(ERl).LT.0.005) THEN GCONX=0.DO GCONZ=. DO FCONX=0.DO FCONZ=0.DO END IF CALL GREI(ALIXTM,0.DOIAD,0.DO) GO TO 10 2 IF (IAD.NE.4) GO TO 3 ALI=POLTM (N) TrM=(2).D0 *'ALIT /xV I

Print file 1yij diel-mutual -ftn"F 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. 0 05) 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 5DO* (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 (ALl, O.DOXTE, IAD,TMTE) IF (DABS(ERl).LT.O.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*ERl/ (TI-TM) FCONX=O.DO FCONZ=O.DO AIMA=O.DO RZ=VZXE (N) IF (DABS(ERl).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. 5D0* (TI*X+Y) GCONX=AI*X*O. 5D0 GCONZ=GCONX* ERi IF (DABS(ERl).LT.O.005) GCONZ=O.DO FCONX=GCONX FCONZ=FCONX AIMA=O.DO CALL GREI (ALIO. DOO. DOIAD,O. 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=Vr1Tr1-XXM1f (N)t Page 9