DopplerBroadening
DopplerBroadening Class Reference

Produces a number of TF1 objects describing the change in energy resolution due to energy shift, opening angle and change in beta value. More...

#include <DopplerBroadening.hpp>

Collaboration diagram for DopplerBroadening:

Public Member Functions

 DopplerBroadening (const float &energyMeV, const float &beta, const float &dThetaDeg=0, const float &resolutionConst=1, const float &dBeta=0)
 Default Constructor. More...
 
TF1 * GetEnergyBroadening ()
 Returns a TF1 describing the change in energy resolution due to gamma energy doppler shift. More...
 
TF1 * GetSolidAngleBroadening ()
 Returns a TF1 describing the change in energy resolution due to the solid angle coverage of the detector. More...
 
TF1 * GetBetaBroadening ()
 Returns a TF1 describing the change in energy resolution due to the distribution of beta values. More...
 
TF1 * GetTotalBroadening ()
 Returns a TF1 describing the change in energy resolution due to gamma energy doppler shift, the solid angle coverage of the detector and the distribution of beta values. More...
 

Private Member Functions

void UpdateParameters ()
 Updates the parameters for each TF1 when called.
 

Static Private Member Functions

static Double_t DopplerShift (Double_t *ang, Double_t *par)
 Computes the Doppler shift for the given angle and parameters. More...
 
static Double_t EnergyBroadening (Double_t *ang, Double_t *par)
 Computes the Doppler broadening in resolution for the given angle and parameters. More...
 
static Double_t SolidAngleBroadening (Double_t *ang, Double_t *par)
 Computes the resolution broadening due to opening angle of the detector. More...
 
static Double_t BetaBroadening (Double_t *ang, Double_t *par)
 Returns the total broadening due to energy shift, opening angle and spread in beta values. More...
 
static Double_t TotalBroadening (Double_t *ang, Double_t *par)
 Returns the total broadening due to energy shift, opening angle and spread in beta values. More...
 

Private Attributes

float energyMeV_
 Energy of the gamma-ray in MeV.
 
float beta_
 Beta value, ratio of velocity to speed of light.
 
float dThetaDeg_
 Opening angle of the detector.
 
float resolutionConst_
 Constant term in $ \frac{1}{\sqrt{E}} $ of resolution function.
 
float dBeta_
 Width of beta distribtuion.
 
TF1 * energyBroadening_
 Pointer to energy broadening TF1.
 
TF1 * solidAngleBroadening_
 Pointer to solid angle broadening TF1.
 
TF1 * betaBroadening_
 Pointer to beta distribution broadening TF1.
 
TF1 * totalBroadening_
 Pointer to total broadening TF1.
 

Detailed Description

Produces a number of TF1 objects describing the change in energy resolution due to energy shift, opening angle and change in beta value.

Author
Karl Smith

Doppler broadening is caused by doppler shift of an emitted $\gamma$-ray due to a moving frame of reference. This shift is determined by the emitted gamma energy, $E_\gamma$, the speed of the frame of reference written with respect to the speed of light, $\beta$, and the polar angle of the detector relative to the direction of the reference frame, $\theta$. The detected energy, $E'$, is then written as

