Belle II Software  release-05-01-25
TOPconfigure Class Reference

Configure TOP geometry for reconstruction: provides interface to fortran code. More...

#include <TOPconfigure.h>

Collaboration diagram for TOPconfigure:

Public Types

enum  {
  c_None = 0,
  c_PMT,
  c_PlaneM,
  c_CylindricM,
  c_SphericM
}
 Exit window types.
 
enum  {
  c_Left = 0,
  c_Right = 1
}
 Argument LR.
 
enum  {
  c_NoRefl = 0,
  c_Box,
  c_Prism
}
 Expansion volume shapes.
 

Public Member Functions

 TOPconfigure ()
 Constructor (which does the stuff if reconstruction geometry not configured yet)
 
void setTOPvolume (double R1, double R2, double Z1, double Z2)
 Defines TOP counter volume (must be called first) More...
 
void setBfield (double B)
 Sets magnetic field (use negative value to reverse polarity) More...
 
void setEdgeRoughness (double R)
 Sets bar edge roughness (radius) More...
 
void setPMT (double A, double B, double Asens, double Bsens, int Nx, int Ny, double TTS=50.e-3)
 Defines PMT dimensions (must be called prior to setQbar) More...
 
void setTTS (int ng, float Frac[], float Mean[], float Sigma[])
 Defines TTS with multi-gaussian PDF. More...
 
void setPMTDependentTTSes ()
 Sets PMT dependent TTS-es.
 
void setQE (float Wavelength[], float QE[], int Size, double CE)
 Sets quantum efficiency. More...
 
int setQbar (double A, double B, double Z1, double Z2, double R, double Dx, double Phi, int Lside, int Rside)
 Defines module geometry; returns module ID. More...
 
void setBBoxWindow (int moduleID, double thickness)
 Adds QBB exit window. More...
 
void addExpansionVolume (int moduleID, int LR, int Shape, double Dz, double Yup, double Ydown, double YupIn=0, double YdownIn=0, double Width=0, double DzRefl=0, double Refl=0)
 Adds expansion volume (wedge) More...
 
void arrangePMT (int moduleID, double sizX, double sizY, double Dx=0, double Dy=0)
 Re-arranges PMT's at (both) exit window(s) More...
 
void arrangePMT (int moduleID, int LR, double sizX, double sizY, double Dx=0, double Dy=0)
 Re-arranges PMT's at exit window LR. More...
 
void setMirrorRadius (int moduleID, double R)
 Sets mirror radius. More...
 
void setMirrorCenter (int moduleID, double Xc, double Yc)
 Sets mirror center. More...
 
void setMirrorReflectivity (int moduleID, double reflectivity)
 Sets mirror reflectivity. More...
 
void setSurfaceReflectivity (int moduleID, double reflectivity)
 Sets surface reflectivity. More...
 
void setTDC (int NBIT, double ChWid, double Offset=0)
 Defines TDC. More...
 
void setCFD (double delTpileup, double delTdoubleHit)
 Defines CFD. More...
 
bool TOPfinalize (int Dump=1)
 Finalizes TOP configuration (must be called last) More...
 
void print () const
 Prints configuration to std output (using fortran print)
 
bool isConfigured () const
 Returns configuration status. More...
 
double getR1 () const
 Returns inner radius of space for TOP modules. More...
 
double getR2 () const
 Returns outer radius of space for TOP modules. More...
 
double getZ1 () const
 Returns minimal z of space for TOP modules. More...
 
double getZ2 () const
 Returns maximal z of space for TOP modules. More...
 
double getTDCTimeRange () const
 Returns time range of TDC. More...
 
void getQbar (int moduleID, double &A, double &B, double &C, int &Lside, int &Rside, int &LexpvID, int &RexpvID)
 Returns module specs. More...
 
void getExpansionVolume (int expvID, double &Dz, double &Yup, double &Ydown, double &YupIn, double &YdownIn, double &Width, int &Shape, int &LR)
 Returns expansion volume (wedge) specs. More...
 
void getMirror (int moduleID, double &R, double &Xc, double &Yc, double &Zc, double &F)
 Returns mirror specs. More...
 
double getBBoxWindow (int moduleID)
 Returns thickness of the bar box window. More...
 

Static Public Member Functions

static void setAlignmentConstants ()
 Passes alignment constants to FORTRAN code function is used in call-back.
 
static void setPMTTypes ()
 Sets PMT types pixel table.
 

Private Attributes

double m_R1 = 0
 inner radius
 
double m_R2 = 0
 outer radius
 
double m_Z1 = 0
 backward z
 
double m_Z2 = 0
 forward z
 
double m_timeRange = 0
 time range of TDC
 

Static Private Attributes

static bool m_configured
 set to true when done
 
static DBObjPtr< TOPCalModuleAlignmentm_alignment
 alignment constants
 
static OptionalDBArray< TOPPmtInstallationm_pmtInstalled
 PMT installation data.
 

