Back to home page

EIC code displayed by LXR

 
 

    


Warning, /eic-opticks/ana/tpmt_debug.rst is written in an unsupported language. File is not indexed.

0001 pmt_test.py debugging notes
0002 ==============================
0003 
0004 
0005 Issues
0006 --------
0007 
0008 * source issue in cfg4 (b), allmost all photons doing same thing, 
0009   fixed by handling discLinear
0010 
0011 * different G4 geometry, photon interaction positions in the interop visualization 
0012   show that primitives are there, but Z offsets not positioned correctly so the 
0013   boolean processing produces a more complicated geometry 
0014 
0015   * modify cfg4-/Detector to make just the Pyrex for simplification 
0016 
0017 * after first order fixing G4 geometry to look OK, 
0018   still very different sequence histories because are missing surface/SD
0019   handling that leads to great simplification for Opticks as most photons 
0020   are absorbed/detected on the photocathode
0021 
0022 * suspect the DYB detdesc G4 positioning of the photocathode inside the vacuum 
0023   with coincident surfaces will lead to comparison problems, as this "feature"
0024   was fixed for the surface-based translation  
0025 
0026   May need to compare against a correspondingly "fixed" G4 geometry
0027 
0028 * examining the sensdet/hit handling in LXe example observe
0029   that its essentially a manual thing for optical photons, so 
0030   the overhead of sensdet and hits is not useful for cfg4 purposes.
0031   Instead just need to modify cfg4-/RecordStep to return done=true 
0032   on walking onto the photocathode : but need to identify, and
0033   need the EFFICIENCY ? 
0034 
0035   * hmm what happened to to the EFFICIENCY ? 
0036     transmogrified to GSurfaceLib "detect" property that gets
0037     copied across to GPU texture
0038 
0039 
0040 assimpwrap-/AssimpGGeo.cc/AssimpGGeo::convertMaterials::
0041 
0042      438             if(hasVectorProperty(mat, EFFICIENCY ))
0043      439             {
0044      440                 assert(gg->getCathode() == NULL && "only expecting one material with an EFFICIENCY property" );
0045      441                 gg->setCathode(gmat) ;
0046      442                 m_cathode = mat ;
0047      443             }
0048      ...
0049      466 void AssimpGGeo::convertSensors(GGeo* gg)
0050      467 {
0051      468 /*
0052      469 Opticks is a surface based simulation, as opposed to 
0053      470 Geant4 which is CSG volume based. In Geant4 hits are formed 
0054      471 on stepping into volumes with associated SensDet.
0055      472 The Opticks equivalent is intersecting with a "SensorSurface", 
0056      473 which are fabricated by AssimpGGeo::convertSensors.
0057      474 */
0058      475     convertSensors( gg, m_tree->getRoot(), 0);
0059      476 
0060 
0061 
0062 ::
0063 
0064     [2016-Feb-25 13:15:57.521542]:info: Detector::convertMaterial   name Pyrex materialIndex 13
0065     [2016-Feb-25 13:15:57.523946]:info: Detector::convertMaterial   name Vacuum materialIndex 12
0066     [2016-Feb-25 13:15:57.526100]:info: Detector::convertMaterial   name Bialkali materialIndex 4
0067     [2016-Feb-25 13:15:57.527616]:info: Detector::convertMaterial   name OpaqueVacuum materialIndex 10
0068     [2016-Feb-25 13:15:57.528817]:info: Detector::convertMaterial   name OpaqueVacuum materialIndex 10
0069 
0070     simon:GMaterialLib blyth$ cat order.json 
0071 
0072         "MineralOil": "4",
0073         "Bialkali": "5",
0074         "OpaqueVacuum": "11",
0075         "Vacuum": "13",
0076         "Pyrex": "14",
0077 
0078 
0079 G4 Efficiency
0080 ~~~~~~~~~~~~~~~
0081 
0082 Where does the random check against EFFICIENCY as
0083 function of wavelength happen for G4 ? Need to get G4 to decide between
0084 absorb/detect and return status ? 
0085 
0086 * answer: G4OpBoundaryProcess::DoAbsorption
0087 
0088 * but it seems that will never be called without an optical surface to 
0089   set the EFFICIENCY to allow DoAbsorption to get called
0090 
0091 
0092 ::
0093 
0094     simon:geant4.10.02 blyth$ find source -name '*.cc' -exec grep -H EFFICIENCY {} \;
0095     source/global/HEPNumerics/src/G4ConvergenceTester.cc:   out << std::setw(20) << "EFFICIENCY = " << std::setw(13)  << efficiency << G4endl;
0096     source/processes/optical/src/G4OpBoundaryProcess.cc:              aMaterialPropertiesTable->GetProperty("EFFICIENCY");
0097     simon:geant4.10.02 blyth$ 
0098 
0099 
0100     165 G4VParticleChange*
0101     166 G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep)
0102     167 {
0103     ...
0104 
0105     387               PropertyPointer =
0106     388               aMaterialPropertiesTable->GetProperty("EFFICIENCY");
0107     389               if (PropertyPointer) {
0108     390                       theEfficiency =
0109     391                       PropertyPointer->Value(thePhotonMomentum);
0110     392               }
0111 
0112 
0113     306 inline
0114     307 void G4OpBoundaryProcess::DoAbsorption()
0115     308 {
0116     309               theStatus = Absorption;
0117     310 
0118     311               if ( G4BooleanRand(theEfficiency) ) {
0119     312 
0120     313                  // EnergyDeposited =/= 0 means: photon has been detected
0121     314                  theStatus = Detection;
0122     315                  aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum);
0123     316               }
0124     317               else {
0125     318                  aParticleChange.ProposeLocalEnergyDeposit(0.0);
0126     319               }
0127     320 
0128     321               NewMomentum = OldMomentum;
0129     322               NewPolarization = OldPolarization;
0130     323 
0131     324 //              aParticleChange.ProposeEnergy(0.0);
0132     325               aParticleChange.ProposeTrackStatus(fStopAndKill);
0133     326 }
0134 
0135 
0136 suspect g4dae export is missing some optical surfaces
0137 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0138 
0139 Huh DDDB/PMT/properties.xml appears to set EFFICIENCY and REFLECIVITY to zero 
0140 for PMT border surfaces
0141 
0142 
0143 /usr/local/env/dyb/NuWa-trunk/dybgaudi/Detector/XmlDetDesc/DDDB/PMT/properties.xml::
0144 
0145 
0146      01 <?xml version='1.0' encoding='UTF-8'?>
0147       2 <!DOCTYPE DDDB SYSTEM "../DTD/geometry.dtd">
0148       3 
0149       4 <DDDB>
0150       5 
0151       6   <catalog name="PmtSurfaces">
0152       7     <surfaceref href="#PmtGlassPhoCatSurface"/>
0153       8     <surfaceref href="#PmtGlassVacuumSurface"/>
0154       9   </catalog>
0155      10 
0156      11   <catalog name="PmtSurfaceTabProperty">
0157      12     <tabpropertyref href="#PmtGlassPhoCatReflectivity"/>
0158      13     <tabpropertyref href="#PmtGlassPhoCatEfficiency"/>
0159      14     <tabpropertyref href="#PmtGlassVacuumReflectivity"/>
0160      15     <tabpropertyref href="#PmtGlassVacuumEfficiency"/>
0161      16   </catalog>
0162      17 
0163      18   <!-- Surfaces -->
0164      19 
0165      20   <surface name="PmtGlassPhoCatSurface"
0166      21        model="glisur"
0167      22        finish="polished"
0168      23        type="dielectric_dielectric"
0169      24        value="0"
0170      25        volfirst="/dd/Geometry/PMT/lvPmtHemiGlass"
0171      26        volsecond="/dd/Geometry/PMT/lvPmtHemiCathode">
0172      //
0173      //   name lvPmtHemiGlass looks wrong would expect /dd/Geometry/PMT/lvPmtHemi
0174      //   also the lvPmtHemiCathode is child of the lvPmtHemiVacuum ??
0175      //
0176      //
0177      27     <tabprops address="/dd/Geometry/PMT/PmtSurfaceTabProperty/PmtGlassPhoCatReflectivity"/>
0178      28     <tabprops address="/dd/Geometry/PMT/PmtSurfaceTabProperty/PmtGlassPhoCatEfficiency"/>
0179      29   </surface>
0180      30 
0181      31   <surface name="PmtGlassVacuumSurface"
0182      32        model="glishur"
0183      //
0184      //    typo but glisur is default anyhow
0185      //
0186      33        finish="polished"
0187      34        type="dielectric_dielectric"
0188      35        value="0"
0189      36        volfirst="/dd/Geometry/PMT/lvPmtHemiGlass"
0190      37        volsecond="/dd/Geometry/PMT/lvPmtHemiVacuum">
0191      //
0192      //   again name lvPmtHemiGlass looks wrong, would expect /dd/Geometry/PMT/lvPmtHemi
0193      //   border surfaces work 
0194      //
0195      38     <tabprops address="/dd/Geometry/PMT/PmtSurfaceTabProperty/PmtGlassVacuumReflectivity"/>
0196      39     <tabprops address="/dd/Geometry/PMT/PmtSurfaceTabProperty/PmtGlassVacuumEfficiency"/>
0197      40   </surface>
0198      41 
0199      42   <!-- Tabled properties -->
0200      43 
0201      44   <tabproperty name="PmtGlassPhoCatReflectivity"
0202      45            type="REFLECTIVITY"
0203      46            xunit="eV"
0204      47            xaxis="PhotonEnergy"
0205      48            yaxis="Reflectivity">
0206      49     1.0  0.0
0207      50     2.0  0.0
0208      51     3.0  0.0
0209      52     4.0  0.0
0210      53     5.0  0.0
0211 
0212 
0213 
0214 The above looks to be outdated, this one is better
0215 
0216 * /usr/local/env/dyb/NuWa-trunk/dybgaudi/Detector/XmlDetDesc/DDDB/PmtPanel/properties.xml
0217 
0218 ::
0219 
0220     simon:npy blyth$ diff /usr/local/env/dyb/NuWa-trunk/dybgaudi/Detector/XmlDetDesc/DDDB/PMT/properties.xml /usr/local/env/dyb/NuWa-trunk/dybgaudi/Detector/XmlDetDesc/DDDB/PmtPanel/properties.xml
0221     25c25
0222     <      volfirst="/dd/Geometry/PMT/lvPmtHemiGlass"
0223     ---
0224     >      volfirst="/dd/Geometry/PMT/lvPmtHemi"
0225     36c36
0226     <      volfirst="/dd/Geometry/PMT/lvPmtHemiGlass"
0227     ---
0228     >      volfirst="/dd/Geometry/PMT/lvPmtHemi"
0229     simon:npy blyth$ 
0230 
0231 
0232 
0233 With theReflectivity and theTransmittance set to zero via the logical border surface
0234 the DoAbsorption will always get called on the photocathode boundary::
0235 
0236      483         else if (type == dielectric_dielectric) {
0237      484 
0238      485           if ( theFinish == polishedbackpainted ||
0239      486                theFinish == groundbackpainted ) {
0240      487              DielectricDielectric();
0241      488           }
0242      489           else {
0243      490              G4double rand = G4UniformRand();
0244      491              if ( rand > theReflectivity ) {
0245      492                 if (rand > theReflectivity + theTransmittance) {
0246      493                    DoAbsorption();
0247      494                 } else {
0248      495                    theStatus = Transmission;
0249      496                    NewMomentum = OldMomentum;
0250      497                    NewPolarization = OldPolarization;
0251      498                 }
0252      499              }
0253 
0254 
0255 
0256 names for breakpointing
0257 ~~~~~~~~~~~~~~~~~~~~~~~~~
0258 
0259 ::
0260 
0261     simon:env blyth$ nm /usr/local/env/g4/geant4.10.02.install/lib/libG4processes.dylib | c++filt | grep G4OpBoundaryProcess
0262     0000000001390d00 unsigned short G4OpBoundaryProcess::DoAbsorption()
0263     0000000001390de0 unsigned short G4OpBoundaryProcess::DoReflection()
0264     0000000001391b70 unsigned short G4OpBoundaryProcess::IsApplicable(G4ParticleDefinition const&)
0265     0000000001386f40 T G4OpBoundaryProcess::PostStepDoIt(G4Track const&, G4Step const&)
0266     000000000138afe0 T G4OpBoundaryProcess::DielectricLUT()
0267     000000000138a4a0 T G4OpBoundaryProcess::DielectricMetal()
0268     000000000138ee20 T G4OpBoundaryProcess::GetMeanFreePath(G4Track const&, double, G4ForceCondition*)
0269     000000000138eef0 T G4OpBoundaryProcess::GetReflectivity(double, double, double, double, double)
0270     0000000001391430 unsigned short G4OpBoundaryProcess::ChooseReflection()
0271     000000000138ee50 T G4OpBoundaryProcess::GetIncidentAngle()
0272     000000000138b920 T G4OpBoundaryProcess::DielectricDichroic()
0273     000000000138c560 T G4OpBoundaryProcess::DielectricDielectric()
0274     0000000001389ec0 T G4OpBoundaryProcess::CalculateReflectivity()
0275     000000000138e470 T G4OpBoundaryProcess::InvokeSD(G4Step const*)
0276     0000000001386e20 T G4OpBoundaryProcess::G4OpBoundaryProcess(G4String const&, G4ProcessType)
0277     0000000001386a70 T G4OpBoundaryProcess::G4OpBoundaryProcess(G4String const&, G4ProcessType)
0278     0000000001386f10 T G4OpBoundaryProcess::~G4OpBoundaryProcess()
0279     0000000001386ef0 T G4OpBoundaryProcess::~G4OpBoundaryProcess()
0280     0000000001386e50 T G4OpBoundaryProcess::~G4OpBoundaryProcess()
0281     00000000013913f0 unsigned short G4OpBoundaryProcess::G4BooleanRand(double) const
0282     000000000138e590 T G4OpBoundaryProcess::GetFacetNormal(CLHEP::Hep3Vector const&, CLHEP::Hep3Vector const&) const
0283     0000000001389200 T G4OpBoundaryProcess::BoundaryProcessVerbose() const
0284     000000000191a720 S typeinfo for G4OpBoundaryProcess
0285     00000000017ba0c0 S typeinfo name for G4OpBoundaryProcess
0286     000000000191a650 S vtable for G4OpBoundaryProcess
0287     simon:env blyth$ 
0288 
0289 
0290 ::
0291 
0292 
0293     simon:env blyth$ ggv-;ggv-pmt-test --cfg4 --dbg
0294 
0295     (lldb) b "G4OpBoundaryProcess::PostStepDoIt(G4Track const&, G4Step const&)"
0296     Breakpoint 1: no locations (pending).
0297     WARNING:  Unable to resolve breakpoint to any actual locations.
0298     (lldb) r
0299     (lldb) expr verboseLevel = 1
0300     (lldb) b "G4OpBoundaryProcess::DielectricDielectric()"
0301 
0302 
0303 * a Opticks
0304 * b CFG4
0305 
0306 After kludge photocathode are getting closer to the ballpark
0307 ::
0308 
0309     In [18]: a.history_table()
0310     Evt(1,"torch","PmtInBox","", seqs="[]")
0311                               noname 
0312                      8cd       351558       [3 ] TO BT SA
0313                      7cd       111189       [3 ] TO BT SD
0314                       4d        18047       [2 ] TO AB
0315                     8ccd        11661       [4 ] TO BT BT SA
0316                      86d         3040       [3 ] TO SC SA
0317                      4cd         1736       [3 ] TO BT AB
0318                     4ccd          884       [4 ] TO BT BT AB
0319                      8bd          742       [3 ] TO BR SA
0320                     8c6d          394       [4 ] TO SC BT SA
0321                      46d          187       [3 ] TO SC AB
0322                    86ccd          140       [5 ] TO BT BT SC SA
0323                     7c6d          103       [4 ] TO SC BT SD
0324                      4bd           63       [3 ] TO BR AB
0325                8cccccbcd           54       [9 ] TO BT BR BT BT BT BT BT SA
0326                     866d           33       [4 ] TO SC SC SA
0327 
0328 
0329     In [19]: b.history_table()
0330     Evt(-1,"torch","PmtInBox","", seqs="[]")
0331                               noname 
0332                      8cd       337740       [3 ] TO BT SA
0333                      7cd       106833       [3 ] TO BT SD
0334  
0335                     8ccd        23119       [4 ] TO BT BT SA   << CFG4 (vs 11661 for Opticks) : edge scims MO Py MO MO
0336 
0337                       4d        19117       [2 ] TO AB
0338                      86d         3199       [3 ] TO SC SA
0339                      4cd         2174       [3 ] TO BT AB
0340                 8ccccbcd         1999       [8 ] TO BT BR BT BT BT BT SA
0341 
0342                     4ccd         1693       [4 ] TO BT BT AB    << CFG4 (vs 884 for Opticks) ... scimmers again
0343                      8bd         1267       [3 ] TO BR SA       << CFG4 (vs 742 for Opticks) ???
0344 
0345               ccccbccbcd          641       [10] TO BT BR BT BT BR BT BT BT BT
0346               cbccbccbcd          458       [10] TO BT BR BT BT BR BT BT BR BT
0347                     8c6d          405       [4 ] TO SC BT SA
0348                    86ccd          285       [5 ] TO BT BT SC SA
0349                   8cbbcd          198       [6 ] TO BT BR BR BT SA
0350                      46d          179       [3 ] TO SC AB
0351                 4ccccbcd          136       [8 ] TO BT BR BT BT BT BT AB
0352                     7c6d          115       [4 ] TO SC BT SD
0353 
0354 
0355 Detection to absorb fraction matches efficiency fed in for 380nm::
0356 
0357     A
0358     375203+118603=493806
0359     118603./493806.=0.24018
0360 
0361     351558+111189=462747
0362     111189./462747.=0.24028
0363     
0364     B
0365     337740+106833=444573
0366     106833./444573.=0.24030
0367 
0368     ggv --surf 6    shows
0369     380                0.24                0.76     
0370 
0371 
0372 
0373 Agreement when avoid edges (reduce beam radius 100mm to 50mm)
0374 ---------------------------------------------------------------
0375 
0376 ::
0377 
0378     In [1]: run pmt_test.py
0379 
0380                       1:PmtInBox   -1:PmtInBox           c2 
0381                  8cd       363294       363027             0.10  [3 ] TO BT SA
0382                  7cd       114962       114826             0.08  [3 ] TO BT SD
0383                   4d        16924        17342             5.10  [2 ] TO AB
0384                  86d         2798         2821             0.09  [3 ] TO SC SA
0385                  4cd         1238         1198             0.66  [3 ] TO BT AB
0386                 8c6d          381          385             0.02  [4 ] TO SC BT SA
0387                  46d          181          164             0.84  [3 ] TO SC AB
0388                 7c6d          110          111             0.00  [4 ] TO SC BT SD
0389                  8bd           38           29             1.21  [3 ] TO BR SA
0390                 866d           32           34             0.06  [4 ] TO SC SC SA
0391                8cc6d           28           24             0.31  [5 ] TO SC BT BT SA
0392                 8b6d            3           22             0.00  [4 ] TO SC BR SA
0393                 466d            0            4             0.00  [4 ] TO SC SC AB
0394                 4c6d            4            2             0.00  [4 ] TO SC BT AB
0395                8c66d            3            3             0.00  [5 ] TO SC SC BT SA
0396               8cbc6d            1            2             0.00  [6 ] TO SC BT BR BT SA
0397                4cc6d            2            1             0.00  [5 ] TO SC BT BT AB
0398                 4b6d            0            1             0.00  [4 ] TO SC BR AB
0399                 86cd            0            1             0.00  [4 ] TO BT SC SA
0400                8c6cd            1            0             0.00  [5 ] TO BT SC BT SA
0401                  4bd            0            1             0.00  [3 ] TO BR AB
0402              8cbc66d            0            1             0.00  [7 ] TO SC SC BT BR BT SA
0403             8ccbc66d            0            1             0.00  [8 ] TO SC SC BT BR BT BT SA
0404                           500000       500000         0.77 
0405 
0406 
0407 
0408 Annular beam zenith 0.9,1 with radius 100mm accentuates skimmers
0409 ------------------------------------------------------------------
0410 
0411 ::
0412 
0413     INFO:opticks.ana.evt:rx shape (500000, 10, 2, 4) 
0414                           1:PmtInBox   -1:PmtInBox           c2 
0415                      8cd       252271       234626           639.45  [3 ] TO BT SA
0416                     8ccd       117329       121978            90.32  [4 ] TO BT BT SA
0417                      7cd        79667        74423           178.46  [3 ] TO BT SD
0418                       4d        21673        21783             0.28  [2 ] TO AB
0419 
0420                 8ccccbcd          215        10721         10092.91  [8 ] TO BT BR BT BT BT BT SA
0421 
0422                     4ccd         8795         9246            11.27  [4 ] TO BT BT AB
0423                      8bd         6985         6500            17.44  [3 ] TO BR SA
0424                      4cd         5116         4919             3.87  [3 ] TO BT AB
0425                      86d         3623         3775             3.12  [3 ] TO SC SA
0426 
0427               ccccbccbcd            0         3632          3632.00  [10] TO BT BR BT BT BR BT BT BT BT
0428               cbccbccbcd            0         2448          2448.00  [10] TO BT BR BT BT BR BT BT BR BT
0429 
0430                    86ccd         1415         1526             4.19  [5 ] TO BT BT SC SA
0431                   8cbbcd            0          985           985.00  [6 ] TO BT BR BR BT SA
0432                 4ccccbcd            9          766           739.42  [8 ] TO BT BR BT BT BT BT AB
0433                8cccccbcd          599            0           599.00  [9 ] TO BT BR BT BT BT BT BT SA
0434 
0435 
0436 
0437 Select skimmers with::
0438 
0439     seqs=["TO BT BR BT BT BT BT SA"] 
0440     see 215/10721 from Opticks/CfG4
0441 
0442 
0443 Note all the 10k CfG4 skimmers within ~0.4mm of radial range 96.71:97.1mm::
0444     
0445     In [25]: a0r.shape, a0r.min(), a0r.max(), b0r.shape,  b0r.min(), b0r.max()
0446     Out[25]: 
0447     ((215,),
0448      97.090540043228771,
0449      99.972196508157936,
0450      (10721,),
0451      96.710607829543051,
0452      97.092838713641243)
0453 
0454 
0455 Focus on this range with zenith 0.9671,0.9709 radius 100mm
0456 See very differnt skimmer behavior within that annulus::
0457 
0458                       1:PmtInBox   -1:PmtInBox           c2 
0459                  8cd       348896            0        348896.00  [3 ] TO BT SA
0460             8ccccbcd            0       275990        275990.00  [8 ] TO BT BR BT BT BT BT SA
0461                  7cd       110471            0        110471.00  [3 ] TO BT SD
0462           ccccbccbcd            0        91652         91652.00  [10] TO BT BR BT BT BR BT BT BT BT
0463           cbccbccbcd            0        61105         61105.00  [10] TO BT BR BT BT BR BT BT BR BT
0464                   4d        22079        22258             0.72  [2 ] TO AB
0465             4ccccbcd            0        19812         19812.00  [8 ] TO BT BR BT BT BT BT AB
0466                  4cd         6553         6596             0.14  [3 ] TO BT AB
0467                  8bd         4545         3895            50.06  [3 ] TO BR SA
0468                  86d         3681         3653             0.11  [3 ] TO SC SA
0469            86ccccbcd            0         3351          3351.00  [9 ] TO BT BR BT BT BT BT SC SA
0470           cccccccbcd            1         3060          3057.00  [10] TO BT BR BT BT BT BT BT BT BT
0471                 8ccd         2183         2182             0.00  [4 ] TO BT BT SA
0472             8ccbbbcd            0         1959          1959.00  [8 ] TO BT BR BR BR BT BT SA
0473              4cccbcd            0          966           966.00  [7 ] TO BT BR BT BT BT AB
0474                 8c6d          489          420             5.24  [4 ] TO SC BT SA
0475 
0476 ::
0477 
0478     In [28]: a0r.shape, a0r.min(), a0r.max(), b0r.shape,  b0r.min(), b0r.max()
0479     Out[28]: 
0480     ((500000,),
0481      96.704678194845826,
0482      97.095561650354725,
0483      (500000,),
0484      96.704262560710802,
0485      97.095972587881292)
0486 
0487 
0488 After fixing photocathode shape (had omitted startTheta/deltaThera) 
0489 get better agreement for the 0.9671,0.9709 radius 100mm skimmers.
0490 Note still some difference in reflection off Pyrex, maybe dont have same 
0491 polarization distrib between Opticks/CFG4::
0492 
0493                       1:PmtInBox   -1:PmtInBox           c2 
0494                  8cd       348896       349456             0.45  [3 ] TO BT SA
0495                  7cd       110471       110351             0.07  [3 ] TO BT SD
0496                   4d        22079        22131             0.06  [2 ] TO AB
0497                  4cd         6553         6534             0.03  [3 ] TO BT AB
0498                  8bd         4545         4002            34.50  [3 ] TO BR SA
0499                  86d         3681         3819             2.54  [3 ] TO SC SA
0500                 8ccd         2183         2182             0.00  [4 ] TO BT BT SA
0501                 8c6d          489          423             4.78  [4 ] TO SC BT SA
0502                  4bd          351          333             0.47  [3 ] TO BR AB
0503                  46d          219          219             0.00  [3 ] TO SC AB
0504                 4ccd          139          153             0.67  [4 ] TO BT BT AB
0505                 7c6d          136          138             0.01  [4 ] TO SC BT SD
0506                 86bd           69           43             6.04  [4 ] TO BR SC SA
0507                86ccd           42           26             3.76  [5 ] TO BT BT SC SA
0508                 8b6d            5           42            29.13  [4 ] TO SC BR SA
0509                8cc6d           38           41             0.11  [5 ] TO SC BT BT SA
0510 
0511 
0512 After match polarization, are left with "TO SC BR SA". CFG4 is reflection prone 
0513 after a scatter ? But borderline stats. This is still just for the skimmers::
0514 
0515                       1:PmtInBox   -1:PmtInBox           c2 
0516                  8cd       348896       349452             0.44  [3 ] TO BT SA
0517                  7cd       110471       109961             1.18  [3 ] TO BT SD
0518                   4d        22079        21915             0.61  [2 ] TO AB
0519                  4cd         6553         6537             0.02  [3 ] TO BT AB
0520                  8bd         4545         4643             1.05  [3 ] TO BR SA
0521                  86d         3681         3571             1.67  [3 ] TO SC SA
0522                 8ccd         2183         2202             0.08  [4 ] TO BT BT SA
0523                 8c6d          489          513             0.57  [4 ] TO SC BT SA
0524                  4bd          351          383             1.40  [3 ] TO BR AB
0525                  46d          219          220             0.00  [3 ] TO SC AB
0526                 4ccd          139          180             5.27  [4 ] TO BT BT AB
0527                 7c6d          136          162             2.27  [4 ] TO SC BT SD
0528                 86bd           69           59             0.78  [4 ] TO BR SC SA
0529                86ccd           42           30             2.00  [5 ] TO BT BT SC SA
0530                 866d           41           38             0.11  [4 ] TO SC SC SA
0531 
0532                 8b6d            5           40            27.22  [4 ] TO SC BR SA
0533 
0534                8cc6d           38           33             0.35  [5 ] TO SC BT BT SA
0535               8cbbcd            0           10             0.00  [6 ] TO BT BR BR BT SA
0536            8cccccbcd            9            0             0.00  [9 ] TO BT BR BT BT BT BT BT SA
0537                 86cd            1            7             0.00  [4 ] TO BT SC SA
0538         ...
0539                4bcd             0            1             0.00  [4 ] TO BT BR AB
0540               866ccd            1            1             0.00  [6 ] TO BT BT SC SC SA
0541                           500000       500000         2.65 
0542 
0543 
0544 Inner half zenith 0,0.5 still in agreement::
0545 
0546                      1:PmtInBox   -1:PmtInBox           c2 
0547                  8cd       363294       363351             0.00  [3 ] TO BT SA
0548                  7cd       114962       114575             0.65  [3 ] TO BT SD
0549                   4d        16924        17217             2.51  [2 ] TO AB
0550                  86d         2798         2853             0.54  [3 ] TO SC SA
0551                  4cd         1238         1214             0.23  [3 ] TO BT AB
0552                 8c6d          381          390             0.11  [4 ] TO SC BT SA
0553                  46d          181          165             0.74  [3 ] TO SC AB
0554                 7c6d          110          125             0.96  [4 ] TO SC BT SD
0555                  8bd           38           31             0.71  [3 ] TO BR SA
0556                 866d           32           28             0.27  [4 ] TO SC SC SA
0557                8cc6d           28           23             0.49  [5 ] TO SC BT BT SA
0558                 8b6d            3           16             0.00  [4 ] TO SC BR SA
0559                 4c6d            4            2             0.00  [4 ] TO SC BT AB
0560                8c66d            3            2             0.00  [5 ] TO SC SC BT SA
0561                 466d            0            2             0.00  [4 ] TO SC SC AB
0562                4cc6d            2            2             0.00  [5 ] TO SC BT BT AB
0563                 4b6d            0            1             0.00  [4 ] TO SC BR AB
0564                7c66d            0            1             0.00  [5 ] TO SC SC BT SD
0565               8cbc6d            1            0             0.00  [6 ] TO SC BT BR BT SA
0566                8c6cd            1            1             0.00  [5 ] TO BT SC BT SA
0567                  4bd            0            1             0.00  [3 ] TO BR AB
0568                           500000       500000         0.66 
0569 
0570 
0571 Pushing out to 0,0.9 "TO AB" starting to go awry.::
0572 
0573                       1:PmtInBox   -1:PmtInBox           c2 
0574                  8cd       362427       362211             0.06  [3 ] TO BT SA
0575                  7cd       114703       113770             3.81  [3 ] TO BT SD
0576                   4d        17693        18680            26.78  [2 ] TO AB
0577                  86d         2965         2916             0.41  [3 ] TO SC SA
0578                  4cd         1379         1535             8.35  [3 ] TO BT AB
0579                 8c6d          392          400             0.08  [4 ] TO SC BT SA
0580                  46d          186          177             0.22  [3 ] TO SC AB
0581                 7c6d          105          115             0.45  [4 ] TO SC BT SD
0582                  8bd           73           92             2.19  [3 ] TO BR SA
0583                 866d           33           25             1.10  [4 ] TO SC SC SA
0584                8cc6d           26           31             0.44  [5 ] TO SC BT BT SA
0585                 8b6d            3           25             0.00  [4 ] TO SC BR SA
0586                8c66d            5            2             0.00  [5 ] TO SC SC BT SA
0587                 4c6d            5            1             0.00  [4 ] TO SC BT AB
0588                  4bd            0            5             0.00  [3 ] TO BR AB
0589                4cc6d            2            4             0.00  [5 ] TO SC BT BT AB
0590                 86bd            0            3             0.00  [4 ] TO BR SC SA
0591                 466d            0            2             0.00  [4 ] TO SC SC AB
0592               86cc6d            1            0             0.00  [6 ] TO SC BT BT SC SA
0593                 4b6d            0            1             0.00  [4 ] TO SC BR AB
0594               4cc66d            0            1             0.00  [6 ] TO SC SC BT BT AB
0595             8cbc66bd            0            1             0.00  [8 ] TO BR SC SC BT BR BT SA
0596               8cbc6d            1            1             0.00  [6 ] TO SC BT BR BT SA
0597                8c6cd            1            1             0.00  [5 ] TO BT SC BT SA
0598                7c66d            0            1             0.00  [5 ] TO SC SC BT SD
0599                           500000       500000         3.99 
0600 
0601 ::
0602 
0603     94.995 97.005 94.995 97.005
0604                       1:PmtInBox   -1:PmtInBox           c2 
0605                  8cd       352957       353582             0.55  [3 ] TO BT SA
0606                  7cd       111793       111427             0.60  [3 ] TO BT SD
0607                   4d        21816        21692             0.35  [2 ] TO AB
0608                  4cd         5273         5198             0.54  [3 ] TO BT AB
0609                  86d         3643         3594             0.33  [3 ] TO SC SA
0610                  8bd         3299         3229             0.75  [3 ] TO BR SA
0611                 8c6d          482          474             0.07  [4 ] TO SC BT SA
0612                  4bd          221          275             5.88  [3 ] TO BR AB
0613                  46d          219          195             1.39  [3 ] TO SC AB
0614                 7c6d          133          157             1.99  [4 ] TO SC BT SD
0615                 86bd           50           42             0.70  [4 ] TO BR SC SA
0616                 866d           41           40             0.01  [4 ] TO SC SC SA
0617                8cc6d           35           25             1.67  [5 ] TO SC BT BT SA
0618                 8b6d            5           34            21.56  [4 ] TO SC BR SA
0619                 4b6d            0            5             0.00  [4 ] TO SC BR AB
0620              ...
0621              8cbc66d            0            1             0.00  [7 ] TO SC SC BT BR BT SA
0622              4ccc6bd            1            0             0.00  [7 ] TO BR SC BT BT BT AB
0623                           500000       500000         2.60 
0624 
0625 
0626 Not too bad all way out to 97mm::
0627 
0628     0.000 97.002  0.117 97.004
0629                       1:PmtInBox   -1:PmtInBox           c2 
0630                  8cd       361978       361339             0.56  [3 ] TO BT SA
0631                  7cd       114537       113731             2.85  [3 ] TO BT SD
0632                   4d        17934        18876            24.11  [2 ] TO AB
0633                  86d         3021         3015             0.01  [3 ] TO SC SA
0634                  4cd         1571         1869            25.82  [3 ] TO BT AB
0635                 8c6d          390          415             0.78  [4 ] TO SC BT SA
0636                  8bd          184          330            41.47  [3 ] TO BR SA
0637                  46d          185          198             0.44  [3 ] TO SC AB
0638                 7c6d          104          102             0.02  [4 ] TO SC BT SD
0639                 866d           33           27             0.60  [4 ] TO SC SC SA
0640                  4bd           20           30             2.00  [3 ] TO BR AB
0641                8cc6d           22           20             0.10  [5 ] TO SC BT BT SA
0642                 8b6d            2           18             0.00  [4 ] TO SC BR SA
0643               ...
0644                8666d            0            1             0.00  [5 ] TO SC SC SC SA
0645                           500000       500000         8.23 
0646 
0647 Goes belly up beyond 97mm::
0648 
0649          96.995 100.005 96.995 100.005
0650                       1:PmtInBox   -1:PmtInBox           c2 
0651                 8ccd       391394       391429             0.00  [4 ] TO BT BT SA
0652                 4ccd        29418        29306             0.21  [4 ] TO BT BT AB
0653                   4d        22602        22571             0.02  [2 ] TO AB
0654                  8bd        18671        19186             7.01  [3 ] TO BR SA
0655                  8cd        10338        10116             2.41  [3 ] TO BT SA
0656                  4cd         7554         7510             0.13  [3 ] TO BT AB
0657                86ccd         4602         4626             0.06  [5 ] TO BT BT SC SA
0658                  86d         3762         3729             0.15  [3 ] TO SC SA
0659                  7cd         3233         3181             0.42  [3 ] TO BT SD
0660                  4bd         1811         1662             6.39  [3 ] TO BR AB
0661 
0662           Reordered to put discrepants together,
0663           looks like edge geometry difference between Opticks analytic and CfG4 
0664           is culprit.
0665 
0666           3598 G4 skimmers do a double internal reflect in Pyrex 
0667           that puts them on path to transmit out and miss the 
0668           rest of the PMT  "TO BT BR BR BT SA"  
0669 
0670           Opticks analytic somehow manages to transmit after the 1st reflect 
0671           leading to a path "TO BT BR BT BT BT BT SA" with many varying BT
0672           May be material bug... need to get material codes going in CFG4.
0673  
0674 
0675               8cbbcd            0         3598          3598.00  [6 ] TO BT BR BR BT SA
0676 
0677             8ccccbcd          762            0           762.00  [8 ] TO BT BR BT BT BT BT SA
0678            8cccccbcd         1885            0          1885.00  [9 ] TO BT BR BT BT BT BT BT SA
0679           8ccccccbcd          746            0           746.00  [10] TO BT BR BT BT BT BT BT BT SA
0680                1885+762+746=3393
0681 
0682             8ccc6ccd          386            2           380.04  [8 ] TO BT BT SC BT BT BT SA
0683           8ccccc6ccd          159            1           156.03  [10] TO BT BT SC BT BT BT BT BT SA
0684           cccccc6ccd          191          259            10.28  [10] TO BT BT SC BT BT BT BT BT BT
0685                1885+762+746+386=3779
0686 
0687             8cbc6ccd           26          307           237.12  [8 ] TO BT BT SC BT BR BT SA
0688               8c6ccd           20          296           241.06  [6 ] TO BT BT SC BT SA
0689 
0690                 8c6d          509          440             5.02  [4 ] TO SC BT SA
0691                46ccd          275          310             2.09  [5 ] TO BT BT SC AB
0692                 86bd          287          271             0.46  [4 ] TO BR SC SA
0693                  46d          223          224             0.00  [3 ] TO SC AB
0694               4cbbcd            0          211           211.00  [6 ] TO BT BR BR BT AB
0695                 7c6d          140          160             1.33  [4 ] TO SC BT SD
0696              8cc6ccd           77           77             0.00  [7 ] TO BT BT SC BT BT SA
0697              ....
0698                           500000       500000       217.45 
0699 
0700 
0701 To see whats happening need to viz the real geometry (not triangulated standins) 
0702 together with the photon paths. 
0703 With Opticks that is difficult but probably not impossible: 
0704 
0705 * compositing OptiX rendered analytic geometry together with OpenGL lines, 
0706   see optix- for notes on compositing 
0707 
0708 With Geant4 its probably impossible as only way to draw real geometry 
0709 (not triangulated standins) is with the G4RayTracer which doesnt do photon paths. 
0710 
0711 
0712 After TIR bug fix
0713 ------------------
0714 
0715 Point beam at skimmer position (tag 5) in better agreement (maybe low level scatter difference remains)::
0716 
0717      98.999 98.999
0718      98.999 98.999
0719                       5:PmtInBox   -5:PmtInBox           c2 
0720                 8ccd       404485       404018             0.27  [4 ] TO BT BT SA
0721                 4ccd        30537        30458             0.10  [4 ] TO BT BT AB
0722                   4d        22743        23066             2.28  [2 ] TO AB
0723                  8bd        18353        18369             0.01  [3 ] TO BR SA
0724                  4cd         6282         6265             0.02  [3 ] TO BT AB
0725                86ccd         4790         4865             0.58  [5 ] TO BT BT SC SA
0726               8cbbcd         4157         4280             1.79  [6 ] TO BT BR BR BT SA
0727                  86d         3709         3725             0.03  [3 ] TO SC SA
0728                  4bd         1575         1672             2.90  [3 ] TO BR AB
0729                 8c6d          529          506             0.51  [4 ] TO SC BT SA
0730             8cbc6ccd          497          301            48.14  [8 ] TO BT BT SC BT BR BT SA
0731                46ccd          271          327             5.24  [5 ] TO BT BT SC AB
0732               8c6ccd            0          295           295.00  [6 ] TO BT BT SC BT SA
0733               4cbbcd          292          287             0.04  [6 ] TO BT BR BR BT AB
0734                 86bd          290          257             1.99  [4 ] TO BR SC SA
0735                  46d          221          209             0.33  [3 ] TO SC AB
0736           cccccc6ccd          134          219            20.47  [10] TO BT BT SC BT BT BT BT BT BT
0737                 7c6d          157          178             1.32  [4 ] TO SC BT SD
0738           8ccccc6ccd          147            0           147.00  [10] TO BT BT SC BT BT BT BT BT SA
0739                 4bcd           84           68             1.68  [4 ] TO BT BR AB
0740              8cc6ccd           67           77             0.69  [7 ] TO BT BT SC BT BT SA
0741                4bbcd           58           54             0.14  [5 ] TO BT BR BR AB
0742               866ccd           58           53             0.23  [6 ] TO BT BT SC SC SA
0743            8ccbbbbcd            0           54            54.00  [9 ] TO BT BR BR BR BR BT BT SA
0744                8cc6d           53           45             0.65  [5 ] TO SC BT BT SA
0745           cbccbbbbcd           53            0            53.00  [10] TO BT BR BR BR BR BT BT BR BT
0746                 8b6d           46           38             0.76  [4 ] TO SC BR SA
0747              86cbbcd           40           36             0.21  [7 ] TO BT BR BR BT SC SA
0748                 866d           37           39             0.05  [4 ] TO SC SC SA
0749               8b6ccd           26           37             1.92  [6 ] TO BT BT SC BR SA
0750             4cbc6ccd           34           20             3.63  [8 ] TO BT BT SC BT BR BT AB
0751           bbbbcc6ccd           25            0             0.00  [10] TO BT BT SC BT BT BR BR BR BR
0752                 46bd           21           16             0.68  [4 ] TO BR SC AB
0753 
0754 
0755 
0756 Geant4 viz
0757 --------------
0758 
0759 Attempt to get G4 vis operational to check the geometry
0760 
0761 * https://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/AllResources/Control/UIcommands/_vis_ASCIITree_.html
0762 * https://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/AllResources/Control/UIcommands/_vis_rayTracer_.html
0763 
0764 TODO: hookup G4DAE so can export and check the COLLADA
0765 
0766 * circularity of this is interesting as can then run Opticks running on 2nd generation geometry 
0767 * also visualization with my tools is much better than G4 
0768 
0769 
0770 Material Debug
0771 ---------------
0772 
0773 Opticks reflection "TO BR SA" has material assignment "MO MO", 
0774 hmm would be useful to see the seqmat for a choice of seqhis.
0775 CFG4 reflection 
0776 
0777 
0778 Agreement out to 97mm now includes material history::
0779 
0780     0.000 97.002  
0781     0.117 97.004
0782                       1:PmtInBox   -1:PmtInBox           c2 
0783                  8cd       361978       361339             0.56  [3 ] TO BT SA
0784                  7cd       114537       113731             2.85  [3 ] TO BT SD
0785                   4d        17934        18876            24.11  [2 ] TO AB
0786                  86d         3021         3015             0.01  [3 ] TO SC SA
0787                  4cd         1571         1869            25.82  [3 ] TO BT AB
0788                 8c6d          390          415             0.78  [4 ] TO SC BT SA
0789                  8bd          184          330            41.47  [3 ] TO BR SA
0790                  46d          185          198             0.44  [3 ] TO SC AB
0791                 7c6d          104          102             0.02  [4 ] TO SC BT SD
0792                 866d           33           27             0.60  [4 ] TO SC SC SA
0793                  4bd           20           30             2.00  [3 ] TO BR AB
0794                8cc6d           22           20             0.10  [5 ] TO SC BT BT SA
0795                 8b6d            2           18             0.00  [4 ] TO SC BR SA
0796                 86bd            4            7             0.00  [4 ] TO BR SC SA
0797                8c66d            4            4             0.00  [5 ] TO SC SC BT SA
0798                 4c6d            2            4             0.00  [4 ] TO SC BT AB
0799                 4b6d            0            3             0.00  [4 ] TO SC BR AB
0800                 466d            0            3             0.00  [4 ] TO SC SC AB
0801               8cbc6d            3            2             0.00  [6 ] TO SC BT BR BT SA
0802                4cc6d            2            2             0.00  [5 ] TO SC BT BT AB
0803              8cbc6bd            0            1             0.00  [7 ] TO BR SC BT BR BT SA
0804               86cc6d            1            1             0.00  [6 ] TO SC BT BT SC SA
0805                 76cd            0            1             0.00  [4 ] TO BT SC SD
0806           8cccccc6bd            0            1             0.00  [10] TO BR SC BT BT BT BT BT BT SA
0807                8c6cd            1            0             0.00  [5 ] TO BT SC BT SA
0808           bbbbbbbc6d            1            0             0.00  [10] TO SC BT BR BR BR BR BR BR BR
0809              8ccbc6d            1            0             0.00  [7 ] TO SC BT BR BT BT SA
0810                8666d            0            1             0.00  [5 ] TO SC SC SC SA
0811                           500000       500000         8.23 
0812 
0813                       1:PmtInBox   -1:PmtInBox           c2 
0814                  ee4       478088       476939             1.38  [3 ] MO Py Py
0815                   44        17934        18876            24.11  [2 ] MO MO
0816                  444         3408         3573             3.90  [3 ] MO MO MO
0817                 ee44          481          521             1.60  [4 ] MO MO Py Py
0818                 4444           54           58             0.14  [4 ] MO MO MO MO
0819                44e44           24           22             0.09  [5 ] MO MO Py MO MO
0820                ee444            4            4             0.00  [5 ] MO MO MO Py Py
0821               44ee44            3            2             0.00  [6 ] MO MO Py Py MO MO
0822              44eee44            1            0             0.00  [7 ] MO MO Py Py Py MO MO
0823           eeeeeeee44            1            0             0.00  [10] MO MO Py Py Py Py Py Py Py Py
0824              44ee444            0            1             0.00  [7 ] MO MO MO Py Py MO MO
0825           44e5dbe444            0            1             0.00  [10] MO MO MO Py OV Vm Bk Py MO MO
0826                44444            0            1             0.00  [5 ] MO MO MO MO MO
0827                44ee4            1            0             0.00  [5 ] MO Py Py MO MO
0828               444e44            1            1             0.00  [6 ] MO MO Py MO MO MO
0829                 eee4            0            1             0.00  [4 ] MO Py Py Py
0830                           500000       500000         5.20 
0831 
0832 
0833 
0834 CFG4 skimmer Double Reflect, FIXED Opticks TIR bug 
0835 -----------------------------------------------------
0836 
0837 * relocate to graphics/ggeoview/issues/cfg4_pmt_edge_double_reflect
0838 
0839 
0840 After fix the PMT edge is agreeing rather well::
0841 
0842    96.995 100.005
0843    96.995 100.005
0844                       2:PmtInBox   -2:PmtInBox           c2 
0845                 8ccd       391394       391429             0.00  [4 ] TO BT BT SA
0846                 4ccd        29418        29306             0.21  [4 ] TO BT BT AB
0847                   4d        22602        22571             0.02  [2 ] TO AB
0848                  8bd        18671        19186             7.01  [3 ] TO BR SA
0849                  8cd        10338        10116             2.41  [3 ] TO BT SA
0850                  4cd         7554         7510             0.13  [3 ] TO BT AB
0851                86ccd         4602         4626             0.06  [5 ] TO BT BT SC SA
0852                  86d         3762         3729             0.15  [3 ] TO SC SA
0853               8cbbcd         3462         3598             2.62  [6 ] TO BT BR BR BT SA
0854                  7cd         3233         3181             0.42  [3 ] TO BT SD
0855                  4bd         1811         1662             6.39  [3 ] TO BR AB
0856                 8c6d          484          440             2.10  [4 ] TO SC BT SA
0857             8cbc6ccd          477          307            36.86  [8 ] TO BT BT SC BT BR BT SA
0858                46ccd          275          310             2.09  [5 ] TO BT BT SC AB
0859               8c6ccd            1          296           293.01  [6 ] TO BT BT SC BT SA
0860                 86bd          287          271             0.46  [4 ] TO BR SC SA
0861           cccccc6ccd          129          259            43.56  [10] TO BT BT SC BT BT BT BT BT BT
0862               4cbbcd          251          211             3.46  [6 ] TO BT BR BR BT AB
0863                  46d          223          224             0.00  [3 ] TO SC AB
0864                 7c6d          140          160             1.33  [4 ] TO SC BT SD
0865           8ccccc6ccd          138            1           135.03  [10] TO BT BT SC BT BT BT BT BT SA
0866              8cc6ccd           67           77             0.69  [7 ] TO BT BT SC BT BT SA
0867                 4bcd           68           50             2.75  [4 ] TO BT BR AB
0868               866ccd           55           59             0.14  [6 ] TO BT BT SC SC SA
0869                4bbcd           51           42             0.87  [5 ] TO BT BR BR AB
0870                 866d           42           33             1.08  [4 ] TO SC SC SA
0871 
0872 
0873 
0874 Full range not so good ? EXPLAINED : disc/disclin mismatch
0875 ---------------------------------------------------------------
0876 
0877 Curious going full range 0:1 worse than would expect from pieces::
0878 
0879     NFO:opticks.ana.evt:rx shape (500000, 10, 2, 4) 
0880      0.000 100.004
0881      0.187 100.004
0882                           4:PmtInBox   -4:PmtInBox           c2 
0883                      8cd       351558       340273           184.08  [3 ] TO BT SA
0884                      7cd       111189       107251            70.99  [3 ] TO BT SD
0885                     8ccd        11661        23260          3852.60  [4 ] TO BT BT SA
0886                       4d        18047        19048            27.01  [2 ] TO AB
0887                      86d         3040         3133             1.40  [3 ] TO SC SA
0888                      4cd         1736         2249            66.04  [3 ] TO BT AB
0889                     4ccd          884         1732           274.89  [4 ] TO BT BT AB
0890                      8bd          742         1455           231.39  [3 ] TO BR SA
0891                     8c6d          375          424             3.01  [4 ] TO SC BT SA
0892                    86ccd          140          260            36.00  [5 ] TO BT BT SC SA
0893                      46d          187          215             1.95  [3 ] TO SC AB
0894                   8cbbcd           90          213            49.93  [6 ] TO BT BR BR BT SA
0895                     7c6d          103          132             3.58  [4 ] TO SC BT SD
0896                      4bd           63          125            20.45  [3 ] TO BR AB
0897                     866d           33           38             0.35  [4 ] TO SC SC SA
0898                    8cc6d           28           29             0.02  [5 ] TO SC BT BT SA
0899                 8cbc6ccd           20           22             0.10  [8 ] TO BT BT SC BT BR BT SA
0900                     8b6d           21           20             0.02  [4 ] TO SC BR SA
0901                    46ccd            8           19             0.00  [5 ] TO BT BT SC AB
0902                     86bd           15           16             0.03  [4 ] TO BR SC SA
0903                   8c6ccd            0           16             0.00  [6 ] TO BT BT SC BT SA
0904                   4cbbcd           12            9             0.00  [6 ] TO BT BR BR BT AB
0905 
0906 
0907 Radial distrib of "TO BT BT SA" looks same for both. Too large a difference, must 
0908 be migration from "TO BT SA". Comparing those note different radial distrib
0909 
0910 * flat in r for (Op)
0911 * linear in r for CfG4, from 0 at center to twice Op at 100mm
0912 
0913 Maybe a difference of Annular and Circle regarding position distrib ?
0914 Nope tried using 0.0001,1 to use Annular for cicle and still getting
0915 the same.
0916 
0917 Aha, using disc for Op and disclin for CfG4 gets agreement, TODO:fix CSource bug?::
0918 
0919     1.005 100.004
0920     0.187 100.004
0921                       4:PmtInBox   -4:PmtInBox           c2 
0922                  8cd       340271       340273             0.00  [3 ] TO BT SA
0923                  7cd       107598       107251             0.56  [3 ] TO BT SD
0924                 8ccd        23217        23260             0.04  [4 ] TO BT BT SA
0925                   4d        18866        19048             0.87  [2 ] TO AB
0926                  86d         3179         3133             0.34  [3 ] TO SC SA
0927                  4cd         2204         2249             0.45  [3 ] TO BT AB
0928                 4ccd         1696         1732             0.38  [4 ] TO BT BT AB
0929                  8bd         1446         1455             0.03  [3 ] TO BR SA
0930                 8c6d          382          424             2.19  [4 ] TO SC BT SA
0931                86ccd          260          260             0.00  [5 ] TO BT BT SC SA
0932                  46d          197          215             0.79  [3 ] TO SC AB
0933               8cbbcd          190          213             1.31  [6 ] TO BT BR BR BT SA
0934                  4bd          132          125             0.19  [3 ] TO BR AB
0935                 7c6d          111          132             1.81  [4 ] TO SC BT SD
0936                 866d           35           38             0.12  [4 ] TO SC SC SA
0937                8cc6d           31           29             0.07  [5 ] TO SC BT BT SA
0938             8cbc6ccd           31           22             1.53  [8 ] TO BT BT SC BT BR BT SA
0939                 8b6d           26           20             0.78  [4 ] TO SC BR SA
0940               4cbbcd           24            9             6.82  [6 ] TO BT BR BR BT AB
0941                 86bd           19           16             0.26  [4 ] TO BR SC SA
0942                46ccd           17           19             0.11  [5 ] TO BT BT SC AB
0943               8c6ccd            0           16             0.00  [6 ] TO BT BT SC BT SA
0944           cccccc6ccd            6           12             0.00  [10] TO BT BT SC BT BT BT BT BT BT
0945           8ccccc6ccd            7            0             0.00  [10] TO BT BT SC BT BT BT BT BT SA
0946           cbccbbbbcd            7            0             0.00  [10] TO BT BR BR BR BR BT BT BR BT
0947 
0948 
0949 
0950 
0951