Belle II Software development
YScanner::Derivatives Struct Reference

Derivatives. More...

#include <YScanner.h>

Public Member Functions

 Derivatives ()
 Default constructor.
 
 Derivatives (const InverseRaytracer::Solution &sol, const InverseRaytracer::Solution &sol_dx, const InverseRaytracer::Solution &sol_de, const InverseRaytracer::Solution &sol_dL)
 Constructor.
 

Static Public Member Functions

static double dLen_d (const InverseRaytracer::Solution &sol0, const InverseRaytracer::Solution &sol1)
 Calculates the derivative of propagation length.
 
static double dyB_d (const InverseRaytracer::Solution &sol0, const InverseRaytracer::Solution &sol1)
 Calculates the derivative of unfolded y coordinate at prism entrance.
 
static double dFic_d (const InverseRaytracer::Solution &sol0, const InverseRaytracer::Solution &sol1)
 Calculates the derivative of Cerenkov azimuthal angle.
 

Public Attributes

double dLen_dx = 0
 propagation length over photon detection coordinate x
 
double dLen_de = 0
 propagation length over photon energy
 
double dLen_dL = 0
 propagation length over running parameter of particle trajectory
 
double dyB_dx = 0
 unfolded y coordinate at prism entrance over photon detection coordinate x
 
double dyB_de = 0
 unfolded y coordinate at prism entrance over photon energy
 
double dyB_dL = 0
 unfolded y coordinate at prism entrance over running parameter of particle trajectory
 
double dFic_dx = 0
 Cerenkov azimuthal angle over photon detection coordinate x.
 
double dFic_de = 0
 Cerenkov azimuthal angle over photon energy.
 
double dFic_dL = 0
 Cerenkov azimuthal angle over running parameter of particle trajectory.
 

Detailed Description

Derivatives.

Definition at line 40 of file YScanner.h.

Constructor & Destructor Documentation

◆ Derivatives() [1/2]

Derivatives ( )
inline

Default constructor.

Definition at line 54 of file YScanner.h.

55 {}

◆ Derivatives() [2/2]

Constructor.

Parameters
solcentral solution
sol_dxsolution displaced by dx
sol_desolution displaced by de
sol_dLsolution dispalced by dL

Definition at line 25 of file YScanner.cc.

29 {
30 if (sol_dx.step == 0) B2ERROR("TOP::YScanner::Derivatives: step (dx) is zero");
31 if (sol_de.step == 0) B2ERROR("TOP::YScanner::Derivatives: step (de) is zero");
32 if (sol_dL.step == 0) B2ERROR("TOP::YScanner::Derivatives: step (dL) is zero");
33
34 dLen_dx = dLen_d(sol, sol_dx);
35 dLen_de = dLen_d(sol, sol_de);
36 dLen_dL = dLen_d(sol, sol_dL);
37
38 dyB_dx = dyB_d(sol, sol_dx);
39 dyB_de = dyB_d(sol, sol_de);
40 dyB_dL = dyB_d(sol, sol_dL);
41
42 dFic_dx = dFic_d(sol, sol_dx);
43 dFic_de = dFic_d(sol, sol_de);
44 dFic_dL = dFic_d(sol, sol_dL);
45 }

Member Function Documentation

◆ dFic_d()

double dFic_d ( const InverseRaytracer::Solution & sol0,
const InverseRaytracer::Solution & sol1 )
inlinestatic

Calculates the derivative of Cerenkov azimuthal angle.

Parameters
sol0central solution
sol1displaced solution
Returns
the derivative

Definition at line 566 of file YScanner.h.

568 {
569 if (std::abs(sol0.cosFic) > std::abs(sol0.sinFic)) {
570 return (sol1.sinFic - sol0.sinFic) / sol0.cosFic / sol1.step;
571 } else {
572 return -(sol1.cosFic - sol0.cosFic) / sol0.sinFic / sol1.step;
573 }
574 }

◆ dLen_d()

double dLen_d ( const InverseRaytracer::Solution & sol0,
const InverseRaytracer::Solution & sol1 )
inlinestatic

Calculates the derivative of propagation length.

Parameters
sol0central solution
sol1displaced solution
Returns
the derivative

Definition at line 554 of file YScanner.h.

556 {
557 return (sol1.len - sol0.len) / sol1.step;
558 }

◆ dyB_d()

double dyB_d ( const InverseRaytracer::Solution & sol0,
const InverseRaytracer::Solution & sol1 )
inlinestatic

Calculates the derivative of unfolded y coordinate at prism entrance.

Parameters
sol0central solution
sol1displaced solution
Returns
the derivative

Definition at line 560 of file YScanner.h.

562 {
563 return (sol1.yB - sol0.yB) / sol1.step;
564 }

Member Data Documentation

◆ dFic_de

double dFic_de = 0

Cerenkov azimuthal angle over photon energy.

Definition at line 48 of file YScanner.h.

◆ dFic_dL

double dFic_dL = 0

Cerenkov azimuthal angle over running parameter of particle trajectory.

Definition at line 49 of file YScanner.h.

◆ dFic_dx

double dFic_dx = 0

Cerenkov azimuthal angle over photon detection coordinate x.

Definition at line 47 of file YScanner.h.

◆ dLen_de

double dLen_de = 0

propagation length over photon energy

Definition at line 42 of file YScanner.h.

◆ dLen_dL

double dLen_dL = 0

propagation length over running parameter of particle trajectory

Definition at line 43 of file YScanner.h.

◆ dLen_dx

double dLen_dx = 0

propagation length over photon detection coordinate x

Definition at line 41 of file YScanner.h.

◆ dyB_de

double dyB_de = 0

unfolded y coordinate at prism entrance over photon energy

Definition at line 45 of file YScanner.h.

◆ dyB_dL

double dyB_dL = 0

unfolded y coordinate at prism entrance over running parameter of particle trajectory

Definition at line 46 of file YScanner.h.

◆ dyB_dx

double dyB_dx = 0

unfolded y coordinate at prism entrance over photon detection coordinate x

Definition at line 44 of file YScanner.h.


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