/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Public Member Functions | Public Attributes
XmlDetDescGen::AD::gen::CylinderSelf Class Reference

List of all members.

Public Member Functions

def __init__
def parameters
def logvol

Public Attributes

 name
 radius
 height
 material
 parent
 child
 params
 lv

Detailed Description

Definition at line 107 of file gen.py.


Constructor & Destructor Documentation

def XmlDetDescGen::AD::gen::CylinderSelf::__init__ (   self,
  name,
  radius,
  height,
  material,
  parent = None,
  child = None 
)

Definition at line 108 of file gen.py.

00109                                                                          :
00110         self.name = name
00111         self.radius = radius
00112         self.height = height
00113         self.material=material
00114         self.parent = parent
00115         self.child = child
00116         self.params = []
00117         self.lv = None
00118         return


Member Function Documentation

def XmlDetDescGen::AD::gen::CylinderSelf::parameters (   self)
Build up the parameters for a cylinder based on thicknesses and parent values.

Definition at line 119 of file gen.py.

00120                         :
00121         """
00122         Build up the parameters for a cylinder based on thicknesses and parent values.
00123         """
00124         if self.params: return self.params
00125 
00126         from XmlDetDescGen.parameter import Parameter
00127 
00128         ts = []
00129         ps = []
00130         for thing,size in [("Radius",self.radius),
00131                             ("Height",self.height)]:
00132             t = Parameter("AD%s%s"%(self.name,thing),
00133                           size,
00134                           "%s for %s"%(thing,self.name.upper()))
00135             ts.append(t)
00136         if self.name=="sst":
00137             p = [Parameter("ADsstBotRibHeight",
00138                           "430*mm",
00139                            "Height for %s bottom ribs."%(self.name.upper())),
00140                  Parameter("SstFotHeight",
00141                            "10*mm",
00142                            "Height for %s feet."%(self.name.upper())),
00143                  Parameter("SstBotThickness",
00144                            "20*mm",
00145                            "%s bottom thickness."%(self.name.upper())),
00146                  Parameter("SstLidThickness",
00147                            "15*mm",
00148                            "%s bottom thickness."%(self.name.upper()))
00149                  ]
00150             ps.extend(p)
00151 
00152         if self.name=="oil":
00153             p = [Parameter("ADrftBotHeight",
00154                            "30*mm",
00155                            "Height for the bottom reflector in %s."
00156                            %(self.name.upper()))
00157                  ]
00158             ps.extend(p)
00159 
00160         self.params = ts + ps
00161         return self.params
    
def XmlDetDescGen::AD::gen::CylinderSelf::logvol (   self)

Definition at line 162 of file gen.py.

00163                     :
00164         if self.lv: return self.lv
00165 
00166         from XmlDetDescGen.geometry import Tubs,Logvol,Physvol,PosXYZ,RotXYZ
00167         from XmlDetDescGen.util import ExternalEntity
00168 
00169         pv = []
00170         if self.child:
00171             if self.name == 'sst':
00172                 pv.append(Physvol("pv"+self.child.name.upper(),
00173                                   self.child.logvol(),
00174                                   PosXYZ(0, 0,"(SstFotHeight+SstBotThickness-SstLidThickness)/2"),
00175                                   RotXYZ(rotZ="-1*ADrotation"))) # rotate the oil backwards from ADE
00176             elif self.name == 'oil':
00177                 pv.append(Physvol("pv"+self.child.name.upper(),
00178                                   self.child.logvol(),
00179                                   PosXYZ(0, 0, "ADrftBotHeight+ADsstBotRibHeight-ADoilHeight/2+(OavBrlHeight-OavBrlFlgThickness)/2"),
00180                                   RotXYZ(rotZ="ADrotation")))
00181             else:
00182                 pv.append(Physvol("pv"+self.child.name.upper(),
00183                                   self.child.logvol()))
00184 
00185         if self.name == 'oil':
00186             pv.append(Physvol('pvAdPmtArray',
00187                               '/dd/Geometry/AdPmts/lvAdPmtArray',
00188                               PosXYZ(0,0,0),
00189                               RotXYZ(rotZ="ADrotation")))
00190 
00191         pv.append(ExternalEntity("HandWrittenPhysVols"))
00192 
00193         self.lv = Logvol("lv"+self.name.upper(),self.material,
00194                          Tubs(self.name,
00195                               'AD%sHeight'%self.name,
00196                               'AD%sRadius'%self.name),
00197                          pv)
00198         return self.lv


Member Data Documentation

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.

Definition at line 108 of file gen.py.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 09:56:07 for XmlDetDesc by doxygen 1.7.4