Jpp  master_rocky-37-gf0c5bc59d
the software that should make you happy
Functions
KM3NET Namespace Reference

Name space for KM3NeT. More...

Functions

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

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 36 of file KM3NeT.hh.

37  {
38  static const JK40Rates rates_Hz(5200, { 568.0, 49.10, 5.48, 0.48});
39 
40  return rates_Hz;
41  }

◆ getAmbientPressure()

double KM3NET::getAmbientPressure ( )
inline

Get ambient pressure.

Returns
pressure [Atm]

Definition at line 49 of file KM3NeT.hh.

50  {
51  return 240.0; // ambient pressure [Atm]
52  }

◆ getPhotocathodeArea()

double KM3NET::getPhotocathodeArea ( )
inline

Get photo-cathode area of PMT.

Returns
photo-cathode area [m^2]

Definition at line 60 of file KM3NeT.hh.

61  {
62  return 45.4e-4; // photo-cathode area [m^2]
63  }

◆ getAbsorptionLength()

double KM3NET::getAbsorptionLength ( const double  lambda)
inline

Get absorption length.

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

Definition at line 72 of file KM3NeT.hh.

73  {
74  static JPolint1Function1D_t f1;
75 
76  if (f1.empty()) {
77 
78  f1[290] = 0.0;
79  f1[310] = 11.9;
80  f1[330] = 16.4;
81  f1[350] = 20.6;
82  f1[375] = 29.5;
83  f1[412] = 48.5;
84  f1[440] = 67.5;
85  f1[475] = 59.0;
86  f1[488] = 55.1;
87  f1[510] = 26.1;
88  f1[532] = 19.9;
89  f1[555] = 14.7;
90  f1[650] = 2.8;
91  f1[676] = 2.3;
92  f1[715] = 1.0;
93  f1[720] = 0.0;
94 
95  f1.compile();
96 
97  f1.setExceptionHandler(new JPolint1Function1D_t::JDefaultResult(0.0));
98  }
99 
100  return f1(lambda);
101  }
const JPolynome f1(1.0, 2.0, 3.0)
Function.

◆ 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 118 of file KM3NeT.hh.

119  {
120  static const double Vs = 0.0075;
121  static const double Vl = 0.0075;
122  static const double bw = 0.0017;
123  static const double bs = 1.340;
124  static const double bl = 0.312;
125 
126  const double x = 550.0/lambda;
127 
128  const double pure_sea = bw * pow(x, 4.3);
129  const double small_par = bs * Vs * pow(x, 1.7);
130  const double large_par = bl * Vl * pow(x, 0.3);
131 
132  return 1.0 / (pure_sea + small_par + large_par);
133  }
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:97

◆ getScatteringProbability()

double KM3NET::getScatteringProbability ( const double  x)
inline

Function to describe light scattering in water.

Parameters
xcosine scattering angle
Returns
probability

Definition at line 142 of file KM3NeT.hh.

143  {
144  return JPHYSICS::p00075(x);
145  }
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 PMT.

Parameters
xcosine of angle of incidence
Returns
probability

Definition at line 154 of file KM3NeT.hh.

155  {
156  static JGridPolint1Function1D_t f1;
157 
158  if (f1.empty()) {
159 
160  f1[-1.00] = 1.621;
161  f1[-0.95] = 1.346;
162  f1[-0.90] = 1.193;
163  f1[-0.85] = 1.073;
164  f1[-0.80] = 0.973;
165  f1[-0.75] = 0.877;
166  f1[-0.70] = 0.790;
167  f1[-0.65] = 0.711;
168  f1[-0.60] = 0.640;
169  f1[-0.55] = 0.575;
170  f1[-0.50] = 0.517;
171  f1[-0.45] = 0.450;
172  f1[-0.40] = 0.396;
173  f1[-0.35] = 0.341;
174  f1[-0.30] = 0.295;
175  f1[-0.25] = 0.249;
176  f1[-0.20] = 0.207;
177  f1[-0.15] = 0.166;
178  f1[-0.10] = 0.128;
179  f1[-0.05] = 0.095;
180  f1[0.00] = 0.065;
181  f1[0.05] = 0.038;
182  f1[0.10] = 0.017;
183  f1[0.15] = 0.006;
184  f1[0.20] = 0.003;
185  f1[0.25] = 0.002;
186  f1[0.30] = 0.001;
187  f1[0.35] = 0.001;
188  f1[0.40] = 0.001;
189 
190  f1.compile();
191 
192  f1.setExceptionHandler(new JGridPolint1Function1D_t::JDefaultResult(0.0));
193  }
194 
195  return f1(x);
196  }

◆ getQE()

double KM3NET::getQE ( const double  lambda)
inline

Get quantum efficiency of KM3NeT PMT.

Note that the QE includes absorption in glass and gel.

Parameters
lambdawavelength of photon [nm]
Returns
quantum efficiency

Definition at line 207 of file KM3NeT.hh.

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

◆ 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 320 of file KM3NeT.hh.

321  {
322  return getPhotocathodeArea() * getQE(lambda) * getAngularAcceptance(x);
323  }
double getAngularAcceptance(const double x)
Angular acceptence of PMT.
Definition: JDrawLED.cc:68
double getPhotocathodeArea()
Get photo-cathode area of PMT.
Definition: KM3NeT.hh:369
double getQE(const double lambda)
Get quantum efficiency of KM3NeT PMT.
Definition: KM3NeT.hh:431

◆ 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