Jpp 20.0.0-rc.2
the software that should make you happy
Loading...
Searching...
No Matches
KM3NET Namespace Reference

Name space for KM3NeT. More...

Functions

const JK40RatesgetK40Rates ()
 Get K40 rates.
 
double getAmbientPressure ()
 Get ambient pressure.
 
double getPhotocathodeArea ()
 Get photo-cathode area of KM3NeT PMT.
 
double getAbsorptionLength (const double lambda)
 Get absorption length.
 
double getScatteringLength (const double lambda)
 Get scattering length.
 
double getScatteringProbability (const double x)
 Function to describe light scattering in water.
 
double getAngularAcceptance (const double x)
 Get angular acceptance of KM3NeT PMT.
 
double getQE (const double lambda)
 Get quantum efficiency of KM3NeT PMT.
 
double getPhotocathodeArea2D (const double x, const double lambda)
 Get effective photo-cathode area of PMT.
 
void setClock ()
 Set clock.
 

Detailed Description

Name space for KM3NeT.

Function Documentation

◆ getK40Rates()

const JK40Rates & KM3NET::getK40Rates ( )
inline

Get K40 rates.

This method returns an object with default values.
The singles and multiples rates are based on Analysis e-log entry 575.
A dark count of 700 Hz has been included in the singles rate.
See also KM3NeT internal note.

Returns
K40 rates [Hz]

Definition at line 38 of file KM3NeT.hh.

39 {
40 static const JK40Rates rates_Hz(5200, { 568.0, 49.10, 5.48, 0.48});
41
42 return rates_Hz;
43 }
Auxiliary class for K40 rates.
Definition JK40Rates.hh:41

◆ getAmbientPressure()

double KM3NET::getAmbientPressure ( )
inline

Get ambient pressure.

Returns
pressure [Atm]

Definition at line 51 of file KM3NeT.hh.

52 {
53 return 240.0; // ambient pressure [Atm]
54 }

◆ getPhotocathodeArea()

double KM3NET::getPhotocathodeArea ( )
inline

Get photo-cathode area of KM3NeT PMT.

Returns
photo-cathode area [m^2]

Definition at line 62 of file KM3NeT.hh.

63 {
64 using namespace JPP;
65
66 static const double R = 0.5*3.0*2.54; // photo-cathode radius [cm]
67
68 return PI * R*R * 1.0e-4; // photo-cathode area [m^2]
69 }
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).

◆ getAbsorptionLength()

double KM3NET::getAbsorptionLength ( const double lambda)
inline

Get absorption length.

Parameters
lambdawavelength of light [nm]
Returns
absorption length [m]

Definition at line 78 of file KM3NeT.hh.

79 {
80 static JPolint1Function1D_t f1;
81
82 if (f1.empty()) {
83
84 f1[290] = 0.0;
85 f1[310] = 11.9;
86 f1[330] = 16.4;
87 f1[350] = 20.6;
88 f1[375] = 29.5;
89 f1[412] = 48.5;
90 f1[440] = 67.5;
91 f1[475] = 59.0;
92 f1[488] = 55.1;
93 f1[510] = 26.1;
94 f1[532] = 19.9;
95 f1[555] = 14.7;
96 f1[650] = 2.8;
97 f1[676] = 2.3;
98 f1[715] = 1.0;
99 f1[720] = 0.0;
100
101 f1.compile();
102
103 f1.setExceptionHandler(new JPolint1Function1D_t::JDefaultResult(0.0));
104 }
105
106 return f1(lambda);
107 }
void setExceptionHandler(const JSupervisor &supervisor)
Set the supervisor for handling of exceptions.
Type definition of a 1st degree polynomial interpolation with result type double.

◆ getScatteringLength()

double KM3NET::getScatteringLength ( const double lambda)
inline

Get scattering length.

