MiniballSort
Loading...
Searching...
No Matches
MiniballGeometry Class Reference

Functions to convert Miniball angles read from the frame. More...

#include <MiniballGeometry.hh>

Inheritance diagram for MiniballGeometry:

Public Member Functions

 MiniballGeometry ()
 Constructor.
 
 ~MiniballGeometry ()
 Destructor.
 
void SetupCluster ()
 Setup cluster main routine.
 
void SetupCluster (double user_theta, double user_phi, double user_alpha, double user_r, double user_z)
 
void SetCluTheta (double user_theta)
 
void SetCluPhi (double user_phi)
 
void SetCluAlpha (double user_alpha)
 
void SetCluR (double user_r)
 
void SetCluZ (double user_z)
 
void SetGeometryType (unsigned char user_type)
 
double GetCluTheta ()
 Getters for the various setters.
 
double GetCluPhi ()
 
double GetCluAlpha ()
 
double GetCluR ()
 
unsigned char GetGeometryType ()
 
double GetCryTheta (unsigned char cry)
 
double GetCryPhi (unsigned char cry)
 
TVector3 GetCryVector (unsigned char cry)
 
double GetSegTheta (unsigned char cry, unsigned char seg)
 
double GetSegPhi (unsigned char cry, unsigned char seg)
 
double GetSegX (unsigned char cry, unsigned char seg)
 
double GetSegY (unsigned char cry, unsigned char seg)
 
double GetSegZ (unsigned char cry, unsigned char seg)
 
TVector3 GetSegVector (unsigned char cry, unsigned char seg)
 

Private Member Functions

 ClassDef (MiniballGeometry, 2)
 

Private Attributes

const unsigned char ncry = 3
 
const unsigned char nseg = 7
 
unsigned char type
 geometry defintion type
 
double theta
 theta angle in radians
 
double phi
 phi angle in radians
 
double alpha
 alpha angle in radians
 
double r
 distance from target to detector in mm
 
double z
 distance from target to origin (beam direction is positive) in mm
 
std::vector< std::vector< TVector3 > > seg_offset
 vector for segment centre (0 = core)
 
TVector3 mbzoffset
 This shift is independent of the CD detector distance which is relative.
 

Detailed Description

Functions to convert Miniball angles read from the frame.


Miniball Geometry class

A geometry class that converts cluster angles read from the Miniball frame into real-life angles for the analysis. You can have theta and phi angles of the centres of each cluster, crystal and segment in frame geometry or true/beam geometry.

Definition at line 21 of file MiniballGeometry.hh.

Constructor & Destructor Documentation

◆ MiniballGeometry()

MiniballGeometry::MiniballGeometry ( )
inline

Constructor.

Definition at line 26 of file MiniballGeometry.hh.

◆ ~MiniballGeometry()

MiniballGeometry::~MiniballGeometry ( )
inline

Destructor.

Definition at line 29 of file MiniballGeometry.hh.

Member Function Documentation

◆ ClassDef()

MiniballGeometry::ClassDef ( MiniballGeometry ,
2  )
private

◆ GetCluAlpha()

double MiniballGeometry::GetCluAlpha ( )
inline

Definition at line 68 of file MiniballGeometry.hh.

◆ GetCluPhi()

double MiniballGeometry::GetCluPhi ( )
inline

Definition at line 67 of file MiniballGeometry.hh.

◆ GetCluR()

double MiniballGeometry::GetCluR ( )
inline

Definition at line 69 of file MiniballGeometry.hh.

◆ GetCluTheta()

double MiniballGeometry::GetCluTheta ( )
inline

Getters for the various setters.

Definition at line 66 of file MiniballGeometry.hh.

◆ GetCryPhi()

double MiniballGeometry::GetCryPhi ( unsigned char cry)
inline

Get the phi angle of the crystal with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
Returns
phi of cry in beam reference (radians)

Definition at line 82 of file MiniballGeometry.hh.

◆ GetCryTheta()

double MiniballGeometry::GetCryTheta ( unsigned char cry)
inline

Get the theta angle of the crystal with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
Returns
theta of cry in beam reference (radians)

Definition at line 75 of file MiniballGeometry.hh.

◆ GetCryVector()

TVector3 MiniballGeometry::GetCryVector ( unsigned char cry)
inline

Get a unit vector pointing towards the core

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
Returns
TVector3 of the crystal position with respect to the nominal centre

Definition at line 89 of file MiniballGeometry.hh.

Referenced by GetCryPhi(), and GetCryTheta().

◆ GetGeometryType()

unsigned char MiniballGeometry::GetGeometryType ( )
inline

Definition at line 70 of file MiniballGeometry.hh.

◆ GetSegPhi()

double MiniballGeometry::GetSegPhi ( unsigned char cry,
unsigned char seg )
inline

Get the phi angle of a segment with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
segnumber of the segment within the crystal: 0 is core, 1-6 for segments
Returns
phi of segment in beam reference (radians)

Definition at line 105 of file MiniballGeometry.hh.

◆ GetSegTheta()

double MiniballGeometry::GetSegTheta ( unsigned char cry,
unsigned char seg )
inline

Get the theta angle of a segment with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
segnumber of the segment within the crystal: 0 is core, 1-6 for segments
Returns
theta of segment in beam reference (radians)

Definition at line 97 of file MiniballGeometry.hh.

◆ GetSegVector()

TVector3 MiniballGeometry::GetSegVector ( unsigned char cry,
unsigned char seg )
inline

Get a unit vector pointing towards the segment

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
segnumber of the segment within the crystal: 0 is core, 1-6 for segments
Returns
TVector3 of the segment position with respect to the nominal centre

Definition at line 137 of file MiniballGeometry.hh.

Referenced by GetCryVector(), GetSegPhi(), GetSegTheta(), GetSegX(), GetSegY(), and GetSegZ().

◆ GetSegX()

double MiniballGeometry::GetSegX ( unsigned char cry,
unsigned char seg )
inline

Get the x position of a segment with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
segnumber of the segment within the crystal: 0 is core, 1-6 for segments
Returns
x position of segment in beam reference (mm)

Definition at line 113 of file MiniballGeometry.hh.

◆ GetSegY()

double MiniballGeometry::GetSegY ( unsigned char cry,
unsigned char seg )
inline

Get the y position of a segment with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
segnumber of the segment within the crystal: 0 is core, 1-6 for segments
Returns
y position of segment in beam reference (mm)

Definition at line 121 of file MiniballGeometry.hh.

◆ GetSegZ()

double MiniballGeometry::GetSegZ ( unsigned char cry,
unsigned char seg )
inline

Get the z position of a segment with respect to the beam

Parameters
crynumber of the MB Ge crystal counting from 0 to 2
segnumber of the segment within the crystal: 0 is core, 1-6 for segments
Returns
z position of segment in beam reference (mm)

Definition at line 129 of file MiniballGeometry.hh.

◆ SetCluAlpha()

void MiniballGeometry::SetCluAlpha ( double user_alpha)
inline

Set the alpha angle measured from the frame

Parameters
user_alphain the MB frame of reference [degrees]

Definition at line 51 of file MiniballGeometry.hh.

◆ SetCluPhi()

void MiniballGeometry::SetCluPhi ( double user_phi)
inline

Set the phi angle measured from the frame

Parameters
user_phiin the MB frame of reference [degrees]

Definition at line 47 of file MiniballGeometry.hh.

◆ SetCluR()

void MiniballGeometry::SetCluR ( double user_r)
inline

Set the distance between the target and face of the cluster

Parameters
user_rdistance from target to detector [mm]

Definition at line 55 of file MiniballGeometry.hh.

◆ SetCluTheta()

void MiniballGeometry::SetCluTheta ( double user_theta)
inline

Set the theta angle measured from the frame

