Jpp 20.0.0-rc.2
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 351 of file KM3NeT.hh.

352 {
353 static const JK40Rates rates_Hz(8529, { 1014.4, 103.77, 15.44, 1.44});
354
355 return rates_Hz;
356 }
Auxiliary class for K40 rates.
Definition JK40Rates.hh:41

◆ getAmbientPressure()

double KM3NET_HIGHQE::getAmbientPressure ( )
inline

Get ambient pressure.

Returns
pressure [Atm]

Definition at line 364 of file KM3NeT.hh.

365 {
366 return KM3NET::getAmbientPressure();
367 }

◆ getPhotocathodeArea()

double KM3NET_HIGHQE::getPhotocathodeArea ( )
inline

Get photo-cathode area of PMT.

Returns
photo-cathode area [m^2]

Definition at line 375 of file KM3NeT.hh.

376 {
377 return KM3NET::getPhotocathodeArea();
378 }

◆ getAbsorptionLength()

double KM3NET_HIGHQE::getAbsorptionLength ( const double lambda)
inline

Get absorption length.

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

Definition at line 387 of file KM3NeT.hh.

388 {
389 return KM3NET::getAbsorptionLength(lambda);
390 }

◆ getScatteringLength()

double KM3NET_HIGHQE::getScatteringLength ( const double lambda)
inline

Get scattering length.

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

Definition at line 399 of file KM3NeT.hh.

400 {
401 return KM3NET::getScatteringLength(lambda);
402 }

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

412 {
413 return KM3NET::getScatteringProbability(x);
414 }

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

424 {
425 return KM3NET::getAngularAcceptance(x);
426 }

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

438 {
439 static JGridPolint1Function1D_t f1;
440 static const double cola = 1.00; // collection efficiency
441
442 if (f1.empty()) {
443
444 f1[280] = 0.0;
445 f1[285] = 0.0;
446 f1[290] = 0.0;
447 f1[295] = 0.2;
448 f1[300] = 0.3;
449 f1[305] = 2.3;
450 f1[310] = 3.9;
451 f1[315] = 9.1;
452 f1[320] = 13.7;
453 f1[325] = 19.5;
454 f1[330] = 25.2;
455 f1[335] = 28.9;
456 f1[340] = 33.0;
457 f1[345] = 34.6;
458 f1[350] = 36.6;
459 f1[355] = 37.5;
460 f1[360] = 38.3;
461 f1[365] = 38.2;
462 f1[370] = 37.8;
463 f1[375] = 36.8;
464 f1[380] = 36.3;
465 f1[385] = 36.8;
466 f1[390] = 37.3;
467 f1[395] = 36.6;
468 f1[400] = 36.5;
469 f1[405] = 36.2;
470 f1[410] = 35.5;
471 f1[415] = 35.2;
472 f1[420] = 34.7;
473 f1[425] = 34.1;
474 f1[430] = 33.7;
475 f1[435] = 33.2;
476 f1[440] = 32.6;
477 f1[445] = 31.8;
478 f1[450] = 31.1;
479 f1[455] = 30.1;
480 f1[460] = 29.1;
481 f1[465] = 28.4;
482 f1[470] = 27.6;
483 f1[475] = 27.0;
484 f1[480] = 26.2;
485 f1[485] = 25.8;
486 f1[490] = 25.2;
487 f1[495] = 24.0;
488 f1[500] = 22.8;
489 f1[505] = 20.9;
490 f1[510] = 19.1;
491 f1[515] = 17.1;
492 f1[520] = 15.3;
493 f1[525] = 14.0;
494 f1[530] = 12.9;
495 f1[535] = 12.3;
496 f1[540] = 11.6;
497 f1[545] = 11.3;
498 f1[550] = 10.7;
499 f1[555] = 10.3;
500 f1[560] = 9.6;
501 f1[565] = 9.1;
502 f1[570] = 8.6;
503 f1[575] = 8.0;
504 f1[580] = 7.3;
505 f1[585] = 6.6;
506 f1[590] = 5.9;
507 f1[595] = 5.3;
508 f1[600] = 4.7;
509 f1[605] = 4.0;
510 f1[610] = 3.4;
511 f1[615] = 2.9;
512 f1[620] = 2.5;
513 f1[625] = 2.1;
514 f1[630] = 1.6;
515 f1[635] = 1.3;
516 f1[640] = 1.0;
517 f1[645] = 0.8;
518 f1[650] = 0.6;
519 f1[655] = 0.5;
520 f1[660] = 0.4;
521 f1[665] = 0.3;
522 f1[670] = 0.2;
523 f1[675] = 0.1;
524 f1[680] = 0.1;
525 f1[685] = 0.1;
526 f1[690] = 0.0;
527 f1[695] = 0.0;
528 f1[700] = 0.0;
529 f1[705] = 0.0;
530
531 f1.compile();
532
533 f1.setExceptionHandler(new JGridPolint1Function1D_t::JDefaultResult(0.0));
534 }
535
536 return f1(lambda) * 0.01 * cola;
537 }
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 547 of file KM3NeT.hh.

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