\[ E' = E_\gamma \frac{\sqrt{1-\beta^2}}{1-\beta cos\theta} \]

The resolution of a detector is dependent on the energy of the $\gamma$-ray detected. This intrinsic resolution can typically be written as

\[ \frac{\delta E_{int}}{E'}(E') = \frac{const.}{\sqrt{E'}} \]

As the doppler shift causes the $\gamma$-ray energy to change it adds a broadening to the resolution. The total broadening can then be computed from the intrinsic resolution plus the variance of the doppler shift equation computed via the sum of the partial derivatives squared. For simplification one should divide the broadening by the detected energy giving the following

\[ \frac{\delta E'}{E'} = \sqrt{ \left(\frac{\delta E_{int}}{E'}(E')\right)^2 + \left(\frac{\partial E'}{\partial E_\gamma}\frac{\delta E_\gamma}{E'}\right)^2 + \left(\frac{\partial E'}{\partial \theta}\frac{\delta \theta}{E'}\right)^2 + \left(\frac{\partial E'}{\partial \beta}\frac{\delta \beta}{E'}\right)^2 } \]

Each contribution can be computed separately. The first term from the intrinsic resolution has been explained above. Computing the second term, derivative of the doppler shift equation with respect to the energy of the $\gamma$-ray we find

\[ \frac{\partial E'}{\partial E_\gamma}\frac{\delta E_\gamma}{E'} = \frac{\sqrt{1-\beta^2}}{1-\beta cos\theta}\frac{\delta E_\gamma}{E'} = \frac{\delta E_\gamma}{E_\gamma} \]

which is simply the uncertainty in the $\gamma$-ray emission.

The third term, the derivative of the doppler shift with respect to the polar angle can be computed as follows

\[ \frac{\partial E'}{\partial \theta}\frac{\delta \theta}{E'} = \frac{E_\gamma \beta \sqrt{1-\beta^2} sin\theta} {(1-\beta cos\theta)^2} \frac{\delta \theta}{E'} = \frac{\beta sin\theta}{(1-\beta cos\theta)}\delta \theta \]

Finally, the fourth term, the derivative of the doppler shift with respect to the beta value can be determined as

\[ \frac{\partial E'}{\partial \beta}\frac{\delta \beta}{E'} = \frac{E_\gamma |cos\theta - \beta|} {\sqrt{1-\beta^2}(1-\beta cos\theta)^2}\frac{\delta \beta}{E'} = \frac{|cos \theta - \beta|}{(1-\beta^2)(1-\beta cos\theta)}\delta\beta \]

Definition at line 73 of file DopplerBroadening.hpp.

Constructor & Destructor Documentation

DopplerBroadening::DopplerBroadening ( const float &  energyMeV,
const float &  beta,
const float &  dThetaDeg = 0,
const float &  resolutionConst = 1,
const float &  dBeta = 0 
)

Default Constructor.

Default constructor.

Parameters
[in]energyMeVThe energy of the emitted gamma-ray in MeV.
[in]betaThe fraction of the speed of light of incoming beam.
[in]dThetaDegThe angular coverage of the detector in degrees.
[in]resolutionConstThe constant term in the 1/sqrt(e) resolution term.
[in]dBetaThe change in beta.

Definition at line 15 of file DopplerBroadening.cpp.

Here is the call graph for this function:

Member Function Documentation

static Double_t DopplerBroadening::BetaBroadening ( Double_t *  ang,
Double_t *  par 
)
inlinestaticprivate

Returns the total broadening due to energy shift, opening angle and spread in beta values.

Parameters
[in]angThe angle value in degrees, index corresponds to power - 1.
[in]parThe parameters of the function. The parameters are:
  • par[1] - The beta value, $\beta$, of the frame of reference.
  • par[4] - The width of the beta distribution, $\delta\beta$.
Returns
The total broadening expected.

\[ \frac{\partial E'}{\partial \beta}\frac{\delta\beta}{E'} = \frac{\delta\beta |cos\theta - \beta|}{(1-\beta^2)(1 - \beta cos\theta)} \]

Definition at line 191 of file DopplerBroadening.hpp.

Here is the caller graph for this function:

static Double_t DopplerBroadening::DopplerShift ( Double_t *  ang,
Double_t *  par 
)
inlinestaticprivate

Computes the Doppler shift for the given angle and parameters.

Parameters
[in]angThe angle value in degrees, index corresponds to power - 1.
[in]parThe parameters of the function. The parameters are:
  • par[0] - Emitted gamma ray energy, $ E_\gamma $.
  • par[1] - The beta value, $\beta$, of the frame of reference.
Returns
The shifted energy of the gamma-ray do to Doppler effect in MeV.

\[ E' = E_\gamma \frac{1-\beta^2}{1-\beta cos\theta} \]

Definition at line 137 of file DopplerBroadening.hpp.

Here is the caller graph for this function:

static Double_t DopplerBroadening::EnergyBroadening ( Double_t *  ang,
Double_t *  par 
)
inlinestaticprivate

Computes the Doppler broadening in resolution for the given angle and parameters.

Parameters
[in]angThe angle value in degrees, index corresponds to power - 1.
[in]parThe parameters of the function. The parameters are:
  • par[0] - Emitted gamma ray energy, $ E_\gamma $.
  • par[1] - The beta value, $\beta$, of the frame of reference.
  • par[3] - The constant in $\frac{const.}{\sqrt{E}}$ term that defines detector resolution in units of $\sqrt{MeV}$.
Returns
The energy resolution expected at the given angle from the doppler shifted energy $E'$.

\[ \frac{\delta E_{int}}{E'}(E') = \frac{const.}{\sqrt{E'}} \]

Definition at line 156 of file DopplerBroadening.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

TF1* DopplerBroadening::GetBetaBroadening ( )
inline

Returns a TF1 describing the change in energy resolution due to the distribution of beta values.

Returns
A TF1 object with the change in energy resolution due to beta distribution width as a function of polar angle $\theta$ in degrees.

Definition at line 102 of file DopplerBroadening.hpp.

Here is the caller graph for this function:

TF1* DopplerBroadening::GetEnergyBroadening ( )
inline

Returns a TF1 describing the change in energy resolution due to gamma energy doppler shift.

Returns
A TF1 object with the change in energy resolution due to energy shift as a function of polar angle $\theta$ in degrees.

Definition at line 88 of file DopplerBroadening.hpp.

Here is the caller graph for this function:

TF1* DopplerBroadening::GetSolidAngleBroadening ( )
inline

Returns a TF1 describing the change in energy resolution due to the solid angle coverage of the detector.

Returns
A TF1 object with the change in energy resolution due to opening angle of the detector as a function of polar angle $\theta$ in degrees.

Definition at line 95 of file DopplerBroadening.hpp.

Here is the caller graph for this function:

TF1* DopplerBroadening::GetTotalBroadening ( )
inline

Returns a TF1 describing the change in energy resolution due to gamma energy doppler shift, the solid angle coverage of the detector and the distribution of beta values.

Returns
A TF1 object with the change in energy resolution due to energy shift, opening angle of the detector, and beta distribution width as a function of polar angle $\theta$ in degrees.

Definition at line 110 of file DopplerBroadening.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:

static Double_t DopplerBroadening::SolidAngleBroadening ( Double_t *  ang,
Double_t *  par 
)
inlinestaticprivate

Computes the resolution broadening due to opening angle of the detector.

Parameters
[in]angThe angle value in degrees, index corresponds to power - 1.
[in]parThe parameters of the function. The parameters are:
  • par[0] - Emitted gamma ray energy, $ E_\gamma $.
  • par[1] - The beta value, $\beta$, of the frame of reference.
  • par[2] - The opening angle of the detector, $\delta \theta$, in radians.
Returns
The broadening for given parameters and angle.

\[ \frac{\partial E'}{\partial \theta}\frac{\delta\theta}{E'} = \frac{\beta sin\theta}{1-\beta cos\theta}\delta \theta \]

Definition at line 173 of file DopplerBroadening.hpp.

Here is the caller graph for this function:

static Double_t DopplerBroadening::TotalBroadening ( Double_t *  ang,
Double_t *  par 
)
inlinestaticprivate

Returns the total broadening due to energy shift, opening angle and spread in beta values.

Parameters
[in]angThe angle value in degrees, index corresponds to power - 1.
[in]parThe parameters of the function. The parameters are:
  • par[0] - Emitted gamma ray energy, $ E_\gamma $.
  • par[1] - The beta value, $\beta$, of the frame of reference.
  • par[2] - The opening angle of the detector, $\delta \theta$, in radians.
  • par[3] - The constant in $\frac{const.}{\sqrt{E}}$ term that defines detector resolution in units of $\sqrt{MeV}$.
  • par[4] - The width of the beta distribution, $\delta\beta$.
Returns
The total broadening expected.

\[ \frac{\delta E'}{E'} = \sqrt{ \left(\frac{\delta E_{int}}{E'}(E')\right)^2 + \left(\frac{\partial E'}{\partial \theta}\frac{\delta \theta}{E'}\right)^2 + \left(\frac{\partial E'}{\partial \beta}\frac{\delta \beta}{E'}\right)^2 } \]

Note
The following term has been omitted:

\[ \left(\frac{\partial E'}{\partial E_\gamma}\frac{\delta E_\gamma}{E'}\right)^2 \]

Definition at line 221 of file DopplerBroadening.hpp.

Here is the call graph for this function:

Here is the caller graph for this function:


The documentation for this class was generated from the following files: