GeomConverter/src/org/lcsim/detector/converter/compact
diff -u -r1.5 -r1.6
--- EcalBarrelConverter.java 18 Sep 2009 20:50:41 -0000 1.5
+++ EcalBarrelConverter.java 21 Sep 2009 19:49:36 -0000 1.6
@@ -13,7 +13,6 @@
import org.jdom.Element;
import org.lcsim.detector.DetectorElement;
import org.lcsim.detector.IDetectorElement;
-import org.lcsim.detector.ILogicalVolume;
import org.lcsim.detector.IPhysicalVolume;
import org.lcsim.detector.ITransform3D;
import org.lcsim.detector.ITranslation3D;
@@ -24,8 +23,8 @@
import org.lcsim.detector.Translation3D;
import org.lcsim.detector.identifier.ExpandedIdentifier;
import org.lcsim.detector.identifier.IExpandedIdentifier;
-import org.lcsim.detector.identifier.IIdentifierHelper;
import org.lcsim.detector.identifier.IIdentifier;
+import org.lcsim.detector.identifier.IIdentifierHelper;
import org.lcsim.detector.material.IMaterial;
import org.lcsim.detector.material.MaterialStore;
import org.lcsim.detector.solids.Box;
@@ -38,11 +37,14 @@
import org.lcsim.geometry.subdetector.EcalBarrel;
import org.lcsim.geometry.subdetector.PolyhedraBarrelCalorimeter;
+/**
+ * Implementation of the EcalBarrel detailed geometry.
+ * @author jeremym
+ */
public class EcalBarrelConverter
extends AbstractSubdetectorConverter
implements ISubdetectorConverter
{
- // TODO: Implement this method!
public void convert(Subdetector subdet, Detector detector)
{
Element node = subdet.getNode();
@@ -52,7 +54,6 @@
double innerR = cal.getInnerR();
Layering layering = cal.getLayering();
LayerStack layers = layering.getLayerStack();
- //double thickness = layering.getThickness();
double z = cal.getZLength();
String name = subdet.getName();
@@ -95,9 +96,7 @@
// Compute the top and bottom face measurements.
double moduleX2 = 2 * bo - dx;
double moduleX1 = 2 * bi + dx;
-
- //System.out.println("moduleX1,moduleX2,moduleY1,moduleY2,moduleZ: " + moduleX1+","+moduleX2+","+moduleY1+","+moduleY2+","+moduleZ);
-
+
// Create the trapezoid for the stave.
Trd moduleTrd = new Trd(
name + "_module_trd",
@@ -119,10 +118,10 @@
double layerZ = moduleTrd.getYHalfLength1();
double trdZ = moduleTrd.getZHalfLength();
- // ------
+ //
// Parameters for computing the layer X dimension,
// e.g. trapezoid's X1 value.
- // ------
+ //
// Adjacent angle of triangle.
double adj = (moduleTrd.getXHalfLength1() - moduleTrd.getXHalfLength2()) / 2;
@@ -152,21 +151,10 @@
double dphiLayer = PI * 2.0 / nsides;
// Half delta phi.
- double hphiLayer = dphiLayer / 2;
+ //double hphiLayer = dphiLayer / 2;
// Starting X dimension for the layer.
double layerDimX = moduleTrd.getXHalfLength1();
-
- //if (_debug)
- //{
- //System.out.println("slice start posZ=" + layerPositionZ);
- //System.out.println("dphi=" + toDegrees(dphiLayer));
- //System.out.println("hphi=" + toDegrees(hphi));
- //System.out.println("starting slice X=" + layerDimX);
- //System.out.println("adj=" + adj);
- //System.out.println("beta=" + toDegrees(beta));
- //System.out.println("");
- //}
int layerNumber = 0;
for (Iterator i = node.getChildren("layer").iterator(); i.hasNext();)
@@ -272,7 +260,6 @@
sliceNumber);
if (sensitive)
{
- //System.out.println("sensor slice: " + slicePhysVol.getName());
slicePhysVol.setSensitive(true);
}
@@ -304,16 +291,11 @@
//
// Phi start for a stave.
- //double phi = ((PI) / nsides) - PI/8;
- double phi=0;
-
- //System.out.println("phi start: " + phi);
-
+ double phi=0;
+
// Create DetectorElements for modules.
for (int i=0; i<nsides; i++)
- {
- //System.out.println("phi " + i + " : " + phi);
-
+ {
int moduleNumber = i;
RotationGeant rotation = new RotationGeant(PI*0.5, phi, 0);
@@ -344,15 +326,12 @@
//
// Start build DetectorElements.
//
- IIdentifierHelper helper = cal.getDetectorElement().getIdentifierHelper();
- System.out.println(helper.getIdentifierDictionary().toString());
+ IIdentifierHelper helper = cal.getDetectorElement().getIdentifierHelper();
for (IDetectorElement module : subdet.getDetectorElement().getChildren())
{
int sensorNum = 0;
- //int sectNum = module.getGeometry().getPhysicalVolume().getCopyNumber();
for (IPhysicalVolume layer : module.getGeometry().getLogicalVolume().getDaughters())
{
- //System.out.println("making DE for " + layer.getName());
IDetectorElement deLayer = new DetectorElement(
name + "_module" + module.getGeometry().getPhysicalVolume().getCopyNumber() + "_layer" + layer.getCopyNumber(),
module,
@@ -379,7 +358,6 @@
deLayer,
"/" + module.getName() + "/" + layer.getName() + "/" + slice.getName(),
sensorId);
- //System.out.println("created sensor: " + sensor.getName());
++sensorNum;
}
}