Use the Kopelevich model for spectral volume scattering functions.
The model separates the contributions by:

  • pure_sea: pure sea water;
  • small_par: 'small' particles (size < 1 micro meter);
  • large_par: 'large' particles (size > 1 micro meter). Values are taken from reference C.D. Mobley "Light and Water", ISBN 0-12-502750-8, pag. 119.
Parameters
lambdawavelength of light [nm]
Returns
scattering length [m]

Definition at line 124 of file KM3NeT.hh.

125 {
126 static const double Vs = 0.0075;
127 static const double Vl = 0.0075;
128 static const double bw = 0.0017;
129 static const double bs = 1.340;
130 static const double bl = 0.312;
131
132 const double x = 550.0/lambda;
133
134 const double pure_sea = bw * pow(x, 4.3);
135 const double small_par = bs * Vs * pow(x, 1.7);
136 const double large_par = bl * Vl * pow(x, 0.3);
137
138 return 1.0 / (pure_sea + small_par + large_par);
139 }

◆ getScatteringProbability()

double KM3NET::getScatteringProbability ( const double x)
inline

Function to describe light scattering in water.

Parameters
xcosine scattering angle
Returns
probability

Definition at line 148 of file KM3NeT.hh.

149 {
150 return JPHYSICS::p00075(x);
151 }
double p00075(const double x)
Model specific function to describe light scattering in water (p00075).

◆ getAngularAcceptance()

double KM3NET::getAngularAcceptance ( const double x)
inline

Get angular acceptance of KM3NeT PMT.

Parameters
xcosine of angle of incidence
Returns
probability

Definition at line 160 of file KM3NeT.hh.

161 {
162 static JGridPolint1Function1D_t f1;
163
164 if (f1.empty()) {
165
166 f1[-1.00] = 1.621;
167 f1[-0.95] = 1.346;
168 f1[-0.90] = 1.193;
169 f1[-0.85] = 1.073;
170 f1[-0.80] = 0.973;
171 f1[-0.75] = 0.877;
172 f1[-0.70] = 0.790;
173 f1[-0.65] = 0.711;
174 f1[-0.60] = 0.640;
175 f1[-0.55] = 0.575;
176 f1[-0.50] = 0.517;
177 f1[-0.45] = 0.450;
178 f1[-0.40] = 0.396;
179 f1[-0.35] = 0.341;
180 f1[-0.30] = 0.295;
181 f1[-0.25] = 0.249;
182 f1[-0.20] = 0.207;
183 f1[-0.15] = 0.166;
184 f1[-0.10] = 0.128;
185 f1[-0.05] = 0.095;
186 f1[0.00] = 0.065;
187 f1[0.05] = 0.038;
188 f1[0.10] = 0.017;
189 f1[0.15] = 0.006;
190 f1[0.20] = 0.003;
191 f1[0.25] = 0.002;
192 f1[0.30] = 0.001;
193 f1[0.35] = 0.001;
194 f1[0.40] = 0.001;
195
196 f1.compile();
197
198 f1.setExceptionHandler(new JGridPolint1Function1D_t::JDefaultResult(0.0));
199 }
200
201 return f1(x);
202 }
Type definition of a 1st degree polynomial interpolation based on a JGridCollection with result type ...

◆ getQE()

double KM3NET::getQE ( const double lambda)
inline

Get quantum efficiency of KM3NeT PMT.

Note that the QE includes absorption in glass and gel as well as the collection efficiency.

Parameters
lambdawavelength of photon [nm]
Returns
quantum efficiency

Definition at line 213 of file KM3NeT.hh.

