#include <Geometry/HcalAlgo/interface/DDHCalBarrelAlgo.h>
Public Member Functions | |
DDHCalBarrelAlgo () | |
void | execute () |
double | getAbsorbD (unsigned int i) const |
int | getAbsorberN () const |
std::string | getAbsorbMat (unsigned int i) const |
std::string | getAbsorbName (unsigned int i) const |
double | getAbsorbT (unsigned int i) const |
double | getDetdP1 (unsigned int i) const |
double | getDetdP2 (unsigned int i) const |
std::string | getDetMat () const |
std::string | getDetMatPl () const |
std::string | getDetMatSc () const |
int | getDetPosY (unsigned int i) const |
double | getDetT11 (unsigned int i) const |
double | getDetT12 (unsigned int i) const |
double | getDetT21 (unsigned int i) const |
double | getDetT22 (unsigned int i) const |
double | getDetTsc (unsigned int i) const |
int | getDetType (unsigned int i) const |
double | getDetWidth1 (unsigned int i) const |
double | getDetWidth2 (unsigned int i) const |
std::string | getGenMaterial () const |
int | getLayerAbsorb (unsigned int i) const |
double | getLayerAlpha (unsigned i) const |
double | getLayerD1 (unsigned i) const |
double | getLayerD2 (unsigned i) const |
double | getLayerGap (unsigned int i) const |
int | getLayerId (unsigned i) const |
std::string | getLayerLabel (unsigned i) const |
std::string | getLayerMaterial (unsigned i) const |
double | getLayerT1 (unsigned i) const |
double | getLayerT2 (unsigned i) const |
double | getLayerWidth (unsigned i) const |
std::string | getMidAbsMat (unsigned int i) const |
std::string | getMidAbsName (unsigned int i) const |
int | getMidAbsorber () const |
double | getMidAbsT (unsigned int i) const |
double | getMidAbsW (unsigned int i) const |
double | getMiddleD () const |
std::string | getMiddleMat () const |
double | getMiddleW () const |
int | getNhalf () const |
int | getNLayers () const |
int | getNsectors () const |
int | getNsectortot () const |
double | getRin () const |
double | getRmax (unsigned int i) const |
double | getRout () const |
int | getRzones () const |
std::string | getSideAbsMat (unsigned int i) const |
std::string | getSideAbsName (unsigned int i) const |
int | getSideAbsorber () const |
double | getSideAbsW (unsigned int i) const |
double | getSideD (unsigned int i) const |
std::string | getSideMat (unsigned int i) const |
double | getSideT (unsigned int i) const |
double | getTanTheta (unsigned int i) const |
double | getTheta (unsigned int i) const |
double | getZoff (unsigned int i) const |
void | initialize (const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) |
virtual | ~DDHCalBarrelAlgo () |
Protected Member Functions | |
void | constructGeneralVolume () |
void | constructInsideDetectors (DDLogicalPart detector, std::string name, int id, double dx, double dy, double dz, int type) |
void | constructInsideLayers (DDLogicalPart laylog, std::string name, int id, int nAbs, double rin, double d1, double alpha1, double d2, double alpha2, double t1, double t2) |
void | constructInsideSector (DDLogicalPart sector) |
DDLogicalPart | constructMidLayer (DDLogicalPart laylog, std::string nm, double rin, double alpha) |
DDLogicalPart | constructSideLayer (DDLogicalPart laylog, std::string nm, int nAbs, double rin, double alpha) |
Private Attributes | |
std::vector< double > | absorbD |
std::vector< std::string > | absorbMat |
std::vector< std::string > | absorbName |
std::vector< double > | absorbT |
std::vector< double > | detdP1 |
std::vector< double > | detdP2 |
std::string | detMat |
std::string | detMatPl |
std::string | detMatSc |
std::vector< int > | detPosY |
std::string | detRot |
std::vector< double > | detT11 |
std::vector< double > | detT12 |
std::vector< double > | detT21 |
std::vector< double > | detT22 |
std::vector< double > | detTsc |
std::vector< int > | detType |
std::vector< double > | detWidth1 |
std::vector< double > | detWidth2 |
std::string | genMaterial |
std::string | idName |
std::string | idNameSpace |
int | idOffset |
std::vector< int > | layerAbsorb |
std::vector< double > | layerAlpha |
std::vector< double > | layerD1 |
std::vector< double > | layerD2 |
std::vector< double > | layerGap |
std::vector< int > | layerId |
std::vector< std::string > | layerLabel |
std::vector< std::string > | layerMat |
std::vector< double > | layerT1 |
std::vector< double > | layerT2 |
std::vector< double > | layerWidth |
double | middleD |
std::string | middleMat |
double | middleW |
std::vector< std::string > | midMat |
std::vector< std::string > | midName |
std::vector< double > | midT |
std::vector< double > | midW |
int | nAbsorber |
int | nhalf |
int | nLayers |
int | nMidAbs |
int | nsectors |
int | nsectortot |
int | nSideAbs |
double | rin |
std::vector< double > | rmax |
std::string | rotHalf |
std::string | rotns |
double | rout |
int | rzones |
std::vector< std::string > | sideAbsMat |
std::vector< std::string > | sideAbsName |
std::vector< double > | sideAbsW |
std::vector< double > | sideD |
std::vector< std::string > | sideMat |
std::vector< double > | sideT |
std::vector< double > | theta |
std::vector< double > | ttheta |
std::vector< double > | zoff |
Definition at line 10 of file DDHCalBarrelAlgo.h.
DDHCalBarrelAlgo::DDHCalBarrelAlgo | ( | ) |
Definition at line 23 of file DDHCalBarrelAlgo.cc.
References LogDebug.
00023 : 00024 theta(0),rmax(0),zoff(0),ttheta(0),layerId(0),layerLabel(0),layerMat(0), 00025 layerWidth(0),layerD1(0),layerD2(0),layerAlpha(0),layerT1(0),layerT2(0), 00026 layerAbsorb(0),layerGap(0),absorbName(0),absorbMat(0),absorbD(0),absorbT(0), 00027 midName(0),midMat(0),midW(0),midT(0),sideMat(0),sideD(0),sideT(0), 00028 sideAbsName(0),sideAbsMat(0),sideAbsW(0),detType(0),detdP1(0),detdP2(0), 00029 detT11(0),detT12(0),detTsc(0),detT21(0),detT22(0),detWidth1(0),detWidth2(0), 00030 detPosY(0) { 00031 LogDebug("HCalGeom") << "DDHCalBarrelAlgo info: Creating an instance"; 00032 }
DDHCalBarrelAlgo::~DDHCalBarrelAlgo | ( | ) | [virtual] |
void DDHCalBarrelAlgo::constructGeneralVolume | ( | ) | [protected] |
Definition at line 199 of file DDHCalBarrelAlgo.cc.
References constructInsideSector(), dbl_to_string(), DDpos(), DDrot(), DDSplit(), first, getGenMaterial(), getNhalf(), getNsectors(), getNsectortot(), getRin(), getRmax(), getRout(), getTanTheta(), getZoff(), i, idName, idNameSpace, LogDebug, name, DDBase< N, C >::name(), dbtoconf::parent, phi, pi, DDSolidFactory::polyhedra(), rin, rot, rotHalf, rotns, rout, and edm::second().
Referenced by execute().
00199 { 00200 00201 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: General volume..."; 00202 unsigned int i=0; 00203 00204 DDRotation rot = DDRotation(); 00205 00206 double alpha = pi/getNsectors(); 00207 double dphi = getNsectortot()*twopi/getNsectors(); 00208 int nsec, ntot=15; 00209 if (getNhalf() == 1) 00210 nsec = 8; 00211 else 00212 nsec = 15; 00213 int nf = ntot - nsec; 00214 00215 //Calculate zmin... see HCalBarrel.hh picture. For polyhedra 00216 //Rmin and Rmax are distances to vertex 00217 double zmax = getZoff(3); 00218 double zstep5 = getZoff(4); 00219 double zstep4 =(getZoff(1) + getRmax(1)*getTanTheta(1)); 00220 if ((getZoff(2)+getRmax(1)*getTanTheta(2)) > zstep4) 00221 zstep4 = (getZoff(2)+getRmax(1)*getTanTheta(2)); 00222 double zstep3 =(getZoff(1) + getRmax(0)*getTanTheta(1)); 00223 double zstep2 =(getZoff(0) + getRmax(0)*getTanTheta(0)); 00224 double zstep1 =(getZoff(0) + getRin() *getTanTheta(0)); 00225 double rout = getRout(); 00226 double rout1 = getRmax(3); 00227 double rin = getRin(); 00228 double rmid1 = getRmax(0); 00229 double rmid2 = getRmax(1); 00230 double rmid3 =(getZoff(4) - getZoff(2))/getTanTheta(2); 00231 double rmid4 = getRmax(2); 00232 00233 vector<double> pgonZ; 00234 pgonZ.push_back( -zmax); 00235 pgonZ.push_back( -zstep5); 00236 pgonZ.push_back( -zstep5); 00237 pgonZ.push_back( -zstep4); 00238 pgonZ.push_back( -zstep3); 00239 pgonZ.push_back( -zstep2); 00240 pgonZ.push_back( -zstep1); 00241 pgonZ.push_back( 0); 00242 pgonZ.push_back( zstep1); 00243 pgonZ.push_back( zstep2); 00244 pgonZ.push_back( zstep3); 00245 pgonZ.push_back( zstep4); 00246 pgonZ.push_back( zstep5); 00247 pgonZ.push_back( zstep5); 00248 pgonZ.push_back( zmax); 00249 00250 vector<double> pgonRmin; 00251 pgonRmin.push_back( rmid4); 00252 pgonRmin.push_back( rmid3); 00253 pgonRmin.push_back( rmid3); 00254 pgonRmin.push_back( rmid2); 00255 pgonRmin.push_back( rmid1); 00256 pgonRmin.push_back( rmid1); 00257 pgonRmin.push_back( rin); 00258 pgonRmin.push_back( rin); 00259 pgonRmin.push_back( rin); 00260 pgonRmin.push_back( rmid1); 00261 pgonRmin.push_back( rmid1); 00262 pgonRmin.push_back( rmid2); 00263 pgonRmin.push_back( rmid3); 00264 pgonRmin.push_back( rmid3); 00265 pgonRmin.push_back( rmid4); 00266 00267 vector<double> pgonRmax; 00268 pgonRmax.push_back( rout1); 00269 pgonRmax.push_back( rout1); 00270 pgonRmax.push_back( rout); 00271 pgonRmax.push_back( rout); 00272 pgonRmax.push_back( rout); 00273 pgonRmax.push_back( rout); 00274 pgonRmax.push_back( rout); 00275 pgonRmax.push_back( rout); 00276 pgonRmax.push_back( rout); 00277 pgonRmax.push_back( rout); 00278 pgonRmax.push_back( rout); 00279 pgonRmax.push_back( rout); 00280 pgonRmax.push_back( rout); 00281 pgonRmax.push_back( rout1); 00282 pgonRmax.push_back( rout1); 00283 00284 vector<double> pgonZHalf; 00285 pgonZHalf.push_back( 0); 00286 pgonZHalf.push_back( zstep1); 00287 pgonZHalf.push_back( zstep2); 00288 pgonZHalf.push_back( zstep3); 00289 pgonZHalf.push_back( zstep4); 00290 pgonZHalf.push_back( zstep5); 00291 pgonZHalf.push_back( zstep5); 00292 pgonZHalf.push_back( zmax); 00293 00294 vector<double> pgonRminHalf; 00295 pgonRminHalf.push_back( rin); 00296 pgonRminHalf.push_back( rin); 00297 pgonRminHalf.push_back( rmid1); 00298 pgonRminHalf.push_back( rmid1); 00299 pgonRminHalf.push_back( rmid2); 00300 pgonRminHalf.push_back( rmid3); 00301 pgonRminHalf.push_back( rmid3); 00302 pgonRminHalf.push_back( rmid4); 00303 00304 vector<double> pgonRmaxHalf; 00305 pgonRmaxHalf.push_back( rout); 00306 pgonRmaxHalf.push_back( rout); 00307 pgonRmaxHalf.push_back( rout); 00308 pgonRmaxHalf.push_back( rout); 00309 pgonRmaxHalf.push_back( rout); 00310 pgonRmaxHalf.push_back( rout); 00311 pgonRmaxHalf.push_back( rout1); 00312 pgonRmaxHalf.push_back( rout1); 00313 00314 string name("Null"); 00315 DDSolid solid; 00316 if (nf == 0) { 00317 solid = DDSolidFactory::polyhedra(DDName(idName, idNameSpace), 00318 getNsectortot(), -alpha, dphi, pgonZ, 00319 pgonRmin, pgonRmax); 00320 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " 00321 << DDName(idName, idNameSpace) <<" Polyhedra made of " 00322 << getGenMaterial() << " with " << getNsectortot() 00323 << " sectors from " << -alpha/deg <<" to " 00324 << (-alpha+dphi)/deg << " and with " << nsec 00325 << " sections "; 00326 for (i = 0; i <pgonZ.size(); i++) { 00327 LogDebug("HCalGeom") << "\t" << "\tZ = " << pgonZ[i] << "\tRmin = " 00328 << pgonRmin[i] << "\tRmax = " << pgonRmax[i]; 00329 } 00330 } else { 00331 solid = DDSolidFactory::polyhedra(DDName(idName, idNameSpace), 00332 getNsectortot(), -alpha, dphi, pgonZHalf, 00333 pgonRminHalf, pgonRmaxHalf); 00334 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " 00335 << DDName(idName, idNameSpace) <<" Polyhedra made of " 00336 << getGenMaterial() << " with " << getNsectortot() 00337 << " sectors from " << -alpha/deg << " to " 00338 << (-alpha+dphi)/deg << " and with " << nsec 00339 << " sections "; 00340 for (i = 0; i < pgonZHalf.size(); i++) { 00341 LogDebug("HCalGeom") << "\t" << "\tZ = " << pgonZHalf[i] << "\tRmin = " 00342 << pgonRminHalf[i] << "\tRmax = " <<pgonRmaxHalf[i]; 00343 } 00344 } 00345 00346 00347 DDName matname(DDSplit(getGenMaterial()).first, DDSplit(getGenMaterial()).second); 00348 DDMaterial matter(matname); 00349 DDLogicalPart genlogic(DDName(idName, idNameSpace), matter, solid); 00350 00351 DDName parentName = parent().name(); 00352 DDTranslation r0(0,0,0); 00353 DDpos(DDName(idName, idNameSpace), parentName, 1, r0, rot); 00354 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " 00355 << DDName(idName, idNameSpace) << " number 1 positioned" 00356 << " in " << parentName << " at " << r0 <<" with "<<rot; 00357 00358 //Forward and backwards halfs 00359 name = idName + "Half"; 00360 nf = (ntot+1)/2; 00361 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << DDName(name,idNameSpace) 00362 << " Polyhedra made of " << getGenMaterial() << " with " 00363 << getNsectortot() << " sectors from " << -alpha/deg 00364 << " to " << (-alpha+dphi)/deg << " and with " << nf 00365 << " sections "; 00366 for (i = 0; i < pgonZHalf.size(); i++) { 00367 LogDebug("HCalGeom") << "\t" << "\tZ = " << pgonZHalf[i] << "\tRmin = " 00368 << pgonRminHalf[i] << "\tRmax = " << pgonRmaxHalf[i]; 00369 } 00370 00371 solid = DDSolidFactory::polyhedra(DDName(name, idNameSpace), 00372 getNsectortot(), -alpha, dphi, pgonZHalf, 00373 pgonRminHalf, pgonRmaxHalf); 00374 DDLogicalPart genlogich(DDName(name, idNameSpace), matter, solid); 00375 00376 DDpos(genlogich, genlogic, 1, r0, rot); 00377 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << genlogich.name() 00378 << " number 1 positioned in " << genlogic.name() 00379 << " at " << r0 << " with " << rot; 00380 00381 if (getNhalf() != 1) { 00382 rot = DDRotation(DDName(rotHalf, rotns)); 00383 DDpos (genlogich, genlogic, 2, r0, rot); 00384 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << genlogich.name() 00385 << " number 2 positioned in " << genlogic.name() 00386 << " at " << r0 << " with " << rot; 00387 } //end if (getNhalf... 00388 00389 //Construct sector (from -alpha to +alpha) 00390 name = idName + "Module"; 00391 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << DDName(name,idNameSpace) 00392 << " Polyhedra made of " << getGenMaterial() 00393 << " with 1 sector from " << -alpha/deg << " to " 00394 << alpha/deg << " and with " << nf << " sections"; 00395 for (i = 0; i < pgonZHalf.size(); i++) { 00396 LogDebug("HCalGeom") << "\t" << "\tZ = " << pgonZHalf[i] << "\tRmin = " 00397 << pgonRminHalf[i] << "\tRmax = " << pgonRmaxHalf[i]; 00398 } 00399 00400 solid = DDSolidFactory::polyhedra(DDName(name, idNameSpace), 00401 1, -alpha, 2*alpha, pgonZHalf, 00402 pgonRminHalf, pgonRmaxHalf); 00403 DDLogicalPart seclogic(DDName(name, idNameSpace), matter, solid); 00404 00405 for (int ii=0; ii<getNsectortot(); ii++) { 00406 double phi = ii*2*alpha; 00407 double phideg = phi/deg; 00408 00409 DDRotation rotation; 00410 string rotstr("NULL"); 00411 if (phideg != 0) { 00412 rotstr = "R"; 00413 if (phideg < 100) rotstr = "R0"; 00414 rotstr = rotstr + dbl_to_string(phideg); 00415 rotation = DDRotation(DDName(rotstr, rotns)); 00416 if (!rotation) { 00417 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: Creating a new rotat" 00418 << "ion " << rotstr << "\t" << 90 << "," << phideg 00419 << "," << 90 << "," << (phideg+90) << ", 0, 0"; 00420 rotation = DDrot(DDName(rotstr, rotns), 90*deg, phideg*deg, 00421 90*deg, (90+phideg)*deg, 0*deg, 0*deg); 00422 } //if !rotation 00423 } //if phideg!=0 00424 00425 DDpos (seclogic, genlogich, ii+1, r0, rotation); 00426 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << seclogic.name() 00427 << " number " << ii+1 << " positioned in " 00428 << genlogich.name() << " at " << r0 << " with " 00429 << rotation; 00430 } 00431 00432 //Construct the things inside the sector 00433 constructInsideSector(seclogic); 00434 }
void DDHCalBarrelAlgo::constructInsideDetectors | ( | DDLogicalPart | detector, | |
std::string | name, | |||
int | id, | |||
double | dx, | |||
double | dy, | |||
double | dz, | |||
int | type | |||
) | [protected] |
void DDHCalBarrelAlgo::constructInsideLayers | ( | DDLogicalPart | laylog, | |
std::string | name, | |||
int | id, | |||
int | nAbs, | |||
double | rin, | |||
double | d1, | |||
double | alpha1, | |||
double | d2, | |||
double | alpha2, | |||
double | t1, | |||
double | t2 | |||
) | [protected] |
Referenced by constructInsideSector().
void DDHCalBarrelAlgo::constructInsideSector | ( | DDLogicalPart | sector | ) | [protected] |
!!!!!!!!!!!!!!!!Should be zero. And removed as soon as
Definition at line 437 of file DDHCalBarrelAlgo.cc.
References constructInsideLayers(), DDpos(), DDSplit(), e, first, getLayerAbsorb(), getLayerAlpha(), getLayerD1(), getLayerD2(), getLayerGap(), getLayerId(), getLayerLabel(), getLayerMaterial(), getLayerT1(), getLayerT2(), getLayerWidth(), getNLayers(), getNsectors(), getRin(), getRmax(), getRzones(), getTanTheta(), getZoff(), i, idName, idNameSpace, in, j, k, LogDebug, name, DDBase< N, C >::name(), out, pi, DDSolidFactory::polyhedra(), rin, rout, edm::second(), funct::tan(), and width.
Referenced by constructGeneralVolume().
00437 { 00438 00439 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: Layers (" << getNLayers() 00440 << ") ..."; 00441 00442 double alpha = pi/getNsectors(); 00443 double rin = getRin(); 00444 for (int i = 0; i < getNLayers(); i++) { 00445 string name = idName + getLayerLabel(i); 00446 DDName matname(DDSplit(getLayerMaterial(i)).first, 00447 DDSplit(getLayerMaterial(i)).second); //idNameSpace); 00448 DDMaterial matter(matname); 00449 00450 double width = getLayerWidth(i); 00451 double rout = rin + width; 00452 00453 int in = 0, out = 0; 00454 for (int j = 0; j < getRzones()-1; j++) { 00455 if (rin >= getRmax(j)) in = j+1; 00456 if (rout> getRmax(j)) out= j+1; 00457 } 00458 double zout = getZoff(in) + rin*getTanTheta(in); 00459 00461 //vertical walls are allowed in SolidPolyhedra 00462 double deltaz = 0; 00463 int nsec=2; 00464 vector<double> pgonZ, pgonRmin, pgonRmax; 00465 // index 0 00466 pgonZ.push_back(0); 00467 pgonRmin.push_back(rin); 00468 pgonRmax.push_back(rout); 00469 // index 1 00470 pgonZ.push_back(zout); 00471 pgonRmin.push_back(rin); 00472 pgonRmax.push_back(rout); 00473 if (in == out) { 00474 if (in <= 3) { 00475 //index 2 00476 pgonZ.push_back(getZoff(in) + rout*getTanTheta(in)); 00477 pgonRmin.push_back(pgonRmax[1]); 00478 pgonRmax.push_back(pgonRmax[1]); 00479 nsec++; 00480 } 00481 } else { 00482 if (in == 3) { 00483 //redo index 1, add index 2 00484 pgonZ[1] =(getZoff(out) + getRmax(out)*getTanTheta(out)); 00485 pgonZ.push_back(pgonZ[1] + deltaz); 00486 pgonRmin.push_back(pgonRmin[1]); 00487 pgonRmax.push_back(getRmax(in)); 00488 //index 3 00489 pgonZ.push_back(getZoff(in) + getRmax(in)*getTanTheta(in)); 00490 pgonRmin.push_back(pgonRmin[2]); 00491 pgonRmax.push_back(pgonRmax[2]); 00492 nsec += 2; 00493 } else { 00494 //index 2 00495 pgonZ.push_back(getZoff(in) + getRmax(in)*getTanTheta(in)); 00496 pgonRmin.push_back(getRmax(in)); 00497 pgonRmax.push_back(pgonRmax[1]); 00498 nsec++; 00499 if (in == 0) { 00500 pgonZ.push_back(getZoff(out) + getRmax(in)*getTanTheta(out)); 00501 pgonRmin.push_back(pgonRmin[2]); 00502 pgonRmax.push_back(pgonRmax[2]); 00503 nsec++; 00504 } 00505 if (in <= 1) { 00506 pgonZ.push_back(getZoff(out) + rout*getTanTheta(out)); 00507 pgonRmin.push_back(rout); 00508 pgonRmax.push_back(rout); 00509 nsec++; 00510 } 00511 } 00512 } 00513 //Solid & volume 00514 DDSolid solid; 00515 double alpha1 = alpha; 00516 if (getLayerGap(i)>1.e-6) { 00517 double rmid = 0.5*(rin+rout); 00518 double width = rmid*tan(alpha) - getLayerGap(i); 00519 alpha1 = atan(width/rmid); 00520 LogDebug("HCalGeom") << "\t" << "Alpha_1 modified from " << alpha/deg 00521 << " to " << alpha1/deg << " Rmid " << rmid 00522 << " Reduced width " << width; 00523 } 00524 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << name << " (Layer " 00525 << i << ") Polyhedra made of " << getLayerMaterial(i) 00526 << " with 1 sector from " << -alpha1/deg << " to " 00527 << alpha1/deg << " and with " << nsec << " sections"; 00528 for (unsigned int k=0; k<pgonZ.size(); k++) { 00529 LogDebug("HCalGeom") << "\t" << "\t" << pgonZ[k] << "\t" << pgonRmin[k] 00530 << "\t" << pgonRmax[k]; 00531 } 00532 solid = DDSolidFactory::polyhedra(DDName(name, idNameSpace), 00533 1, -alpha1, 2*alpha1, 00534 pgonZ, pgonRmin, pgonRmax); 00535 DDLogicalPart glog(DDName(name, idNameSpace), matter, solid); 00536 00537 DDpos (glog, sector, getLayerId(i), DDTranslation(0.0, 0.0, 0.0), 00538 DDRotation()); 00539 LogDebug("HCalGeom") << "DDHCalBarrelAlgo test: " << glog.name() 00540 << " number " << getLayerId(i) << " positioned in " 00541 << sector.name() << " at (0,0,0) with no rotation"; 00542 00543 constructInsideLayers(glog, getLayerLabel(i), getLayerId(i), 00544 getLayerAbsorb(i), rin, getLayerD1(i), alpha1, 00545 getLayerD2(i), getLayerAlpha(i), getLayerT1(i), 00546 getLayerT2(i)); 00547 rin = rout; 00548 } 00549 00550 }
DDLogicalPart DDHCalBarrelAlgo::constructMidLayer | ( | DDLogicalPart | laylog, | |
std::string | nm, | |||
double | rin, | |||
double | alpha | |||
) | [protected] |
DDLogicalPart DDHCalBarrelAlgo::constructSideLayer | ( | DDLogicalPart | laylog, | |
std::string | nm, | |||
int | nAbs, | |||
double | rin, | |||
double | alpha | |||
) | [protected] |
void DDHCalBarrelAlgo::execute | ( | ) |
Definition at line 190 of file DDHCalBarrelAlgo.cc.
References constructGeneralVolume(), and LogDebug.
00190 { 00191 00192 LogDebug("HCalGeom") << "==>> Constructing DDHCalBarrelAlgo..."; 00193 constructGeneralVolume(); 00194 LogDebug("HCalGeom") << "<<== End of DDHCalBarrelAlgo construction ..."; 00195 }
double DDHCalBarrelAlgo::getAbsorbD | ( | unsigned int | i | ) | const [inline] |
int DDHCalBarrelAlgo::getAbsorberN | ( | ) | const [inline] |
std::string DDHCalBarrelAlgo::getAbsorbMat | ( | unsigned int | i | ) | const [inline] |
std::string DDHCalBarrelAlgo::getAbsorbName | ( | unsigned int | i | ) | const [inline] |
Definition at line 51 of file DDHCalBarrelAlgo.h.
References absorbName.
00051 {return absorbName[i];}
double DDHCalBarrelAlgo::getAbsorbT | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetdP1 | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetdP2 | ( | unsigned int | i | ) | const [inline] |
std::string DDHCalBarrelAlgo::getDetMat | ( | ) | const [inline] |
std::string DDHCalBarrelAlgo::getDetMatPl | ( | ) | const [inline] |
std::string DDHCalBarrelAlgo::getDetMatSc | ( | ) | const [inline] |
double DDHCalBarrelAlgo::getDetT11 | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetT12 | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetT21 | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetT22 | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetTsc | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetWidth1 | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getDetWidth2 | ( | unsigned int | i | ) | const [inline] |
std::string DDHCalBarrelAlgo::getGenMaterial | ( | ) | const [inline] |
Definition at line 17 of file DDHCalBarrelAlgo.h.
References genMaterial.
Referenced by constructGeneralVolume().
00017 {return genMaterial;}
Definition at line 39 of file DDHCalBarrelAlgo.h.
References layerAbsorb.
Referenced by constructInsideSector().
00039 {return layerAbsorb[i];}
double DDHCalBarrelAlgo::getLayerAlpha | ( | unsigned | i | ) | const [inline] |
Definition at line 36 of file DDHCalBarrelAlgo.h.
References layerAlpha.
Referenced by constructInsideSector().
00036 {return layerAlpha[i];}
double DDHCalBarrelAlgo::getLayerD1 | ( | unsigned | i | ) | const [inline] |
Definition at line 34 of file DDHCalBarrelAlgo.h.
References layerD1.
Referenced by constructInsideSector().
double DDHCalBarrelAlgo::getLayerD2 | ( | unsigned | i | ) | const [inline] |
Definition at line 35 of file DDHCalBarrelAlgo.h.
References layerD2.
Referenced by constructInsideSector().
double DDHCalBarrelAlgo::getLayerGap | ( | unsigned int | i | ) | const [inline] |
Definition at line 40 of file DDHCalBarrelAlgo.h.
References layerGap.
Referenced by constructInsideSector().
int DDHCalBarrelAlgo::getLayerId | ( | unsigned | i | ) | const [inline] |
Definition at line 30 of file DDHCalBarrelAlgo.h.
References layerId.
Referenced by constructInsideSector().
std::string DDHCalBarrelAlgo::getLayerLabel | ( | unsigned | i | ) | const [inline] |
Definition at line 31 of file DDHCalBarrelAlgo.h.
References layerLabel.
Referenced by constructInsideSector().
00031 {return layerLabel[i];}
std::string DDHCalBarrelAlgo::getLayerMaterial | ( | unsigned | i | ) | const [inline] |
Definition at line 32 of file DDHCalBarrelAlgo.h.
References layerMat.
Referenced by constructInsideSector().
double DDHCalBarrelAlgo::getLayerT1 | ( | unsigned | i | ) | const [inline] |
Definition at line 37 of file DDHCalBarrelAlgo.h.
References layerT1.
Referenced by constructInsideSector().
double DDHCalBarrelAlgo::getLayerT2 | ( | unsigned | i | ) | const [inline] |
Definition at line 38 of file DDHCalBarrelAlgo.h.
References layerT2.
Referenced by constructInsideSector().
double DDHCalBarrelAlgo::getLayerWidth | ( | unsigned | i | ) | const [inline] |
Definition at line 33 of file DDHCalBarrelAlgo.h.
References layerWidth.
Referenced by constructInsideSector().
00033 {return layerWidth[i];}
std::string DDHCalBarrelAlgo::getMidAbsMat | ( | unsigned int | i | ) | const [inline] |
std::string DDHCalBarrelAlgo::getMidAbsName | ( | unsigned int | i | ) | const [inline] |
int DDHCalBarrelAlgo::getMidAbsorber | ( | ) | const [inline] |
double DDHCalBarrelAlgo::getMidAbsT | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getMidAbsW | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getMiddleD | ( | ) | const [inline] |
std::string DDHCalBarrelAlgo::getMiddleMat | ( | ) | const [inline] |
double DDHCalBarrelAlgo::getMiddleW | ( | ) | const [inline] |
int DDHCalBarrelAlgo::getNhalf | ( | ) | const [inline] |
Definition at line 20 of file DDHCalBarrelAlgo.h.
References nhalf.
Referenced by constructGeneralVolume().
00020 {return nhalf;}
int DDHCalBarrelAlgo::getNLayers | ( | ) | const [inline] |
Definition at line 29 of file DDHCalBarrelAlgo.h.
References nLayers.
Referenced by constructInsideSector().
00029 {return nLayers;}
int DDHCalBarrelAlgo::getNsectors | ( | ) | const [inline] |
Definition at line 18 of file DDHCalBarrelAlgo.h.
References nsectors.
Referenced by constructGeneralVolume(), and constructInsideSector().
00018 {return nsectors;}
int DDHCalBarrelAlgo::getNsectortot | ( | ) | const [inline] |
Definition at line 19 of file DDHCalBarrelAlgo.h.
References nsectortot.
Referenced by constructGeneralVolume().
00019 {return nsectortot;}
double DDHCalBarrelAlgo::getRin | ( | ) | const [inline] |
Definition at line 21 of file DDHCalBarrelAlgo.h.
References rin.
Referenced by constructGeneralVolume(), and constructInsideSector().
00021 {return rin;}
double DDHCalBarrelAlgo::getRmax | ( | unsigned int | i | ) | const [inline] |
Definition at line 26 of file DDHCalBarrelAlgo.h.
References rmax.
Referenced by constructGeneralVolume(), and constructInsideSector().
double DDHCalBarrelAlgo::getRout | ( | ) | const [inline] |
Definition at line 22 of file DDHCalBarrelAlgo.h.
References rout.
Referenced by constructGeneralVolume().
00022 {return rout;}
int DDHCalBarrelAlgo::getRzones | ( | ) | const [inline] |
Definition at line 23 of file DDHCalBarrelAlgo.h.
References rzones.
Referenced by constructInsideSector().
00023 {return rzones;}
std::string DDHCalBarrelAlgo::getSideAbsMat | ( | unsigned int | i | ) | const [inline] |
Definition at line 47 of file DDHCalBarrelAlgo.h.
References sideAbsMat.
00047 {return sideAbsMat[i];}
std::string DDHCalBarrelAlgo::getSideAbsName | ( | unsigned int | i | ) | const [inline] |
Definition at line 46 of file DDHCalBarrelAlgo.h.
References sideAbsName.
00046 {return sideAbsName[i];}
int DDHCalBarrelAlgo::getSideAbsorber | ( | ) | const [inline] |
double DDHCalBarrelAlgo::getSideAbsW | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getSideD | ( | unsigned int | i | ) | const [inline] |
std::string DDHCalBarrelAlgo::getSideMat | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getSideT | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getTanTheta | ( | unsigned int | i | ) | const [inline] |
Definition at line 24 of file DDHCalBarrelAlgo.h.
References ttheta.
Referenced by constructGeneralVolume(), and constructInsideSector().
double DDHCalBarrelAlgo::getTheta | ( | unsigned int | i | ) | const [inline] |
double DDHCalBarrelAlgo::getZoff | ( | unsigned int | i | ) | const [inline] |
Definition at line 27 of file DDHCalBarrelAlgo.h.
References zoff.
Referenced by constructGeneralVolume(), and constructInsideSector().
void DDHCalBarrelAlgo::initialize | ( | const DDNumericArguments & | nArgs, | |
const DDVectorArguments & | vArgs, | |||
const DDMapArguments & | mArgs, | |||
const DDStringArguments & | sArgs, | |||
const DDStringVectorArguments & | vsArgs | |||
) |
Definition at line 37 of file DDHCalBarrelAlgo.cc.
References absorbD, absorbMat, absorbName, absorbT, dbl_to_int(), detdP1, detdP2, detMat, detMatPl, detMatSc, detPosY, detRot, detT11, detT12, detT21, detT22, detTsc, detType, detWidth1, detWidth2, genMaterial, i, idName, idNameSpace, idOffset, int, layerAbsorb, layerAlpha, layerD1, layerD2, layerGap, layerId, layerLabel, layerMat, layerT1, layerT2, layerWidth, LogDebug, middleD, middleMat, middleW, midMat, midName, midT, midW, nAbsorber, nhalf, nLayers, nMidAbs, DDCurrentNamespace::ns(), nsectors, nsectortot, nSideAbs, dbtoconf::parent, rin, rmax, rotHalf, rotns, rout, rzones, sideAbsMat, sideAbsName, sideAbsW, sideD, sideMat, sideT, funct::tan(), theta, ttheta, and zoff.
00041 { 00042 00043 genMaterial = sArgs["MaterialName"]; 00044 nsectors = int (nArgs["NSector"]); 00045 nsectortot = int (nArgs["NSectorTot"]); 00046 nhalf = int (nArgs["NHalf"]); 00047 rin = nArgs["RIn"]; 00048 rout = nArgs["ROut"]; 00049 rzones = int (nArgs["RZones"]); 00050 rotHalf = sArgs["RotHalf"]; 00051 rotns = sArgs["RotNameSpace"]; 00052 00053 theta = vArgs["Theta"]; 00054 rmax = vArgs["RMax"]; 00055 zoff = vArgs["ZOff"]; 00056 int i = 0; 00057 for (i = 0; i < rzones; i++) { 00058 ttheta.push_back(tan(theta[i])); //*deg already done in XML 00059 } 00060 if (rzones > 3) 00061 rmax[2] = (zoff[3] - zoff[2]) / ttheta[2]; 00062 00063 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: General material " 00064 << genMaterial << "\tSectors " << nsectors << ", " 00065 << nsectortot <<"\tHalves " << nhalf 00066 << "\tRotation matrix " << rotns << ":" << rotHalf 00067 << "\n\t\t" << rin << "\t" << rout << "\t" << rzones; 00068 for (i = 0; i < rzones; i++) { 00069 LogDebug("HCalGeom") << "\tTheta[" << i << "] = " << theta[i] << "\trmax[" 00070 << i << "] = " << rmax[i] << "\tzoff[" << i << "] = " 00071 << zoff[i]; 00072 } 00074 //Layers 00075 nLayers = int(nArgs["NLayers"]); 00076 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: Layer\t" << nLayers; 00077 layerId = dbl_to_int (vArgs["Id"]); 00078 layerLabel = vsArgs["LayerLabel"]; 00079 layerMat = vsArgs["LayerMat"]; 00080 layerWidth = vArgs["LayerWidth"]; 00081 layerD1 = vArgs["D1"]; 00082 layerD2 = vArgs["D2"]; 00083 layerAlpha = vArgs["Alpha2"]; 00084 layerT1 = vArgs["T1"]; 00085 layerT2 = vArgs["T2"]; 00086 layerAbsorb = dbl_to_int(vArgs["AbsL"]); 00087 layerGap = vArgs["Gap"]; 00088 for (i = 0; i < nLayers; i++) { 00089 LogDebug("HCalGeom") << layerLabel[i] << "\t" << layerId[i] << "\t" 00090 << layerMat[i] << "\t" << layerWidth[i] << "\t" 00091 << layerD1[i] << "\t" << layerD2[i] << "\t" 00092 << layerAlpha[i] << "\t" << layerT1[i] << "\t" 00093 << layerT2[i] << "\t" << layerAbsorb[i] << "\t" 00094 << layerGap[i]; 00095 } 00096 00098 //Absorber Layers and middle part 00099 absorbName = vsArgs["AbsorbName"]; 00100 absorbMat = vsArgs["AbsorbMat"]; 00101 absorbD = vArgs["AbsorbD"]; 00102 absorbT = vArgs["AbsorbT"]; 00103 nAbsorber = absorbName.size(); 00104 for (i = 0; i < nAbsorber; i++) { 00105 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: " << absorbName[i] 00106 <<" Material " << absorbMat[i] << " d " << absorbD[i] 00107 << " t " <<absorbT[i]; 00108 } 00109 middleMat = sArgs["MiddleMat"]; 00110 middleD = nArgs["MiddleD"]; 00111 middleW = nArgs["MiddleW"]; 00112 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: Middle material " 00113 << middleMat << " d " << middleD << " w " << middleW; 00114 midName = vsArgs["MidAbsName"]; 00115 midMat = vsArgs["MidAbsMat"]; 00116 midW = vArgs["MidAbsW"]; 00117 midT = vArgs["MidAbsT"]; 00118 nMidAbs = midName.size(); 00119 for (i = 0; i < nMidAbs; i++) { 00120 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: " << midName[i] 00121 << " Material " << midMat[i] << " W " << midW[i] 00122 << " T " << midT[i]; 00123 } 00124 00125 //Absorber layers in the side part 00126 sideMat = vsArgs["SideMat"]; 00127 sideD = vArgs["SideD"]; 00128 sideT = vArgs["SideT"]; 00129 int nSide = sideMat.size(); 00130 for (int i = 0; i < nSide; i++) { 00131 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: Side material " 00132 << sideMat[i] << " d " << sideD[i] << " t " 00133 << sideT[i]; 00134 } 00135 sideAbsName = vsArgs["SideAbsName"]; 00136 sideAbsMat = vsArgs["SideAbsMat"]; 00137 sideAbsW = vArgs["SideAbsW"]; 00138 nSideAbs = sideAbsName.size(); 00139 for (i = 0; i < nSideAbs; i++) { 00140 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: " << sideAbsName[i] 00141 <<" Material " << sideAbsMat[i] << " W " 00142 << sideAbsW[i]; 00143 } 00144 00146 // Detectors 00147 00148 detMat = sArgs["DetMat"]; 00149 detRot = sArgs["DetRot"]; 00150 detMatPl = sArgs["DetMatPl"]; 00151 detMatSc = sArgs["DetMatSc"]; 00152 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: Detector (" << nLayers 00153 << ") Rotation matrix " << rotns << ":" << detRot 00154 << "\n\t\t" << detMat << "\t" << detMatPl << "\t" 00155 << detMatSc; 00156 00157 detType = dbl_to_int(vArgs["DetType"]); 00158 detdP1 = vArgs["DetdP1"]; 00159 detdP2 = vArgs["DetdP2"]; 00160 detT11 = vArgs["DetT11"]; 00161 detT12 = vArgs["DetT12"]; 00162 detTsc = vArgs["DetTsc"]; 00163 detT21 = vArgs["DetT21"]; 00164 detT22 = vArgs["DetT22"]; 00165 detWidth1 = vArgs["DetWidth1"]; 00166 detWidth2 = vArgs["DetWidth2"]; 00167 detPosY = dbl_to_int(vArgs["DetPosY"]); 00168 for (i = 0; i < nLayers; i ++) { 00169 LogDebug("HCalGeom") << i+1 << "\t" << detType[i] << "\t" << detdP1[i] 00170 << ", " << detdP2[i] << "\t" << detT11[i] << ", " 00171 << detT12[i] << "\t" << detTsc[i] << "\t" << detT21[i] 00172 <<", " << detT22[i] << "\t" << detWidth1[i] << "\t" 00173 << detWidth2[i] << "\t" << detPosY[i]; 00174 } 00175 00176 // idName = parentName.name(); 00177 idName = sArgs["MotherName"]; 00178 idNameSpace = DDCurrentNamespace::ns(); 00179 idOffset = int (nArgs["IdOffset"]); 00180 DDName parentName = parent().name(); 00181 LogDebug("HCalGeom") << "DDHCalBarrelAlgo debug: Parent " << parentName 00182 <<" idName " << idName << " NameSpace " << idNameSpace 00183 << " Offset " << idOffset; 00184 }
std::vector<double> DDHCalBarrelAlgo::absorbD [private] |
std::vector<std::string> DDHCalBarrelAlgo::absorbMat [private] |
std::vector<std::string> DDHCalBarrelAlgo::absorbName [private] |
std::vector<double> DDHCalBarrelAlgo::absorbT [private] |
std::vector<double> DDHCalBarrelAlgo::detdP1 [private] |
std::vector<double> DDHCalBarrelAlgo::detdP2 [private] |
std::string DDHCalBarrelAlgo::detMat [private] |
std::string DDHCalBarrelAlgo::detMatPl [private] |
std::string DDHCalBarrelAlgo::detMatSc [private] |
std::vector<int> DDHCalBarrelAlgo::detPosY [private] |
std::string DDHCalBarrelAlgo::detRot [private] |
std::vector<double> DDHCalBarrelAlgo::detT11 [private] |
std::vector<double> DDHCalBarrelAlgo::detT12 [private] |
std::vector<double> DDHCalBarrelAlgo::detT21 [private] |
std::vector<double> DDHCalBarrelAlgo::detT22 [private] |
std::vector<double> DDHCalBarrelAlgo::detTsc [private] |
std::vector<int> DDHCalBarrelAlgo::detType [private] |
std::vector<double> DDHCalBarrelAlgo::detWidth1 [private] |
std::vector<double> DDHCalBarrelAlgo::detWidth2 [private] |
std::string DDHCalBarrelAlgo::genMaterial [private] |
Definition at line 114 of file DDHCalBarrelAlgo.h.
Referenced by getGenMaterial(), and initialize().
std::string DDHCalBarrelAlgo::idName [private] |
Definition at line 216 of file DDHCalBarrelAlgo.h.
Referenced by constructGeneralVolume(), constructInsideSector(), and initialize().
std::string DDHCalBarrelAlgo::idNameSpace [private] |
Definition at line 217 of file DDHCalBarrelAlgo.h.
Referenced by constructGeneralVolume(), constructInsideSector(), and initialize().
int DDHCalBarrelAlgo::idOffset [private] |
std::vector<int> DDHCalBarrelAlgo::layerAbsorb [private] |
Definition at line 163 of file DDHCalBarrelAlgo.h.
Referenced by getLayerAbsorb(), and initialize().
std::vector<double> DDHCalBarrelAlgo::layerAlpha [private] |
std::vector<double> DDHCalBarrelAlgo::layerD1 [private] |
std::vector<double> DDHCalBarrelAlgo::layerD2 [private] |
std::vector<double> DDHCalBarrelAlgo::layerGap [private] |
std::vector<int> DDHCalBarrelAlgo::layerId [private] |
std::vector<std::string> DDHCalBarrelAlgo::layerLabel [private] |
std::vector<std::string> DDHCalBarrelAlgo::layerMat [private] |
Definition at line 156 of file DDHCalBarrelAlgo.h.
Referenced by getLayerMaterial(), and initialize().
std::vector<double> DDHCalBarrelAlgo::layerT1 [private] |
std::vector<double> DDHCalBarrelAlgo::layerT2 [private] |
std::vector<double> DDHCalBarrelAlgo::layerWidth [private] |
double DDHCalBarrelAlgo::middleD [private] |
std::string DDHCalBarrelAlgo::middleMat [private] |
double DDHCalBarrelAlgo::middleW [private] |
std::vector<std::string> DDHCalBarrelAlgo::midMat [private] |
std::vector<std::string> DDHCalBarrelAlgo::midName [private] |
std::vector<double> DDHCalBarrelAlgo::midT [private] |
std::vector<double> DDHCalBarrelAlgo::midW [private] |
int DDHCalBarrelAlgo::nAbsorber [private] |
int DDHCalBarrelAlgo::nhalf [private] |
int DDHCalBarrelAlgo::nLayers [private] |
int DDHCalBarrelAlgo::nMidAbs [private] |
Definition at line 174 of file DDHCalBarrelAlgo.h.
Referenced by getMidAbsorber(), and initialize().
int DDHCalBarrelAlgo::nsectors [private] |
int DDHCalBarrelAlgo::nsectortot [private] |
int DDHCalBarrelAlgo::nSideAbs [private] |
Definition at line 183 of file DDHCalBarrelAlgo.h.
Referenced by getSideAbsorber(), and initialize().
double DDHCalBarrelAlgo::rin [private] |
Definition at line 118 of file DDHCalBarrelAlgo.h.
Referenced by constructGeneralVolume(), constructInsideSector(), getRin(), and initialize().
std::vector<double> DDHCalBarrelAlgo::rmax [private] |
std::string DDHCalBarrelAlgo::rotHalf [private] |
Definition at line 124 of file DDHCalBarrelAlgo.h.
Referenced by constructGeneralVolume(), and initialize().
std::string DDHCalBarrelAlgo::rotns [private] |
Definition at line 125 of file DDHCalBarrelAlgo.h.
Referenced by constructGeneralVolume(), and initialize().
double DDHCalBarrelAlgo::rout [private] |
Definition at line 118 of file DDHCalBarrelAlgo.h.
Referenced by constructGeneralVolume(), constructInsideSector(), getRout(), and initialize().
int DDHCalBarrelAlgo::rzones [private] |
std::vector<std::string> DDHCalBarrelAlgo::sideAbsMat [private] |
std::vector<std::string> DDHCalBarrelAlgo::sideAbsName [private] |
Definition at line 184 of file DDHCalBarrelAlgo.h.
Referenced by getSideAbsName(), and initialize().
std::vector<double> DDHCalBarrelAlgo::sideAbsW [private] |
std::vector<double> DDHCalBarrelAlgo::sideD [private] |
std::vector<std::string> DDHCalBarrelAlgo::sideMat [private] |
std::vector<double> DDHCalBarrelAlgo::sideT [private] |
std::vector<double> DDHCalBarrelAlgo::theta [private] |
std::vector<double> DDHCalBarrelAlgo::ttheta [private] |
std::vector<double> DDHCalBarrelAlgo::zoff [private] |