![]() |
AliRoot Core
edcc906 (edcc906)
|
Read survey data and create alignement. More...
#include <AliEMCALSurvey.h>
Classes | |
struct | AliEMCALSuperModuleDelta |
Public Types | |
enum | SurveyDataType_t { kSurvey = 0, kDummy = 1 } |
Public Member Functions | |
AliEMCALSurvey () | |
Default constructor. More... | |
AliEMCALSurvey (const TString &txtFileName, const SurveyDataType_t dataType=kSurvey) | |
virtual | ~AliEMCALSurvey () |
Destructor. More... | |
void | CreateAliAlignObjParams (TClonesArray &array) |
Create AliAlignObjParams. More... | |
void | CreateNullObjects (TClonesArray &alObj, const AliEMCALGeometry *geom) const |
Create null shifts and rotations. More... | |
void | SetDataType (const SurveyDataType_t dataType) |
Int_t | GetDataType () const |
Protected Member Functions | |
void | InitSuperModuleData (const Double_t *xReal, const Double_t *yReal, const Double_t *zReal, const Double_t *psiReal, const Double_t *thetaReal, const Double_t *phiReal) |
void | InitSuperModuleData (const TObjArray *surveypoints) |
Protected Attributes | |
Int_t | fNSuperModule |
Number of supermodules. More... | |
AliEMCALSuperModuleDelta * | fSuperModuleData |
Supermodule transformation data. More... | |
Private Member Functions | |
virtual AliEMCALSuperModuleDelta | GetSuperModuleTransformation (Int_t smIndex) const |
Supermodule transformation. More... | |
AliEMCALSurvey (const AliEMCALSurvey &) | |
AliEMCALSurvey & | operator= (const AliEMCALSurvey &) |
Private Attributes | |
Int_t | fDataType |
! which date type (survey or dummy) to use More... | |
Read survey data and create alignement.
Objects of this class read txt file with survey data and convert the data into AliAlignObjParams of alignable EMCAL volumes. AliEMCALSurvey inherits TObject only to use AliLog "functions".
Dummy functions originally written before EMCAL installation and survey are kept for backward compatibility, but now they are not used.
Surveyed points on the EMCAL support rails were used with the CATIA 3D graphics program to determine the positions of the bottom corners of the active area for each supermodule. These numbers are read in from file and converted to position of the center and roll, pitch, yaw angles of each installed SM.
Definition at line 40 of file AliEMCALSurvey.h.
Enumerator | |
---|---|
kSurvey |
use real survey parameters |
kDummy |
use dummy values for testing |
Definition at line 45 of file AliEMCALSurvey.h.
AliEMCALSurvey::AliEMCALSurvey | ( | ) |
Default constructor.
Definition at line 39 of file AliEMCALSurvey.cxx.
AliEMCALSurvey::AliEMCALSurvey | ( | const TString & | txtFileName, |
const SurveyDataType_t | type = kSurvey |
||
) |
Get the geometry object and then attempt to read survey data from a file, depending on which method (kSurvey or kDummy) is selected.
Definition at line 65 of file AliEMCALSurvey.cxx.
|
virtual |
Destructor.
Definition at line 146 of file AliEMCALSurvey.cxx.
|
private |
void AliEMCALSurvey::CreateAliAlignObjParams | ( | TClonesArray & | array | ) |
Create AliAlignObjParams.
Definition at line 154 of file AliEMCALSurvey.cxx.
Referenced by MakeEMCALFullMisAlignment().
void AliEMCALSurvey::CreateNullObjects | ( | TClonesArray & | alObj, |
const AliEMCALGeometry * | geom | ||
) | const |
Create null shifts and rotations.
Definition at line 229 of file AliEMCALSurvey.cxx.
Referenced by CreateAliAlignObjParams(), and MakeEMCALZeroMisAlignment().
|
inline |
Definition at line 63 of file AliEMCALSurvey.h.
|
privatevirtual |
Supermodule transformation.
Definition at line 268 of file AliEMCALSurvey.cxx.
Referenced by CreateAliAlignObjParams().
|
protected |
Dummy method just takes the inputted values and applies them
Useful for testing small changes
Definition at line 561 of file AliEMCALSurvey.cxx.
Referenced by AliEMCALSurvey().
|
protected |
This method uses the data points from the EMCAL survey and CATIA program to create the alignment matrices. Only valid for (installed) SM, others will have null objects
The bottom edges of the strip modules define the active area of the EMCAL, but in software we have a box to hold them which is longer than that. We need to convert info about the position of the corners of the bottom of the active area to the center of the software box that contains the strip modules.
View from beam axis up to EMCAL Ai Ci
0,1 0,0 1,0 1,1 xxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx x x x x x x x x % * x x * % x x x x x x x x xxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx 1,1 1,0 0,0 0,1 <–> = added length <–> = added length
View from side of topmost SM
Ai Ci
0,1 0,0 1,0 1,1 xxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx x x % * x x % * x x xxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx 1,1 1,0 0,0 0,1 <–> = added length <–> = added length
Definition at line 324 of file AliEMCALSurvey.cxx.
|
private |
|
inline |
Definition at line 62 of file AliEMCALSurvey.h.
|
private |
! which date type (survey or dummy) to use
Definition at line 91 of file AliEMCALSurvey.h.
Referenced by AliEMCALSurvey(), GetDataType(), and SetDataType().
|
protected |
Number of supermodules.
Definition at line 76 of file AliEMCALSurvey.h.
Referenced by AliEMCALSurvey(), and InitSuperModuleData().
|
protected |
Supermodule transformation data.
Definition at line 77 of file AliEMCALSurvey.h.
Referenced by GetSuperModuleTransformation(), InitSuperModuleData(), and ~AliEMCALSurvey().