214 {
215 static JGridPolint1Function1D_t f1;
216 static const double cola = 1.0; // collection efficiency
217
218 if (f1.empty()) {
219
220 f1[270] = 0.0;
221 f1[275] = 0.0;
222 f1[280] = 0.0;
223 f1[285] = 0.0;
224 f1[290] = 0.0;
225 f1[295] = 0.1;
226 f1[300] = 0.1;
227 f1[305] = 0.9;
228 f1[310] = 1.8;
229 f1[315] = 4.6;
230 f1[320] = 7.4;
231 f1[325] = 11.3;
232 f1[330] = 15.2;
233 f1[335] = 18.1;
234 f1[340] = 21.0;
235 f1[345] = 22.4;
236 f1[350] = 23.7;
237 f1[355] = 24.5;
238 f1[360] = 25.3;
239 f1[365] = 25.8;
240 f1[370] = 26.3;
241 f1[375] = 26.2;
242 f1[380] = 26.0;
243 f1[385] = 26.6;
244 f1[390] = 27.1;
245 f1[395] = 26.9;
246 f1[400] = 26.8;
247 f1[405] = 26.5;
248 f1[410] = 26.3;
249 f1[415] = 26.0;
250 f1[420] = 25.7;
251 f1[425] = 25.6;
252 f1[430] = 25.4;
253 f1[435] = 25.1;
254 f1[440] = 24.9;
255 f1[445] = 24.5;
256 f1[450] = 24.1;
257 f1[455] = 23.5;
258 f1[460] = 22.9;
259 f1[465] = 22.1;
260 f1[470] = 21.3;
261 f1[475] = 20.6;
262 f1[480] = 19.9;
263 f1[485] = 19.5;
264 f1[490] = 19.1;
265 f1[495] = 18.8;
266 f1[500] = 18.5;
267 f1[505] = 18.1;
268 f1[510] = 17.7;
269 f1[515] = 16.8;
270 f1[520] = 15.9;
271 f1[525] = 14.3;
272 f1[530] = 12.7;
273 f1[535] = 11.5;
274 f1[540] = 10.2;
275 f1[545] = 9.5;
276 f1[550] = 8.7;
277 f1[555] = 8.1;
278 f1[560] = 7.6;
279 f1[565] = 7.2;
280 f1[570] = 6.8;
281 f1[575] = 6.4;
282 f1[580] = 6.0;
283 f1[585] = 5.6;
284 f1[590] = 5.1;
285 f1[595] = 4.8;
286 f1[600] = 4.4;
287 f1[605] = 4.0;
288 f1[610] = 3.6;
289 f1[615] = 3.3;
290 f1[620] = 3.0;
291 f1[625] = 2.7;
292 f1[630] = 2.3;
293 f1[635] = 2.1;
294 f1[640] = 1.9;
295 f1[645] = 1.7;
296 f1[650] = 1.5;
297 f1[655] = 1.4;
298 f1[660] = 1.2;
299 f1[665] = 1.0;
300 f1[670] = 0.9;
301 f1[675] = 0.7;
302 f1[680] = 0.6;
303 f1[685] = 0.5;
304 f1[690] = 0.4;
305 f1[695] = 0.3;
306 f1[700] = 0.2;
307 f1[705] = 0.1;
308 f1[710] = 0.0;
309
310 f1.compile();
311
312 f1.setExceptionHandler(new JGridPolint1Function1D_t::JDefaultResult(0.0));
313 }
314
315 return f1(lambda) * 0.01 * cola;
316 }

◆ getPhotocathodeArea2D()

double KM3NET::getPhotocathodeArea2D ( const double x,
const double lambda )
inline

Get effective photo-cathode area of PMT.

Parameters
xcosine of angle of incidence
lambdawavelength of photon [nm]
Returns
photo-cathode area [m^2]

Definition at line 326 of file KM3NeT.hh.

327 {
328 return getPhotocathodeArea() * getQE(lambda) * getAngularAcceptance(x);
329 }
double getAngularAcceptance(const double x)
Angular acceptence of PMT.
Definition JDrawLED.cc:68

◆ setClock()

void KM3NET::setClock ( )
inline

Set clock.

Definition at line 314 of file JDAQClock.hh.

315 {
317 }
Auxiliary class to set DAQ system clock parameters.
Definition JDAQClock.hh:27