Parameters
user_thetain the MB frame of reference [degrees]

Definition at line 43 of file MiniballGeometry.hh.

◆ SetCluZ()

void MiniballGeometry::SetCluZ ( double user_z)
inline

Set the distance between the origin and the target position along the beam axis

Parameters
user_zdistance from target to origin in beam direction [mm]

Definition at line 59 of file MiniballGeometry.hh.

◆ SetGeometryType()

void MiniballGeometry::SetGeometryType ( unsigned char user_type)
inline

Set the geometry defintion type

Parameters
user_type

Definition at line 63 of file MiniballGeometry.hh.

◆ SetupCluster() [1/2]

void MiniballGeometry::SetupCluster ( )

Setup cluster main routine.

< mm; ~25mm for higher energies (E>500keV)

< mm; gap between the capsules inside the cryostat

< mm; distance between capsule and crystal

< mm; thickness of the capsule walls

< rad; taper angle from the crystal and capsule

< mm; from the hexagon shape in the front of the capsule

< of capsule

< focal length using taper angle and distance from capsule core to next capsule

Definition at line 28 of file MiniballGeometry.cc.

Referenced by ClassImp().

◆ SetupCluster() [2/2]

void MiniballGeometry::SetupCluster ( double user_theta,
double user_phi,
double user_alpha,
double user_r,
double user_z )

Setup the cluster with coordinate values

Parameters
user_thetain the MB frame of reference [degrees]
user_phiin the MB frame of reference [degrees]
user_alphain the MB frame of reference [degrees]
user_rdistance from target to detector [mm]
user_zdistance from target to origin in beam direction [mm]

Member Data Documentation

◆ alpha

double MiniballGeometry::alpha
private

alpha angle in radians

Definition at line 151 of file MiniballGeometry.hh.

Referenced by ClassImp(), GetCluAlpha(), SetCluAlpha(), and SetupCluster().

◆ mbzoffset

TVector3 MiniballGeometry::mbzoffset
private

This shift is independent of the CD detector distance which is relative.

Offset of target from origin in direction of beam in mm.

Definition at line 157 of file MiniballGeometry.hh.

Referenced by SetupCluster().

◆ ncry

const unsigned char MiniballGeometry::ncry = 3
private

Definition at line 144 of file MiniballGeometry.hh.

Referenced by ClassImp(), and SetupCluster().

◆ nseg

const unsigned char MiniballGeometry::nseg = 7
private

Definition at line 145 of file MiniballGeometry.hh.

Referenced by ClassImp(), and SetupCluster().

◆ phi

double MiniballGeometry::phi
private

phi angle in radians

Definition at line 150 of file MiniballGeometry.hh.

Referenced by ClassImp(), GetCluPhi(), SetCluPhi(), and SetupCluster().

◆ r

double MiniballGeometry::r
private

distance from target to detector in mm

Definition at line 152 of file MiniballGeometry.hh.

Referenced by ClassImp(), GetCluR(), SetCluR(), and SetupCluster().

◆ seg_offset

std::vector<std::vector<TVector3> > MiniballGeometry::seg_offset
private

vector for segment centre (0 = core)

Definition at line 156 of file MiniballGeometry.hh.

Referenced by ClassImp(), GetSegVector(), and SetupCluster().

◆ theta

double MiniballGeometry::theta
private

theta angle in radians

Definition at line 149 of file MiniballGeometry.hh.

Referenced by ClassImp(), GetCluTheta(), SetCluTheta(), and SetupCluster().

◆ type

unsigned char MiniballGeometry::type
private

geometry defintion type

Definition at line 148 of file MiniballGeometry.hh.

Referenced by GetGeometryType(), SetGeometryType(), and SetupCluster().

◆ z

double MiniballGeometry::z
private

distance from target to origin (beam direction is positive) in mm

Definition at line 153 of file MiniballGeometry.hh.

Referenced by ClassImp(), SetCluZ(), and SetupCluster().


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