Jpp 20.0.0-195-g190c9e876
the software that should make you happy
Loading...
Searching...
No Matches
KM3NET_HIGHQE Namespace Reference

Name space for KM3NeT with high-QE PMTs. More...

Functions

const JK40RatesgetK40Rates ()
 Get K40 rates.
 
double getAmbientPressure ()
 Get ambient pressure.
 
double getPhotocathodeArea ()
 Get photo-cathode area of 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 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.
 

Detailed Description

Name space for KM3NeT with high-QE PMTs.

Function Documentation

◆ getK40Rates()

const JK40Rates & KM3NET_HIGHQE::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.
They have been scaled with the outputs of JRateK40.cc and JMultiplicityK40.cc for the standard and high-QE PMT, respectively using script JPrintK40Rates.sh (see GIT issue 351).

Returns
K40 rates [Hz]

Definition at line 300 of file KM3NeT.hh.

301 {
302 static const JK40Rates rates_Hz(8529, { 1014.4, 103.77, 15.44, 1.44});
303
304 return rates_Hz;
305 }
Auxiliary class for K40 rates.
Definition JK40Rates.hh:41

◆ getAmbientPressure()

double KM3NET_HIGHQE::getAmbientPressure ( )
inline

Get ambient pressure.

Returns
pressure [Atm]

Definition at line 313 of file KM3NeT.hh.

314 {
315 return KM3NET::getAmbientPressure();
316 }

◆ getPhotocathodeArea()

double KM3NET_HIGHQE::getPhotocathodeArea ( )
inline

Get photo-cathode area of PMT.

Returns
photo-cathode area [m^2]

Definition at line 324 of file KM3NeT.hh.

325 {
326 return KM3NET::getPhotocathodeArea();
327 }

◆ getAbsorptionLength()

double KM3NET_HIGHQE::getAbsorptionLength ( const double lambda)
inline

Get absorption length.

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

Definition at line 336 of file KM3NeT.hh.

337 {
338 return KM3NET::getAbsorptionLength(lambda);
339 }

◆ getScatteringLength()

double KM3NET_HIGHQE::getScatteringLength ( const double lambda)
inline

Get scattering length.

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

Definition at line 348 of file KM3NeT.hh.

349 {
350 return KM3NET::getScatteringLength(lambda);
351 }

◆ getScatteringProbability()

double KM3NET_HIGHQE::getScatteringProbability ( const double x)
inline

Function to describe light scattering in water.

Parameters
xcosine scattering angle
Returns
probability

Definition at line 360 of file KM3NeT.hh.

361 {
362 return KM3NET::getScatteringProbability(x);
363 }

◆ getAngularAcceptance()

double KM3NET_HIGHQE::getAngularAcceptance ( const double x)
inline

Get angular acceptance of PMT.

Parameters
xcosine of angle of incidence
Returns
probability

Definition at line 372 of file KM3NeT.hh.

373 {
374 return KM3NET::getAngularAcceptance(x);
375 }

◆ getQE()

double KM3NET_HIGHQE::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 386 of file KM3NeT.hh.

387 {
388 static JGridPolint1Function1D_t f1;
389 static const double cola = 1.00; // collection efficiency
390
391 if (f1.empty()) {
392
393 f1[280] = 0.0;
394 f1[285] = 0.0;
395 f1[290] = 0.0;
396 f1[295] = 0.2;
397 f1[300] = 0.3;
398 f1[305] = 2.3;
399 f1[310] = 3.9;
400 f1[315] = 9.1;
401 f1[320] = 13.7;
402 f1[325] = 19.5;
403 f1[330] = 25.2;
404 f1[335] = 28.9;
405 f1[340] = 33.0;
406 f1[345] = 34.6;
407 f1[350] = 36.6;
408 f1[355] = 37.5;
409 f1[360] = 38.3;
410 f1[365] = 38.2;
411 f1[370] = 37.8;
412 f1[375] = 36.8;
413 f1[380] = 36.3;
414 f1[385] = 36.8;
415 f1[390] = 37.3;
416 f1[395] = 36.6;
417 f1[400] = 36.5;
418 f1[405] = 36.2;
419 f1[410] = 35.5;
420 f1[415] = 35.2;
421 f1[420] = 34.7;
422 f1[425] = 34.1;
423 f1[430] = 33.7;
424 f1[435] = 33.2;
425 f1[440] = 32.6;
426 f1[445] = 31.8;
427 f1[450] = 31.1;
428 f1[455] = 30.1;
429 f1[460] = 29.1;
430 f1[465] = 28.4;
431 f1[470] = 27.6;
432 f1[475] = 27.0;
433 f1[480] = 26.2;
434 f1[485] = 25.8;
435 f1[490] = 25.2;
436 f1[495] = 24.0;
437 f1[500] = 22.8;
438 f1[505] = 20.9;
439 f1[510] = 19.1;
440 f1[515] = 17.1;
441 f1[520] = 15.3;
442 f1[525] = 14.0;
443 f1[530] = 12.9;
444 f1[535] = 12.3;
445 f1[540] = 11.6;
446 f1[545] = 11.3;
447 f1[550] = 10.7;
448 f1[555] = 10.3;
449 f1[560] = 9.6;
450 f1[565] = 9.1;
451 f1[570] = 8.6;
452 f1[575] = 8.0;
453 f1[580] = 7.3;
454 f1[585] = 6.6;
455 f1[590] = 5.9;
456 f1[595] = 5.3;
457 f1[600] = 4.7;
458 f1[605] = 4.0;
459 f1[610] = 3.4;
460 f1[615] = 2.9;
461 f1[620] = 2.5;
462 f1[625] = 2.1;
463 f1[630] = 1.6;
464 f1[635] = 1.3;
465 f1[640] = 1.0;
466 f1[645] = 0.8;
467 f1[650] = 0.6;
468 f1[655] = 0.5;
469 f1[660] = 0.4;
470 f1[665] = 0.3;
471 f1[670] = 0.2;
472 f1[675] = 0.1;
473 f1[680] = 0.1;
474 f1[685] = 0.1;
475 f1[690] = 0.0;
476 f1[695] = 0.0;
477 f1[700] = 0.0;
478 f1[705] = 0.0;
479
480 f1.compile();
481
482 f1.setExceptionHandler(new JGridPolint1Function1D_t::JDefaultResult(0.0));
483 }
484
485 return f1(lambda) * 0.01 * cola;
486 }
void setExceptionHandler(const JSupervisor &supervisor)
Set the supervisor for handling of exceptions.
Type definition of a 1st degree polynomial interpolation based on a JGridCollection with result type ...

◆ getPhotocathodeArea2D()

double KM3NET_HIGHQE::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 496 of file KM3NeT.hh.

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