Detailed Description

Configure TOP geometry for reconstruction: provides interface to fortran code.

Definition at line 36 of file TOPconfigure.h.

Member Function Documentation

◆ addExpansionVolume()

void addExpansionVolume ( int  moduleID,
int  LR,
int  Shape,
double  Dz,
double  Yup,
double  Ydown,
double  YupIn = 0,
double  YdownIn = 0,
double  Width = 0,
double  DzRefl = 0,
double  Refl = 0 
)

Adds expansion volume (wedge)

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
LRLeft or Right
Shapeshape (c_Box, c_Prism, etc.)
Dzlength
Yupuppermost y
Ydownlowermost y
YupInuppermost y at bar
YdownInlowermost y at bar
Widthwidth (0 means same width as bar)
DzRefllength of the reflective part at exit
Reflreflectivity of that part

Definition at line 293 of file TOPconfigure.cc.

297  {
298  float dz = Dz; float yup = Yup; float ydn = Ydown; float a = Width;
299  float yupi = YupIn; float ydni = YdownIn;
300  float dzrefl = DzRefl; float refl = Refl;
301  set_extvol_(&moduleID, &LR, &Shape, &dz, &yup, &ydn, &a, &yupi, &ydni,
302  &dzrefl, &refl);
303  }

◆ arrangePMT() [1/2]

void arrangePMT ( int  moduleID,
double  sizX,
double  sizY,
double  Dx = 0,
double  Dy = 0 
)

Re-arranges PMT's at (both) exit window(s)

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
sizXbox size in x
sizYbox size in y
Dxbox offset in x
Dybox offset in y

Definition at line 305 of file TOPconfigure.cc.

◆ arrangePMT() [2/2]

void arrangePMT ( int  moduleID,
int  LR,
double  sizX,
double  sizY,
double  Dx = 0,
double  Dy = 0 
)

Re-arranges PMT's at exit window LR.

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
LRLeft or Right
sizXbox size in x
sizYbox size in y
Dxbox offset in x
Dybox offset in y

Definition at line 316 of file TOPconfigure.cc.

◆ getBBoxWindow()

double getBBoxWindow ( int  moduleID)

Returns thickness of the bar box window.

Parameters
moduleIDmodule ID (slot number, 1 based)
Returns
thickness

Definition at line 405 of file TOPconfigure.cc.

◆ getExpansionVolume()

void getExpansionVolume ( int  expvID,
double &  Dz,
double &  Yup,
double &  Ydown,
double &  YupIn,
double &  YdownIn,
double &  Width,
int &  Shape,
int &  LR 
)

Returns expansion volume (wedge) specs.

Parameters
expvIDexpansion volume ID
Dzlength
Yupuppermost y
Ydownlowermost y
YupInuppermost y at bar
YdownInlowermost y at bar
Widthwidth
Shapeshape
LRLeft or Right

Definition at line 387 of file TOPconfigure.cc.

◆ getMirror()

void getMirror ( int  moduleID,
double &  R,
double &  Xc,
double &  Yc,
double &  Zc,
double &  F 
)

Returns mirror specs.

Parameters
moduleIDmodule ID (slot number, 1 based)
Rradius
Xccenter of curvature in x (local frame)
Yccenter of curvature in y (local frame)
Zccenter of curvature in z (local frame)
Feffective focal length

Definition at line 396 of file TOPconfigure.cc.

◆ getQbar()

void getQbar ( int  moduleID,
double &  A,
double &  B,
double &  C,
int &  Lside,
int &  Rside,
int &  LexpvID,
int &  RexpvID 
)

Returns module specs.

Parameters
moduleIDmodule ID (slot number, 1 based)
Awidth
Bthickness
Clength
Lsideleft-side window type
Rsideright-side window type
LexpvIDleft-side expansion volume ID or 0
RexpvIDright-side expansion volume ID or 0

Definition at line 378 of file TOPconfigure.cc.

◆ getR1()

double getR1 ( ) const
inline

Returns inner radius of space for TOP modules.

Returns
inner radius

Definition at line 258 of file TOPconfigure.h.

262 {return m_Z1;}

◆ getR2()

double getR2 ( ) const
inline

Returns outer radius of space for TOP modules.

Returns
outer radius

Definition at line 264 of file TOPconfigure.h.

◆ getTDCTimeRange()

double getTDCTimeRange ( ) const
inline

Returns time range of TDC.

Returns
time range

Definition at line 282 of file TOPconfigure.h.

◆ getZ1()

double getZ1 ( ) const
inline

Returns minimal z of space for TOP modules.

Returns
minimal z

Definition at line 270 of file TOPconfigure.h.

◆ getZ2()

double getZ2 ( ) const
inline

Returns maximal z of space for TOP modules.

Returns
maximal z

Definition at line 276 of file TOPconfigure.h.

◆ isConfigured()

