Commit in projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd on MAIN | |||
HPSTestRunTracker2014Dev1Builder.java | +5 | -110 | 3340 -> 3341 |
HPSTestRunTracker2014Dev1GeometryDefinition.java | +43 | -8 | 3340 -> 3341 |
HPSTestRunTracker2014Dev1LCDDBuilder.java | +1 | -1 | 3340 -> 3341 |
HPSTestRunTracker2014GeometryDefinition.java | +2 | -2 | 3340 -> 3341 |
HPSTrackerBuilder.java | +1 | -1 | 3340 -> 3341 |
HPSTrackerJavaBuilder.java | +34 | -20 | 3340 -> 3341 |
HPSTrackerLCDDBuilder.java | +23 | -12 | 3340 -> 3341 |
+109 | -154 |
Added c-support to dev1 geometry. Changed extraction of Cardan angles which affect the input unit vectors when mother volume is a ghost volume.
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014Dev1Builder.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014Dev1Builder.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -36,8 +36,10 @@
geometries.add(tracking); HPSTestRunTracker2014Dev1GeometryDefinition.Base base = new HPSTestRunTracker2014Dev1GeometryDefinition.Base("base",tracking); geometries.add(base);
+ HPSTestRunTracker2014Dev1GeometryDefinition.CSupport cSupport = new HPSTestRunTracker2014Dev1GeometryDefinition.CSupport("c_support", base); + geometries.add(cSupport); +
-
if(isDebug()) System.out.printf("%s: build modules\n", getClass().getSimpleName());
@@ -48,7 +50,7 @@
if(isDebug()) System.out.printf("%s: makeModule for layer %d %s \n", this.getClass().getSimpleName(), layer, half); String moduleName = "module_L"+ layer + (half=="bottom"?"b":"t");
- BaseGeometry ref = null;
+ BaseGeometry ref = cSupport;
BaseGeometry mother = base; //Create the module
@@ -67,8 +69,7 @@
if(isDebug()) System.out.printf("%s: makeHalfModule with name %s\n", this.getClass().getSimpleName(), volName);
- HPSTestRunTracker2014Dev1GeometryDefinition.TestRunHalfModule halfModule - = new HPSTestRunTracker2014Dev1GeometryDefinition.TestRunHalfModuleAxial(volName, mother, layer, half);
+ HPSTestRunTracker2014Dev1GeometryDefinition.TestRunHalfModule halfModule = new HPSTestRunTracker2014Dev1GeometryDefinition.TestRunHalfModuleAxial(volName, mother, layer, half);
if(isDebug()) System.out.printf("%s: %s\n", this.getClass().getSimpleName(), halfModule.toString());
@@ -117,120 +118,14 @@
- - private void makeHalfModuleComponentHybrid(HPSTestRunTracker2014GeometryDefinition.TestRunHalfModule mother) { - - if(isDebug()) System.out.printf("%s: makeHalfModuleComponentHybrid for %s \n", this.getClass().getSimpleName(), mother.getName());
- String volName = mother.getName() + "_hybrid";
- // Build the half-module - - // id is hard coded - int component_number = 3;
- HPSTestRunTracker2014GeometryDefinition.Hybrid hybrid = new HPSTestRunTracker2014GeometryDefinition.Hybrid(volName,mother,component_number); - hybrid.setMaterial("G10"); - - HalfModuleBundle hm = getHalfModuleBundle((HPSTestRunTracker2014GeometryDefinition.TestRunModule) mother.getMother(), mother.getName()); - hm.hybrid = hybrid;
- if(isDebug()) System.out.printf("%s: added hybrid to half-module with name %s \n", this.getClass().getSimpleName(), hm.halfModule.getName());
- - }
- - - private void makeHalfModuleComponentCF(HPSTestRunTracker2014GeometryDefinition.TestRunHalfModule mother) { - - if(isDebug()) System.out.printf("%s: makeHalfModuleComponentCF for %s \n", this.getClass().getSimpleName(), mother.getName()); - - - String volName = mother.getName() + "_cf"; - - // Build the half-module - - // id is hard coded - int component_number = 1; - - HPSTestRunTracker2014GeometryDefinition.CarbonFiber cf = new HPSTestRunTracker2014GeometryDefinition.CarbonFiber(volName,mother,component_number); - cf.setMaterial("CarbonFiber"); - - HalfModuleBundle hm = getHalfModuleBundle((HPSTestRunTracker2014GeometryDefinition.TestRunModule) mother.getMother(), mother.getName()); - hm.carbonFiber = cf; - - } - - - - - private void makeHalfModuleComponentKapton(HPSTestRunTracker2014GeometryDefinition.TestRunHalfModule mother) { - - if(isDebug()) System.out.printf("%s: makeHalfModuleComponentKapton for %s \n", this.getClass().getSimpleName(), mother.getName()); - - String volName = mother.getName() + "_lamination"; - - // Build the half-module - - // id is hard coded - int component_number = 2; - - HPSTestRunTracker2014GeometryDefinition.HalfModuleLamination lamination = new HPSTestRunTracker2014GeometryDefinition.HalfModuleLamination(volName,mother,component_number); - lamination.setMaterial("Kapton"); - - - HalfModuleBundle hm = getHalfModuleBundle((HPSTestRunTracker2014GeometryDefinition.TestRunModule) mother.getMother(), mother.getName()); - hm.lamination = lamination; - - } - - - private void makeHalfModuleComponentSensor(HPSTestRunTracker2014GeometryDefinition.TestRunHalfModule mother) { - - if(isDebug()) System.out.printf("%s: makeHalfModuleComponentSensor for %s \n", this.getClass().getSimpleName(), mother.getName()); - - String volName = mother.getName() + "_sensor"; - - // sensor id is hard coded in old geometry to be zero by counting over the components of the module - int component_number = 0; - - // - HPSTestRunTracker2014GeometryDefinition.Sensor sensor = new HPSTestRunTracker2014GeometryDefinition.Sensor(volName, mother, component_number); - sensor.setMaterial("Silicon"); - - HalfModuleBundle hm = getHalfModuleBundle((HPSTestRunTracker2014GeometryDefinition.TestRunModule) mother.getMother(), mother.getName()); - hm.sensor = sensor; - - - makeHalfModuleComponentActiveSensor(sensor); - - - } -
- private void makeHalfModuleComponentActiveSensor(HPSTestRunTracker2014GeometryDefinition.Sensor mother) { - - if(isDebug()) System.out.printf("%s: makeHalfModuleComponentActiveSensor for %s \n", this.getClass().getSimpleName(), mother.getName()); - - String volName = mother.getName() + "_active";
- HPSTestRunTracker2014GeometryDefinition.ActiveSensor active_sensor = new HPSTestRunTracker2014GeometryDefinition.ActiveSensor(volName, mother); - active_sensor.setMaterial("Silicon"); - - HalfModuleBundle hm = getHalfModuleBundle((HPSTestRunTracker2014GeometryDefinition.TestRunModule) mother.getMother().getMother(), mother.getMother().getName()); - hm.activeSensor = active_sensor; - - } - - - - - - - - -
/* public static Hep3Vector transformToMotherCoord(Hep3Vector vec, BaseGeometry mother, String targetMotherName) {
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014Dev1GeometryDefinition.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014Dev1GeometryDefinition.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -9,6 +9,7 @@
import org.lcsim.geometry.compact.converter.lcdd.HPSTestRunTracker2014GeometryDefinition.BaseGeometry; import org.lcsim.geometry.compact.converter.lcdd.HPSTestRunTracker2014GeometryDefinition.HalfModuleComponent; import org.lcsim.geometry.compact.converter.lcdd.HPSTestRunTracker2014GeometryDefinition.HalfModuleLamination;
+import org.lcsim.geometry.compact.converter.lcdd.HPSTestRunTracker2014GeometryDefinition.Sensor;
import hep.physics.vec.BasicHep3Vector;
@@ -147,9 +148,9 @@
protected void setPos() { // using SiStrips convention
- setBallPos(0,0,0); - setVeePos(ballPos.x(), ballPos.y(), ballPos.z() + getSensorWidth()/2.0); - setFlatPos(ballPos.x() + getSensorLength()/2.0,ballPos.y(), ballPos.z());
+// setBallPos(0,0,0); +// setVeePos(ballPos.x(), ballPos.y(), ballPos.z() + getSensorWidth()/2.0); +// setFlatPos(ballPos.x() + getSensorLength()/2.0,ballPos.y(), ballPos.z());
// Rotation r = new Rotation(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder.XYZ, Math.PI/4, 0, 0); // Vector3D b = r.applyTo(new Vector3D(this.ballPos.v())); // Vector3D v = r.applyTo(new Vector3D(this.veePos.v()));
@@ -159,22 +160,56 @@
// setFlatPos(f.getX(), f.getY(), f.getZ()); // // default convention
- //setBallPos(0,0,0); - //setVeePos(ballPos.x() + getSensorLength()/2.0, ballPos.y(), ballPos.z()); - //setFlatPos(ballPos.x(),ballPos.y() + getSensorThickness()/2.0, ballPos.z());
+ setBallPos(0,0,0); + setVeePos(ballPos.x() + getSensorLength()/2.0, ballPos.y(), ballPos.z()); + setFlatPos(ballPos.x(),ballPos.y() + getSensorThickness()/2.0, ballPos.z());
} protected void setBoxDim() { // using SiStrips convention
- setBoxDim(getSensorWidth(),getSensorLength(),getSensorThickness());
+ //setBoxDim(getSensorWidth(),getSensorLength(),getSensorThickness());
// default convention
- //setBoxDim(getSensorLength(),getSensorThickness(),getSensorWidth());
+ setBoxDim(getSensorLength(),getSensorThickness(),getSensorWidth());
} }
+ + + public static class ActiveSensor extends HPSTestRunTracker2014GeometryDefinition.ActiveSensor { + public ActiveSensor(String name, BaseGeometry m) { + super(name, m); + init(); + } + protected void setPos() { + if(HPSTestRunTracker2014GeometryDefinition.useSiStripsConvention) { + ballPos = new BasicHep3Vector(0,0,0); + veePos = new BasicHep3Vector(getActiveSensorWidth()/2.0,0,0); + flatPos = new BasicHep3Vector(0,getActiveSensorLength()/2.0,0); + } else { + ballPos = new BasicHep3Vector(0,0,0); + veePos = new BasicHep3Vector(getActiveSensorWidth()/2.0,0,0); + flatPos = new BasicHep3Vector(0,getActiveSensorLength()/2.0,0); + } + } + protected void setCoord() { + setCoord(null); + } + protected void setCenter() { + setCenter(0,0,0); + } + @Override + protected void setBoxDim() { + if(HPSTestRunTracker2014GeometryDefinition.useSiStripsConvention) { + setBoxDim(getActiveSensorWidth(), getActiveSensorLength(), getActiveSensorThickness()); + } else { + setBoxDim(getActiveSensorLength(),getActiveSensorThickness(),getActiveSensorWidth()); + } + } + }
*/
+
}
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014Dev1LCDDBuilder.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014Dev1LCDDBuilder.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -56,7 +56,7 @@
if(isDebug()) System.out.printf("%s: makeModule for layer %d %s \n", this.getClass().getSimpleName(), layer, half); LCDDBaseGeometry mother = baseTrackerGeometry;
-
+
//Create the module LCDDBaseGeometry lcddM = new LCDDBaseGeometry(_builder.getBaseGeometry(HPSTestRunTracker2014Dev1GeometryDefinition.TestRunModule.class), lcdd, mother); add(lcddM);
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014GeometryDefinition.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTestRunTracker2014GeometryDefinition.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -29,7 +29,7 @@
//General static final double inch = 25.4; //mm protected static final boolean useSiStripsConvention = true;
- protected static final boolean use30mradRotation = false;
+ protected static final boolean use30mradRotation = true;
protected static final boolean useFakeHalfModuleAxialPos = false; // Global position references
@@ -46,7 +46,7 @@
* */ public static abstract class BaseGeometry {
- protected boolean debug = false;
+ protected boolean debug = true;
private String name; private String material = "Vacuum"; private BaseGeometry mother;
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTrackerBuilder.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTrackerBuilder.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -269,7 +269,7 @@
* @return transform. */ public static Transform3D getTransform(Transform3D t, BaseGeometry mother, String targetMotherName) {
- int debug=0;
+ int debug=1;
if(debug>0) System.out.printf("getTransform mother %s target %s with current transform\n%s\n", mother.getName(), targetMotherName,t.toString()); if(mother==null) throw new RuntimeException("Trying to get mother transform but there is no mother?!"); if(mother.getName().equals(targetMotherName)) {
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTrackerJavaBuilder.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTrackerJavaBuilder.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -314,7 +314,7 @@
if(isDebug()) System.out.printf("%s: find center of box in physical mother coord %s \n", this.getClass().getSimpleName(),physMother.getName()); // hack since my getTransform function needs a mother TODO Fix this! BaseGeometry gm = base;
- if(isDebug()) System.out.printf("%s: look for physical mother %s starting from mother \n", this.getClass().getSimpleName(),physMother.getName(),gm.getMother());
+ if(isDebug()) System.out.printf("%s: look for physical mother %s starting from mother %s \n", this.getClass().getSimpleName(),physMother.getName(),gm.getMother()!=null?gm.getMother().getName():"-- no mother --");
while((gm=gm.getMother()).getName()!=physMother.getName()) { if(isDebug()) System.out.printf("%s: gm is %s \n", this.getClass().getSimpleName(),gm.getName()); //gm = gm.getMother();
@@ -331,26 +331,40 @@
//Use apache lib to get angles, but in principle I should already have it from the trf above //Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base.getCoord().v(), base.getCoord().w(), new BasicHep3Vector(0,1,0),new BasicHep3Vector(0,0,1)); if(isDebug()) System.out.printf("%s: find LCDD Cardan rotation angles - need to find mother to physical mother transform \n", this.getClass().getSimpleName(),physMother.getName());
- Hep3Vector unit_u = new BasicHep3Vector(1,0,0); - Hep3Vector unit_v = new BasicHep3Vector(0,1,0); - Hep3Vector unit_w = new BasicHep3Vector(0,0,1); - if(!base.getMother().getName().equals(physMother.getName())) { - Transform3D trf_mother = HPSTrackerBuilder.getTransform(base.getMother().getCoord().getTransformation(),base.getMother().getMother(),physMother.getName()); - unit_u = VecOp.unit(trf_mother.rotated(unit_u)); - unit_v = VecOp.unit(trf_mother.rotated(unit_v)); - unit_w = VecOp.unit(trf_mother.rotated(unit_w)); - if(isDebug()) System.out.printf("%s: found transform from mother to physical mother \n%s\n", this.getClass().getSimpleName(),trf_mother.toString()); - } else { - if(isDebug()) System.out.printf("%s: mother and physical mother is the same\n",getClass().getSimpleName()); - } - - if(isDebug()) { - System.out.printf("%s: unit vectors to get Cardan angles from become unit_u %s unit_v %s unit_w %s\n", this.getClass().getSimpleName(),unit_u.toString(),unit_v.toString(),unit_w.toString()); - System.out.printf("%s: unit vectors u %s v %s w %s\n", this.getClass().getSimpleName(),base.getCoord().u().toString(),base.getCoord().v().toString(),base.getCoord().w().toString()); - }
+ Hep3Vector base_u = base.getCoord().u(); + Hep3Vector base_v = base.getCoord().v(); + Hep3Vector base_w = base.getCoord().w(); + if(isDebug()) System.out.printf("%s: unit vectors in mother coord: %s, %s, %s\n", this.getClass().getSimpleName(),base_u.toString(),base_v.toString(),base_w.toString()); + Hep3Vector unit_u = new BasicHep3Vector(1,0,0); + Hep3Vector unit_v = new BasicHep3Vector(0,1,0); + Hep3Vector unit_w = new BasicHep3Vector(0,0,1); + if(!base.getMother().getName().equals(physMother.getName())) { + if(isDebug()) System.out.printf("%s: Need to get unit vectors in physical mother %s coord system\n", this.getClass().getSimpleName(),physMother.getName()); + Transform3D trf_mother = HPSTrackerBuilder.getTransform(base.getMother().getCoord().getTransformation(),base.getMother().getMother(),physMother.getName()); + if(isDebug()) System.out.printf("%s: found transform from mother to physical mother \n%s\n", this.getClass().getSimpleName(),trf_mother.toString()); + //unit_u = VecOp.unit(trf_mother.rotated(unit_u)); + //unit_v = VecOp.unit(trf_mother.rotated(unit_v)); + //unit_w = VecOp.unit(trf_mother.rotated(unit_w)); + base_u = VecOp.unit(trf_mother.rotated(base_u)); + base_v = VecOp.unit(trf_mother.rotated(base_v)); + base_w = VecOp.unit(trf_mother.rotated(base_w)); + + } else { + if(isDebug()) System.out.printf("%s: mother and physical mother is the same so unit vectors didn't change\n",getClass().getSimpleName()); + } + + if(isDebug()) { + if(isDebug()) System.out.printf("%s: final unit vectors to get Cardan angles from : \n%s, %s, %s -> %s, %s, %s \n", + this.getClass().getSimpleName(), + base_u.toString(),base_v.toString(),base_w.toString(), + unit_u.toString(),unit_v.toString(),unit_w.toString()); + //System.out.printf("%s: unit vectors u %s v %s w %s\n", this.getClass().getSimpleName(),base.getCoord().u().toString(),base.getCoord().v().toString(),base.getCoord().w().toString()); + } +
//Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(unit_u,unit_v,base.getCoord().u(), base.getCoord().v());
- Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base.getCoord().u(), base.getCoord().v(), unit_u,unit_v); - //Hep3Vector lcdd_rot_angles_active = HPSTestRunTracker2014.getActiveEulerAngles(base.getCoord().v(), base.getCoord().w(), unit_v,unit_w);
+ //Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base.getCoord().u(), base.getCoord().v(), unit_u,unit_v); + Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base_u, base_v, unit_u,unit_v); + //Hep3Vector lcdd_rot_angles_active = HPSTestRunTracker2014.getActiveEulerAngles(base.getCoord().v(), base.getCoord().w(), unit_v,unit_w);
// double rot_mat[][] = HPSTestRunTracker2014.getActiveEulerAnglesMatrix(base.getCoord().v(), base.getCoord().w(), unit_v,unit_w); // Rotation3D rot_xcheck = new Rotation3D(); // BasicHep3Matrix rot_mat_hep = new BasicHep3Matrix();
--- projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTrackerLCDDBuilder.java 2014-09-23 08:28:40 UTC (rev 3340) +++ projects/lcsim/trunk/detector-framework/src/main/java/org/lcsim/geometry/compact/converter/lcdd/HPSTrackerLCDDBuilder.java 2014-09-23 21:35:43 UTC (rev 3341) @@ -178,29 +178,40 @@
//Find LCDD Euler rotation angles from coordinate system unit vectors //Note that this has to be rotation wrt to physical mother and not just mother as normally is the case
- //Use apache lib to get angles, but in principle I should already have it from the trf above - //Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base.getCoord().v(), base.getCoord().w(), new BasicHep3Vector(0,1,0),new BasicHep3Vector(0,0,1));
if(isDebug()) System.out.printf("%s: find LCDD Cardan rotation angles - need to find mother to physical mother transform \n", this.getClass().getSimpleName(),physMother.getName());
+ Hep3Vector base_u = base.getCoord().u(); + Hep3Vector base_v = base.getCoord().v(); + Hep3Vector base_w = base.getCoord().w(); + if(isDebug()) System.out.printf("%s: unit vectors in mother coord: %s, %s, %s\n", this.getClass().getSimpleName(),base_u.toString(),base_v.toString(),base_w.toString());
Hep3Vector unit_u = new BasicHep3Vector(1,0,0); Hep3Vector unit_v = new BasicHep3Vector(0,1,0); Hep3Vector unit_w = new BasicHep3Vector(0,0,1); if(!base.getMother().getName().equals(physMother.getName())) {
- Transform3D trf_mother = HPSTrackerBuilder.getTransform(base.getMother().getCoord().getTransformation(),base.getMother().getMother(),physMother.getName()); - unit_u = VecOp.unit(trf_mother.rotated(unit_u)); - unit_v = VecOp.unit(trf_mother.rotated(unit_v)); - unit_w = VecOp.unit(trf_mother.rotated(unit_w)); - if(isDebug()) System.out.printf("%s: found transform from mother to physical mother \n%s\n", this.getClass().getSimpleName(),trf_mother.toString());
+ if(isDebug()) System.out.printf("%s: Need to get unit vectors in physical mother %s coord system\n", this.getClass().getSimpleName(),physMother.getName()); + Transform3D trf_mother = HPSTrackerBuilder.getTransform(base.getMother().getCoord().getTransformation(),base.getMother().getMother(),physMother.getName()); + if(isDebug()) System.out.printf("%s: found transform from mother to physical mother \n%s\n", this.getClass().getSimpleName(),trf_mother.toString()); + //unit_u = VecOp.unit(trf_mother.rotated(unit_u)); + //unit_v = VecOp.unit(trf_mother.rotated(unit_v)); + //unit_w = VecOp.unit(trf_mother.rotated(unit_w)); + base_u = VecOp.unit(trf_mother.rotated(base_u)); + base_v = VecOp.unit(trf_mother.rotated(base_v)); + base_w = VecOp.unit(trf_mother.rotated(base_w)); +
} else {
- if(isDebug()) System.out.printf("%s: mother and physical mother is the same\n",getClass().getSimpleName());
+ if(isDebug()) System.out.printf("%s: mother and physical mother is the same so unit vectors didn't change\n",getClass().getSimpleName());
} if(isDebug()) {
- System.out.printf("%s: unit vectors to get Cardan angles from become unit_u %s unit_v %s unit_w %s\n", this.getClass().getSimpleName(),unit_u.toString(),unit_v.toString(),unit_w.toString()); - System.out.printf("%s: unit vectors u %s v %s w %s\n", this.getClass().getSimpleName(),base.getCoord().u().toString(),base.getCoord().v().toString(),base.getCoord().w().toString());
+ if(isDebug()) System.out.printf("%s: final unit vectors to get Cardan angles from : \n%s, %s, %s -> %s, %s, %s \n", + this.getClass().getSimpleName(), + base_u.toString(),base_v.toString(),base_w.toString(), + unit_u.toString(),unit_v.toString(),unit_w.toString()); + //System.out.printf("%s: unit vectors u %s v %s w %s\n", this.getClass().getSimpleName(),base.getCoord().u().toString(),base.getCoord().v().toString(),base.getCoord().w().toString());
} //Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(unit_u,unit_v,base.getCoord().u(), base.getCoord().v());
- Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base.getCoord().u(), base.getCoord().v(), unit_u,unit_v); -
+ //Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base.getCoord().u(), base.getCoord().v(), unit_u,unit_v); + Hep3Vector lcdd_rot_angles = HPSTestRunTracker2014.getEulerAngles(base_u, base_v, unit_u,unit_v); +
// Check if there are explicit rotations built into the object itself which overrides // TODO this should be included in the definition of the coordinate system. Fix this for the affected components. /*
Use REPLY-ALL to reply to list
To unsubscribe from the LCDET-SVN list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCDET-SVN&A=1