1 | subroutine rtmfc(betac,fc) |
---|
2 | c return the 14 fourier coefficients for the side-coupled cavity |
---|
3 | c with beta=betac. the coefficients were determined from superfish |
---|
4 | c runs at 2380 mhz. |
---|
5 | c----------------------------------------------------------------------- |
---|
6 | dimension fc(14),beta(10),fct(10,14),wb(10,14),a(10),b(10),c(10), |
---|
7 | 1 iop(2),tab(3) |
---|
8 | data nte/10/ |
---|
9 | data iflagc/0/ |
---|
10 | c----------------------------------------------------------------------- |
---|
11 | c fourier coefficients for side-coupled cavities |
---|
12 | data beta(1),(fct(1,i),i=1,14) |
---|
13 | 1 / .55, 1.8162297, .8202260, .1140768, -.0584496, |
---|
14 | 2 -.0336300, -.0049842, .0021335, .0012629, .0001983, |
---|
15 | 3 -.0000658, -.0000385, -.0000048, .0000021, .0000007/ |
---|
16 | data beta(2),(fct(2,i),i=1,14) |
---|
17 | 1 / .60, 1.8124060, .7848132, .0516917, -.0955583, |
---|
18 | 2 -.0379814, .0010221, .0055377, .0015881, -.0002348, |
---|
19 | 3 -.0002880, -.0000617, .0000150, .0000116, .0000019/ |
---|
20 | data beta(3),(fct(3,i),i=1,14) |
---|
21 | 1 / .65, 1.8022308, .7233542, -.0174431, -.1191904, |
---|
22 | 2 -.0328106, .0065496, .0058709, .0007324, -.0004280, |
---|
23 | 3 -.0001649, .0000036, .0000115, .0000009, -.0000006/ |
---|
24 | data beta(4),(fct(4,i),i=1,14) |
---|
25 | 1 / .70, 1.7905805, .6480495, -.1110423, -.1537068, |
---|
26 | 2 -.0203962, .0213467, .0089263, -.0013231, -.0017684, |
---|
27 | 3 -.0002145, .0002390, .0000967, -.0000121, -.0000180/ |
---|
28 | data beta(5),(fct(5,i),i=1,14) |
---|
29 | 1 / .75, 1.7714580, .5402790, -.2114199, -.1572789, |
---|
30 | 2 .0175976, .0346638, .0010967, -.0071227, -.0012653, |
---|
31 | 3 .0012362, .0004182, -.0001846, -.0001021, .0000184/ |
---|
32 | data beta(6),(fct(6,i),i=1,14) |
---|
33 | 1 / .80, 1.7587262, .4692263, -.2725046, -.1512699, |
---|
34 | 2 .0417247, .0363340, -.0061000, -.0079966, .0010337, |
---|
35 | 3 .0017934, -.0001993, -.0004341, .0000382, .0001169/ |
---|
36 | data beta(7),(fct(7,i),i=1,14) |
---|
37 | 1 / .85, 1.7418385, .3826707, -.3312878, -.1309669, |
---|
38 | 2 .0694703, .0355463, -.0137761, -.0090094, .0025033, |
---|
39 | 3 .0021663, -.0003746, -.0004995, .0000317, .0001075/ |
---|
40 | data beta(8),(fct(8,i),i=1,14) |
---|
41 | 1 / .90, 1.7210430, .2811841, -.3830460, -.0831754, |
---|
42 | 2 .1023592, .0178458, -.0266090, -.0024255, .0069314, |
---|
43 | 3 -.0001750, -.0018239, .0002990, .0004796, -.0001707/ |
---|
44 | data beta(9),(fct(9,i),i=1,14) |
---|
45 | 1 / .95, 1.7047580, .2064316, -.4116058, -.0459696, |
---|
46 | 2 .1180010, .0047165, -.0315829, .0012915, .0079611, |
---|
47 | 3 -.0009923, -.0018505, .0003863, .0004041, -.0001152/ |
---|
48 | data beta(10),(fct(10,i),i=1,14) |
---|
49 | 1 / 1.00, 1.6841249, .1129266, -.4366304, .0183279, |
---|
50 | 2 .1320116, -.0293359, -.0344015, .0159707, .0070763, |
---|
51 | 3 -.0062417, -.0007853, .0019354, -.0001402, -.0004452/ |
---|
52 | if(iflagc.ne.0)go to 20 |
---|
53 | c fit splines to fct vs beta for each term |
---|
54 | do 10 i=1,14 |
---|
55 | iop(1)=1 |
---|
56 | iop(2)=1 |
---|
57 | wb(1,i)=0. |
---|
58 | wb(nte,i)=0. |
---|
59 | call spl1d1(nte,beta,fct(1,i),wb(1,i),iop,1,a,b,c) |
---|
60 | 10 continue |
---|
61 | 20 pi=4.*atan(1.) |
---|
62 | do 30 i=1,14 |
---|
63 | call spl1d2 (nte,beta,fct(1,i),wb(1,i),1,betac,tab) |
---|
64 | 30 fc(i)=tab(1) |
---|
65 | c normalize coefficients |
---|
66 | sum=0. |
---|
67 | t=1. |
---|
68 | sgn=1. |
---|
69 | do 40 l=1,14 |
---|
70 | sum=sum+fc(l)*sgn/t |
---|
71 | t=t+2. |
---|
72 | 40 sgn=-sgn |
---|
73 | fac=2.*sum/pi |
---|
74 | do 50 l=1,14 |
---|
75 | 50 fc(l)=fc(l)/fac |
---|
76 | return |
---|
77 | end |
---|
78 | c++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++* |
---|