[8faffcd] | 1 | real ConvLens_kernel(real len, real rad, real endRad, real x, real tt, real theta) |
---|
| 2 | { |
---|
| 3 | real be = 0; |
---|
| 4 | real hDist = -1.0*sqrt(fabs(endRad*endRad-rad*rad)); |
---|
| 5 | real arg1 = x*cos(theta)*(endRad*tt+hDist+len/2.0); |
---|
| 6 | real arg2 = x*endRad*sin(theta)*sqrt(1.0-tt*tt); |
---|
| 7 | |
---|
| 8 | if(arg2 == 0) {be = 0.5;} |
---|
| 9 | else { |
---|
| 10 | be = NR_BessJ1(arg2)/arg2; |
---|
| 11 | } |
---|
| 12 | real val = cos(arg1)*(1.0-tt*tt)*be; |
---|
| 13 | |
---|
| 14 | return(val); |
---|
| 15 | } |
---|
[2de9a5e] | 16 | /* |
---|
| 17 | real Gauss76Z[76]={ |
---|
[8faffcd] | 18 | .999505948362153*(-1.0), //0 |
---|
| 19 | .997397786355355*(-1.0), |
---|
| 20 | .993608772723527*(-1.0), |
---|
| 21 | .988144453359837*(-1.0), |
---|
| 22 | .981013938975656*(-1.0), |
---|
| 23 | .972229228520377*(-1.0), |
---|
| 24 | .961805126758768*(-1.0), |
---|
| 25 | .949759207710896*(-1.0), |
---|
| 26 | .936111781934811*(-1.0), |
---|
| 27 | .92088586125215*(-1.0), |
---|
| 28 | .904107119545567*(-1.0), //10 |
---|
| 29 | .885803849292083*(-1.0), |
---|
| 30 | .866006913771982*(-1.0), |
---|
| 31 | .844749694983342*(-1.0), |
---|
| 32 | .822068037328975*(-1.0), |
---|
| 33 | .7980001871612*(-1.0), |
---|
| 34 | .77258672828181*(-1.0), |
---|
| 35 | .74587051350361*(-1.0), |
---|
| 36 | .717896592387704*(-1.0), |
---|
| 37 | .688712135277641*(-1.0), |
---|
| 38 | .658366353758143*(-1.0), //20 |
---|
| 39 | .626910417672267*(-1.0), |
---|
| 40 | .594397368836793*(-1.0), |
---|
| 41 | .560882031601237*(-1.0), |
---|
| 42 | .526420920401243*(-1.0), |
---|
| 43 | .491072144462194*(-1.0), |
---|
| 44 | .454895309813726*(-1.0), |
---|
| 45 | .417951418780327*(-1.0), |
---|
| 46 | .380302767117504*(-1.0), |
---|
| 47 | .342012838966962*(-1.0), |
---|
| 48 | .303146199807908*(-1.0), //30 |
---|
| 49 | .263768387584994*(-1.0), |
---|
| 50 | .223945802196474*(-1.0), |
---|
| 51 | .183745593528914*(-1.0), |
---|
| 52 | .143235548227268*(-1.0), |
---|
| 53 | .102483975391227*(-1.0), |
---|
| 54 | .0615595913906112*(-1.0), |
---|
| 55 | .0205314039939986*(-1.0), |
---|
| 56 | -.0205314039939986*(-1.0), |
---|
| 57 | -.0615595913906112*(-1.0), |
---|
| 58 | -.102483975391227*(-1.0), //40 |
---|
| 59 | -.143235548227268*(-1.0), |
---|
| 60 | -.183745593528914*(-1.0), |
---|
| 61 | -.223945802196474*(-1.0), |
---|
| 62 | -.263768387584994*(-1.0), |
---|
| 63 | -.303146199807908*(-1.0), |
---|
| 64 | -.342012838966962*(-1.0), |
---|
| 65 | -.380302767117504*(-1.0), |
---|
| 66 | -.417951418780327*(-1.0), |
---|
| 67 | -.454895309813726*(-1.0), |
---|
| 68 | -.491072144462194*(-1.0), //50 |
---|
| 69 | -.526420920401243*(-1.0), |
---|
| 70 | -.560882031601237*(-1.0), |
---|
| 71 | -.594397368836793*(-1.0), |
---|
| 72 | -.626910417672267*(-1.0), |
---|
| 73 | -.658366353758143*(-1.0), |
---|
| 74 | -.688712135277641*(-1.0), |
---|
| 75 | -.717896592387704*(-1.0), |
---|
| 76 | -.74587051350361*(-1.0), |
---|
| 77 | -.77258672828181*(-1.0), |
---|
| 78 | -.7980001871612*(-1.0), //60 |
---|
| 79 | -.822068037328975*(-1.0), |
---|
| 80 | -.844749694983342*(-1.0), |
---|
| 81 | -.866006913771982*(-1.0), |
---|
| 82 | -.885803849292083*(-1.0), |
---|
| 83 | -.904107119545567*(-1.0), |
---|
| 84 | -.92088586125215*(-1.0), |
---|
| 85 | -.936111781934811*(-1.0), |
---|
| 86 | -.949759207710896*(-1.0), |
---|
| 87 | -.961805126758768*(-1.0), |
---|
| 88 | -.972229228520377*(-1.0), //70 |
---|
| 89 | -.981013938975656*(-1.0), |
---|
| 90 | -.988144453359837*(-1.0), |
---|
| 91 | -.993608772723527*(-1.0), |
---|
| 92 | -.997397786355355*(-1.0), |
---|
| 93 | -.999505948362153*(-1.0) //75 |
---|
| 94 | }; |
---|
[2de9a5e] | 95 | real Gauss76Wt[76]={ |
---|
[8faffcd] | 96 | .00126779163408536, //0 |
---|
| 97 | .00294910295364247, |
---|
| 98 | .00462793522803742, |
---|
| 99 | .00629918049732845, |
---|
| 100 | .00795984747723973, |
---|
| 101 | .00960710541471375, |
---|
| 102 | .0112381685696677, |
---|
| 103 | .0128502838475101, |
---|
| 104 | .0144407317482767, |
---|
| 105 | .0160068299122486, |
---|
| 106 | .0175459372914742, //10 |
---|
| 107 | .0190554584671906, |
---|
| 108 | .020532847967908, |
---|
| 109 | .0219756145344162, |
---|
| 110 | .0233813253070112, |
---|
| 111 | .0247476099206597, |
---|
| 112 | .026072164497986, |
---|
| 113 | .0273527555318275, |
---|
| 114 | .028587223650054, |
---|
| 115 | .029773487255905, |
---|
| 116 | .0309095460374916, //20 |
---|
| 117 | .0319934843404216, |
---|
| 118 | .0330234743977917, |
---|
| 119 | .0339977794120564, |
---|
| 120 | .0349147564835508, |
---|
| 121 | .0357728593807139, |
---|
| 122 | .0365706411473296, |
---|
| 123 | .0373067565423816, |
---|
| 124 | .0379799643084053, |
---|
| 125 | .0385891292645067, |
---|
| 126 | .0391332242205184, //30 |
---|
| 127 | .0396113317090621, |
---|
| 128 | .0400226455325968, |
---|
| 129 | .040366472122844, |
---|
| 130 | .0406422317102947, |
---|
| 131 | .0408494593018285, |
---|
| 132 | .040987805464794, |
---|
| 133 | .0410570369162294, |
---|
| 134 | .0410570369162294, |
---|
| 135 | .040987805464794, |
---|
| 136 | .0408494593018285, //40 |
---|
| 137 | .0406422317102947, |
---|
| 138 | .040366472122844, |
---|
| 139 | .0400226455325968, |
---|
| 140 | .0396113317090621, |
---|
| 141 | .0391332242205184, |
---|
| 142 | .0385891292645067, |
---|
| 143 | .0379799643084053, |
---|
| 144 | .0373067565423816, |
---|
| 145 | .0365706411473296, |
---|
| 146 | .0357728593807139, //50 |
---|
| 147 | .0349147564835508, |
---|
| 148 | .0339977794120564, |
---|
| 149 | .0330234743977917, |
---|
| 150 | .0319934843404216, |
---|
| 151 | .0309095460374916, |
---|
| 152 | .029773487255905, |
---|
| 153 | .028587223650054, |
---|
| 154 | .0273527555318275, |
---|
| 155 | .026072164497986, |
---|
| 156 | .0247476099206597, //60 |
---|
| 157 | .0233813253070112, |
---|
| 158 | .0219756145344162, |
---|
| 159 | .020532847967908, |
---|
| 160 | .0190554584671906, |
---|
| 161 | .0175459372914742, |
---|
| 162 | .0160068299122486, |
---|
| 163 | .0144407317482767, |
---|
| 164 | .0128502838475101, |
---|
| 165 | .0112381685696677, |
---|
| 166 | .00960710541471375, //70 |
---|
| 167 | .00795984747723973, |
---|
| 168 | .00629918049732845, |
---|
| 169 | .00462793522803742, |
---|
| 170 | .00294910295364247, |
---|
| 171 | .00126779163408536 //75 (indexed from 0) |
---|
| 172 | }; |
---|
[2de9a5e] | 173 | */ |
---|