#include <Micromegas.h>
Definition at line 20 of file Micromegas.h.
◆ Micromegas()
MuonGM::Micromegas::Micromegas |
( |
Component * |
s | ) |
|
Definition at line 37 of file Micromegas.cxx.
38 MicromegasComponent *
s = (MicromegasComponent *)
ss;
◆ build() [1/2]
Definition at line 47 of file Micromegas.cxx.
49 std::vector<Cutout *> vcutdef;
51 return build(matManager, minimalgeo, cutoutson, vcutdef);
◆ build() [2/2]
Definition at line 54 of file Micromegas.cxx.
63 MM_Technology *
t = (MM_Technology *)
ds.GetTechnology(
name);
65 double gasTck =
t->gasThickness;
66 double pcbTck =
t->pcbThickness;
67 double roTck =
t->roThickness;
72 minimalgeo =
t->geoLevel;
81 const GeoMaterial *mtrd = matManager.
getMaterial(
"std::FR4") !=
nullptr ?
83 GeoLogVol *ltrd =
new GeoLogVol(
logVolName, strd, mtrd);
84 GeoFullPhysVol *ptrd =
new GeoFullPhysVol(ltrd);
90 ptrd->add(
new GeoSerialIdentifier(0));
95 for (
int i = 0;
i <
t->nlayers;
i++) {
98 double longWidthActive;
103 ptrd->add(
new GeoIdentifierTag(igl));
110 newpos += gasTck / 2.;
117 double newXPos = newpos;
119 const GeoShape *sGasVolume =
new GeoTrd(gasTck / 2, gasTck / 2, widthActive / 2, longWidthActive / 2, lengthActive / 2);
121 GeoLogVol *ltrdtmp =
new GeoLogVol(
"MM_Sensitive", sGasVolume, matManager.
getMaterial(
"muo::ArCO2"));
122 GeoPhysVol *ptrdtmp =
new GeoPhysVol(ltrdtmp);
123 GeoNameTag *ntrdtmp =
new GeoNameTag(
name +
"muo::ArCO2");
124 GeoTransform *ttrdtmp =
new GeoTransform(GeoTrf::TranslateX3D(newXPos));
135 const GeoShape *trd1 =
new GeoTrd(gasTck / 2, gasTck / 2,
width / 2,
longWidth / 2,
length / 2);
136 const GeoShape *trd2 =
new GeoTrd(gasTck, gasTck,
W -
f3, lW -
f3,
length / 2 - (
f1 +
f2) / 2.);
137 GeoTrf::Translate3D
c(0, 0, (
f2 -
f1) / 2.);
138 trd1 = &(trd1->subtract((*trd2) <<
c));
139 GeoLogVol *ltrdframe =
new GeoLogVol(
"MM_Frame", trd1, matManager.
getMaterial(
"std::Aluminium"));
140 GeoPhysVol *ptrdframe =
new GeoPhysVol(ltrdframe);
142 ptrdtmp->add(ptrdframe);
◆ print()
void MuonGM::Micromegas::print |
( |
| ) |
const |
|
overridevirtual |
◆ setLogVolName()
void MuonGM::DetectorElement::setLogVolName |
( |
const std::string & |
str | ) |
|
|
inlineinherited |
◆ index
int MuonGM::Micromegas::index {0} |
◆ length
double MuonGM::Micromegas::length {0.} |
◆ logVolName
std::string MuonGM::DetectorElement::logVolName {} |
|
inherited |
◆ longWidth
double MuonGM::Micromegas::longWidth {0.} |
◆ m_component
◆ name
std::string MuonGM::DetectorElement::name {} |
|
inherited |
◆ thickness
double MuonGM::Micromegas::thickness {0.} |
◆ width
double MuonGM::Micromegas::width {0.} |
The documentation for this class was generated from the following files: