|
GammaLib 2.2.0.dev
|
Public Member Functions | |
| response_kernel (const GCOMD1Response &response_d1, const GCOMD2Response &response_d2, const double &etrue1, const double &etrue2, const double &phibar, const double &etmin, const double &etmax, const double &e1min, const double &e1max, const double &e2min, const double &e2max) | |
| double | eval (const double &energy1) |
| Computes product of D1 and D2 responses at energy E1 and phibar. | |
Public Member Functions inherited from GFunction | |
| GFunction (void) | |
| Void constructor. | |
| GFunction (const GFunction &function) | |
| Copy constructor. | |
| virtual | ~GFunction (void) |
| Destructor. | |
| GFunction & | operator= (const GFunction &function) |
| Assignment operator. | |
Protected Attributes | |
| const GCOMD1Response & | m_response_d1 |
| Reference to D1 module response. | |
| const GCOMD2Response & | m_response_d2 |
| Reference to D2 module response. | |
| double | m_etrue1 |
| True D1 energy (MeV) | |
| double | m_etrue2 |
| True D2 energy (MeV) | |
| double | m_cos_phibar |
| cos(phibar) | |
| double | m_sin_phibar |
| sin(phibar) | |
| double | m_etmin |
| Minimum total energy (MeV) | |
| double | m_etmax |
| Maximum total energy (MeV) | |
| double | m_e1min |
| Minimum D1 energy (MeV) | |
| double | m_e1max |
| Maximum D1 energy (MeV) | |
| double | m_e2min |
| Minimum D2 energy (MeV) | |
| double | m_e2max |
| Maximum D2 energy (MeV) | |
Additional Inherited Members | |
Protected Member Functions inherited from GFunction | |
| void | init_members (void) |
| Initialise class members. | |
| void | copy_members (const GFunction &function) |
| Copy class members. | |
| void | free_members (void) |
| Delete class members. | |
Definition at line 99 of file GCOMIaq.hpp.
|
inline |
Definition at line 101 of file GCOMIaq.hpp.
|
virtual |
Computes product of D1 and D2 responses at energy E1 and phibar.
| [in] | energy1 | D1 energy deposit (MeV). |
The method computes
\[ R(E_1,E_2|\hat{E_1},\hat{E_2}) = R_1(E_1|\hat{E_1}) \times R_2(E_2|\hat{E_2}) \times J \]
where \(R_1(E_1|\hat{E_1})\) is the D1 module response function, \(R_2(E_2|\hat{E_2})\) is the D2 module response function, \(E_1\) and \(E_2\) are the measured D1 and D2 energy deposits, respectively, \(\hat{E_1}\) and \(\hat{E_2}\) are the true D1 and D2 energy deposits, respectively, and \(J\) is the Jacobian.
The measured D2 energy deposit is computed using
\[ E_2 = \frac{1}{2} \times \left( \sqrt{\frac{4 m_e c^2 E_1}{1 - \cos \bar{\varphi}} + E_1^2} - E_1 \right) \]
where \(m_e\,c^2\) the electron rest mass, and \(\bar{\varphi}\) the Compton scatter angle.
The Jacobian is given by
\[ J = \frac{m_e c^2 \sqrt{E_1} \sin \bar{\varphi}} {(1 - \cos \bar{\varphi})^2 \sqrt{\frac{4 m_e c^2}{1 - \cos \bar{\varphi}} + E_1}} \]
The code implementation is based on the COMPASS RESPSIT2 function FUNC.F (release 4.0, 21-Oct-91).
Implements GFunction.
Definition at line 1605 of file GCOMIaq.cpp.
References m_cos_phibar, m_e1max, m_e1min, m_e2max, m_e2min, m_etmax, m_etmin, m_etrue1, m_etrue2, m_response_d1, m_response_d2, m_sin_phibar, and gammalib::mec2.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |