AliMUONSt1GeometryBuilderV2() | |
AliMUONSt1GeometryBuilderV2(AliMUON* muon) | |
virtual | ~AliMUONSt1GeometryBuilderV2() |
void | TObject::AbstractMethod(const char* method) const |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual bool | AliMUONVGeometryBuilder::ApplyGlobalTransformation() |
virtual void | TObject::Browse(TBrowser* b) |
static TClass* | Class() |
virtual const char* | TObject::ClassName() const |
virtual void | TObject::Clear(Option_t* = "") |
virtual TObject* | TObject::Clone(const char* newname = "") const |
virtual Int_t | TObject::Compare(const TObject* obj) const |
virtual void | TObject::Copy(TObject& object) const |
virtual void | CreateGeometry() |
virtual void | CreateMaterials() |
virtual void | TObject::Delete(Option_t* option = "")MENU |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
virtual void | TObject::Draw(Option_t* option = "") |
virtual void | TObject::DrawClass() constMENU |
virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
virtual void | TObject::Dump() constMENU |
virtual void | TObject::Error(const char* method, const char* msgfmt) const |
virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
AliMUONGeometryModule* | AliMUONVGeometryBuilder::Geometry(Int_t i) const |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
virtual const char* | TObject::GetIconName() const |
virtual const char* | TObject::GetName() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual Option_t* | TObject::GetOption() const |
virtual const char* | TObject::GetTitle() const |
virtual UInt_t | TObject::GetUniqueID() const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
virtual ULong_t | TObject::Hash() const |
virtual void | TObject::Info(const char* method, const char* msgfmt) const |
virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
virtual void | TObject::Inspect() constMENU |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | TObject::IsFolder() const |
Bool_t | TObject::IsOnHeap() const |
virtual Bool_t | TObject::IsSortable() const |
Bool_t | TObject::IsZombie() const |
virtual void | TObject::ls(Option_t* option = "") const |
void | TObject::MayNotUse(const char* method) const |
Int_t | AliMUONVGeometryBuilder::NofGeometries() const |
virtual Bool_t | TObject::Notify() |
void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
static void | TObject::operator delete(void* ptr) |
static void | TObject::operator delete(void* ptr, void* vp) |
static void | TObject::operator delete[](void* ptr) |
static void | TObject::operator delete[](void* ptr, void* vp) |
void* | TObject::operator new(size_t sz) |
void* | TObject::operator new(size_t sz, void* vp) |
void* | TObject::operator new[](size_t sz) |
void* | TObject::operator new[](size_t sz, void* vp) |
virtual void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | TObject::Print(Option_t* option = "") const |
virtual Int_t | TObject::Read(const char* name) |
void | AliMUONVGeometryBuilder::RebuildSVMaps(Bool_t withEnvelopes = true) const |
virtual void | TObject::RecursiveRemove(TObject* obj) |
void | TObject::ResetBit(UInt_t f) |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
virtual void | TObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "") |
void | TObject::SetBit(UInt_t f) |
void | TObject::SetBit(UInt_t f, Bool_t set) |
virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
static void | TObject::SetDtorOnly(void* obj) |
static void | TObject::SetObjectStat(Bool_t stat) |
void | AliMUONVGeometryBuilder::SetReferenceFrame(const TGeoCombiTrans& referenceFrame) |
virtual void | SetSensitiveVolumes() |
virtual void | SetTransformations() |
virtual void | TObject::SetUniqueID(UInt_t uid) |
virtual void | SetVolumes() |
virtual void | ShowMembers(TMemberInspector&) |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
Bool_t | TObject::TestBit(UInt_t f) const |
Int_t | TObject::TestBits(UInt_t f) const |
void | AliMUONVGeometryBuilder::UpdateDetElements(Bool_t create) const |
virtual void | TObject::UseCurrentStyle() |
virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
AliMUONGeometryEnvelopeStore* | AliMUONVGeometryBuilder::GetEnvelopes(Int_t moduleId) const |
AliMUONGeometryModule* | AliMUONVGeometryBuilder::GetGeometry(Int_t moduleId) const |
Int_t | AliMUONVGeometryBuilder::GetModuleId(const TString& envName) const |
AliMUONStringIntMap* | AliMUONVGeometryBuilder::GetSVMap(Int_t moduleId) const |
void | TObject::MakeZombie() |
void | AliMUONVGeometryBuilder::SetMotherVolume(Int_t moduleId, const TString& volumeName) |
void | AliMUONVGeometryBuilder::SetTransformation(Int_t moduleId, const TGeoTranslation& translation, const TGeoRotation& rotation) |
void | AliMUONVGeometryBuilder::SetTranslation(Int_t moduleId, const TGeoTranslation& translation) |
void | AliMUONVGeometryBuilder::SetVolume(Int_t moduleId, const TString& volumeName, Bool_t isVirtual = false) |
AliMUONSt1GeometryBuilderV2(const AliMUONSt1GeometryBuilderV2& rMUON) | |
void | CreateDaughterBoard() |
void | CreateFoamBox(Int_t segNumber, const TVector2& dimensions) |
void | CreateFrame(Int_t chamber) |
void | CreateHole() |
void | CreateInnerLayers() |
void | CreatePlaneSegment(Int_t segNumber, const TVector2& dimensions, Int_t nofHoles) |
void | CreateQuadrant(Int_t chamber) |
void | CreateQuadrantLayersAsAssemblies(Int_t chamber) |
void | CreateQuadrantLayersAsVolumes(Int_t chamber) |
void | CreateSpacer() |
void | CreateSpacer0() |
TString | FoamBoxName(Int_t segNumber) const |
TString | FR4BoxName(Int_t segNumber) const |
TString | GasVolumeName(const TString& name, Int_t chamber) const |
AliMUONSt1GeometryBuilderV2& | operator=(const AliMUONSt1GeometryBuilderV2& rhs) |
void | PlaceInnerLayers(Int_t chamber) |
void | PlaceSector(const AliMpSector* sector, TExMap specialMap, const TVector3& where, Bool_t reflectZ, Int_t chamber) |
void | PlaceSpacer0(Int_t chamber) |
TString | PlaneSegmentName(Int_t segNumber) const |
TString | QuadrantEnvelopeName(Int_t chamber, Int_t quadrant) const |
TString | QuadrantFLayerName(Int_t chamber) const |
TString | QuadrantMFLayerName(Int_t chamber) const |
TString | QuadrantMLayerName(Int_t chamber) const |
TString | QuadrantNLayerName(Int_t chamber) const |
double | TotalHz() const |
double | TotalHzDaughter() const |
double | TotalHzPlane() const |
enum TObject::EStatusBits { | kCanDelete | |
kMustCleanup | ||
kObjInCanvas | ||
kIsReferenced | ||
kHasUUID | ||
kCannotPick | ||
kNoContextMenu | ||
kInvalidObject | ||
}; | ||
enum TObject::[unnamed] { | kIsOnHeap | |
kNotDeleted | ||
kZombie | ||
kBitMask | ||
kSingleKey | ||
kOverwrite | ||
kWriteDelete | ||
}; |
AliMUON* | fMUON | /< the MUON detector class |
static const Int_t | fgkDaughterCopyNoOffset | /< \brief copy number offset for daughter |
static const char* | fgkDaughterName | /< prefix for automatic volume naming |
static const double | fgkDeltaFilleEtamX | /< Electronics parameter |
static const double | fgkDeltaFilleEtamY | /< Electronics parameter |
static const double | fgkDeltaQuadLHC | /< LHC Origin wrt Quadrant Origin |
static const Int_t | fgkFR4BoxNameOffset | /< coefficient for automatic volume naming |
static const Int_t | fgkFoamBoxNameOffset | /< coefficient for automatic volume naming |
static const double | fgkFrameOffset | /< Frame offset |
static const char* | fgkHoleName | /< prefix for automatic volume naming |
static const double | fgkHxBergCopper | /< Berg connector parameter |
static const double | fgkHxBergPlastic | /< Berg connector parameter |
static const double | fgkHxDaughter | /< Electronics parameter |
static const double | fgkHxHole | /< foam hole paremeter |
static const double | fgkHxKapton | /< Kapton parameter |
static const double | fgkHyBergCopper | /< Berg connector parameter |
static const double | fgkHyBergPlastic | /< Berg connector parameter |
static const double | fgkHyDaughter | /< Electronics parameter |
static const double | fgkHyHole | /< foam hole paremeter |
static const double | fgkHyKapton | /< Kapton parameter |
static const double | fgkHzBergCopper | /< Berg connector (80 pt) |
static const double | fgkHzBergPlastic | /< Berg connector |
static const double | fgkHzDaughter | /< Daughter board |
static const double | fgkHzFR4 | /< FR4 of mechanical plane |
static const double | fgkHzFoam | /< Foam of mechanicalplane |
static const double | fgkHzGas | /< ArCO2 Gas |
static const double | fgkHzKapton | /< Kapton |
static const double | fgkHzPadPlane | /< Pad plane |
static const double | fgkHzSnPb | /< Pad/Kapton connection (66 pt) |
static const double | fgkMotherIR1 | /< Middle Layer Rin |
static const double | fgkMotherIR2 | /< Near and Far Layer Rin |
static const double | fgkMotherOR1 | /< Middle Layer Rout |
static const double | fgkMotherOR2 | /< Near and Far Layer Rout |
static const double | fgkMotherPhiL1 | /< Middle Layer Sphi |
static const double | fgkMotherPhiL2 | /< Near and Far Layer Sphi |
static const double | fgkMotherPhiU1 | /< Middle Layer Endphi |
static const double | fgkMotherPhiU2 | /< Near and Far Layer Endphi |
static const double | fgkMotherThick1 | /< Middle Layer Hz |
static const double | fgkMotherThick2 | /< Near and Far Layer Hz |
static const double | fgkOffsetX | /< Offset X |
static const double | fgkOffsetY | /< Offset Y |
static const double | fgkPadXOffsetBP | /< Horizontal offset in bending plane |
static const double | fgkPadYOffsetBP | /< Vertical offset in bending plane |
static const char* | fgkQuadrantEnvelopeName | /< prefix for automatic volume naming |
static const char* | fgkQuadrantFLayerName | /< prefix for automatic volume naming |
static const char* | fgkQuadrantMFLayerName | /< prefix for automatic volume naming |
static const char* | fgkQuadrantMLayerName | /< prefix for automatic volume naming |
static const char* | fgkQuadrantNLayerName | /< prefix for automatic volume naming |
Inheritance Chart: | ||||||||||||
|
Generate unique envelope name from chamber Id and quadrant number
Create the layer of sensitive volumes with gas and the copper layer. The shape of the sensitive area is defined as an extruded solid substracted with tube (to get inner circular shape).
The spacer volumes are defined according to the input prepared by Nicole Willis without any modifications <pre> No. Type Material Center (mm) Dimensions (mm) (half lengths) 5 BOX EPOXY 408.2 430.4 522.41 5.75 1.5 25.5 5P BOX EPOXY 408.2 445.4 522.41 5.75 1.5 25.5 6 BOX EPOXY 408.2 437.9 519.76 5.75 15.0 1.0 6P BOX EPOXY 408.2 437.9 525.06 5.75 15.0 1.0 7 CYL INOX 408.2 437.9 522.41 r=3.0 hz=20.63 </pre>
The spacer volumes are defined according to the input prepared by Nicole Willis with modifications needed to fit into existing geometry. <pre> No. Type Material Center (mm) Dimensions (mm) (half lengths) 5 BOX EPOXY 408.2 430.4 522.41 5.75 1.5 25.5 5P BOX EPOXY 408.2 445.4 522.41 5.75 1.5 25.5 6 BOX EPOXY 408.2 437.9 519.76 5.75 15.0 1.0 6P BOX EPOXY 408.2 437.9 525.06 5.75 15.0 1.0 7 CYL INOX 408.2 437.9 522.41 r=3.0 hz=20.63 </pre> To fit in existing volumes the volumes 5 and 7 are represented by 2 volumes with half size in z (5A, &A); the dimensions of the volume 5A were also modified to avoid overlaps (x made smaller, y larger to abotain the identical volume)
Create the quadrant (bending and non-bending planes) for the given chamber
Create all the elements in the copper plane
Create a segment of a plane (this includes a foam layer, holes in the foam to feed the kaptons through, kapton connectors and the mother board.)
Create the three main layers as real volumes. Not used anymore.
Create the non-sensitive elements of the frame for the \a chamber Model and notation: \n \n The Quadrant volume name starts with SQ \n The volume segments are numbered 00 to XX \n \n OutTopFrame \n (SQ02-16) \n ------------ \n OutEdgeFrame / | \n (SQ17-24) / | InVFrame (SQ00-01) \n / | \n | | \n OutVFrame | _- - \n (SQ25-39) | | InArcFrame (SQ42-45) \n | | \n ------------- \n InHFrame (SQ40-41) \n \n \n 06 February 2003 - Overlapping volumes resolved. \n One quarter chamber is comprised of three TUBS volumes: SQMx, SQNx, and SQFx, where SQMx is the Quadrant Middle layer for chamber \a chamber ( posZ in [-3.25,3.25]), SQNx is the Quadrant Near side layer for chamber \a chamber ( posZ in [-6.25,3-.25) ), and SQFx is the Quadrant Far side layer for chamber \a chamber ( posZ in (3.25,6.25] ).
Place the spacer defined in global positions !! This method should be used only to find out the right mother volume for the spacer if geometry is changed and the plane segment volumes will change their numbering
Place all the segments in the mother volume, at the position defined by the sector's data. \n The lines with comments COMMENT OUT BEGIN/END indicates blocks which can be commented out in order to reduce the number of volumes in a sector to the plane segments corresponding to regular motifs only.
Insert the chamber number into the name.
Return total daughter plane half Size
{ return fgkHzBergPlastic + fgkHzDaughter; }
Return middle quadrant layer name for chamber \a chamber
{ return Form("%s%d",fgkQuadrantMLayerName,chamber); }
Return middle quadrant frame layer name for chamber \a chamber
{ return Form("%s%d",fgkQuadrantMFLayerName,chamber); }
Return nearer quadrant layer name for chamber \a chamber
{ return Form("%s%d",fgkQuadrantNLayerName,chamber); }
Return farther quadrant layer name for chamber \a chamber
{ return Form("%s%d",fgkQuadrantFLayerName,chamber); }
Return plane segment name for segment \a segNumber
{ return Form("S%.3d", segNumber); }
Return foam box name for segment \a segNumber
{ return Form("S%.3d", segNumber + fgkFoamBoxNameOffset); }
Return FR4 box name for segment \a segNumber
{ return Form("S%.3d", segNumber + fgkFR4BoxNameOffset); }