bool isConfigured ( ) const
inline

Returns configuration status.

Returns
status

Definition at line 252 of file TOPconfigure.h.

◆ setBBoxWindow()

void setBBoxWindow ( int  moduleID,
double  thickness 
)

Adds QBB exit window.

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
thicknesswindow thickness

Definition at line 287 of file TOPconfigure.cc.

◆ setBfield()

void setBfield ( double  B)

Sets magnetic field (use negative value to reverse polarity)

Parameters
Bmagnetic field

Definition at line 245 of file TOPconfigure.cc.

◆ setCFD()

void setCFD ( double  delTpileup,
double  delTdoubleHit 
)

Defines CFD.

Parameters
delTpileuppileup time
delTdoubleHitdouble hit resolution

Definition at line 362 of file TOPconfigure.cc.

◆ setEdgeRoughness()

void setEdgeRoughness ( double  R)

Sets bar edge roughness (radius)

Parameters
Rroughness

Definition at line 251 of file TOPconfigure.cc.

◆ setMirrorCenter()

void setMirrorCenter ( int  moduleID,
double  Xc,
double  Yc 
)

Sets mirror center.

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
Xccenter of curvature in x (local frame)
Yccenter of curvature in y (local frame)

Definition at line 330 of file TOPconfigure.cc.

◆ setMirrorRadius()

void setMirrorRadius ( int  moduleID,
double  R 
)

Sets mirror radius.

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
Rradius

Definition at line 324 of file TOPconfigure.cc.

◆ setMirrorReflectivity()

void setMirrorReflectivity ( int  moduleID,
double  reflectivity 
)

Sets mirror reflectivity.

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
reflectivityreflectivity (absolute value)

Definition at line 336 of file TOPconfigure.cc.

◆ setPMT()

void setPMT ( double  A,
double  B,
double  Asens,
double  Bsens,
int  Nx,
int  Ny,
double  TTS = 50.e-3 
)

Defines PMT dimensions (must be called prior to setQbar)

Parameters
Asize in x
Bsize in y
Asenssensitive area in x
Bsenssensitive area in y
Nxnumber of pads in x
Nynumber of pads in y
TTStime resolution (rms)

Definition at line 257 of file TOPconfigure.cc.

◆ setQbar()

int setQbar ( double  A,
double  B,
double  Z1,
double  Z2,
double  R,
double  Dx,
double  Phi,
int  Lside,
int  Rside 
)

Defines module geometry; returns module ID.

Parameters
Abar width
Bbar thickness
Z1backward window position
Z2forward window position
Rinner radius
Dxshift along the module frame x-axis
Phiangle in respect to Belle y-axis
Lsidetype of the left side exit window
Rsidetype of the right side exit window
Returns
module ID

Definition at line 277 of file TOPconfigure.cc.

◆ setQE()

void setQE ( float  Wavelength[],
float  QE[],
int  Size,
double  CE 
)

Sets quantum efficiency.

Parameters
Wavelengthwavelength values
QEquantum efficiency values
Sizearray size
CEelectron collection efficiency

Definition at line 271 of file TOPconfigure.cc.

◆ setSurfaceReflectivity()

void setSurfaceReflectivity ( int  moduleID,
double  reflectivity 
)

Sets surface reflectivity.

Parameters
moduleIDmodule ID (0 based, e.g. slot-1)
reflectivityreflectivity (absolute value)

Definition at line 346 of file TOPconfigure.cc.

◆ setTDC()

void setTDC ( int  NBIT,
double  ChWid,
double  Offset = 0 
)

Defines TDC.

Parameters
NBITnumber of bits
ChWidchannel width
Offsetoffset

Definition at line 356 of file TOPconfigure.cc.

◆ setTOPvolume()

void setTOPvolume ( double  R1,
double  R2,
double  Z1,
double  Z2 
)

Defines TOP counter volume (must be called first)

Parameters
R1inner radius of TOP volume
R2outer radius of TOP volume
Z1backward border of TOP volume
Z2forward border of TOP volume

Definition at line 238 of file TOPconfigure.cc.

◆ setTTS()

void setTTS ( int  ng,
float  Frac[],
float  Mean[],
float  Sigma[] 
)

Defines TTS with multi-gaussian PDF.

Parameters
ngnumber of Gaussian terms
Fracfractions of Gaussian terms
Meanmean values of Gaussian terms
Sigmasigma values of Gaussian terms

Definition at line 266 of file TOPconfigure.cc.

◆ TOPfinalize()

bool TOPfinalize ( int  Dump = 1)

Finalizes TOP configuration (must be called last)

Parameters
Dumpprint configuration to std output
Returns
true if successfull

Definition at line 368 of file TOPconfigure.cc.


The documentation for this class was generated from the following files:
Belle2::TOP::TOPconfigure::m_Z1
double m_Z1
backward z
Definition: TOPconfigure.h:340